Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 9a23a748 authored by H Hartley Sweeten's avatar H Hartley Sweeten Committed by Greg Kroah-Hartman
Browse files

staging: comedi: vmk80xx: cleanup pwm subdevice init



Change the 'pwm_bits' in the boardinfo to 'pwm_maxdata' so that the
calculation of s->maxdata can be removed. Also, change the type to
match the comedi_subdevice type. For aesthetic reasons, rename the
'pwm_chans' boardinfo and change its type also.

Remove the '0' values in the boardinfo.

Rename the (*insn_read) and (*insn_write) functions for the pwm
subdevice to make grepping easier.

For aesthetic reasons, add some whitespace to the subdevice init.

Signed-off-by: default avatarH Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 75a45d92
Loading
Loading
Loading
Loading
+18 −18
Original line number Original line Diff line number Diff line
@@ -164,8 +164,8 @@ struct vmk80xx_board {
	int ao_nchans;
	int ao_nchans;
	int di_nchans;
	int di_nchans;
	unsigned int cnt_maxdata;
	unsigned int cnt_maxdata;
	__u8 pwm_chans;
	int pwm_nchans;
	__le16 pwm_bits;
	unsigned int pwm_maxdata;
};
};


static const struct vmk80xx_board vmk80xx_boardinfo[] = {
static const struct vmk80xx_board vmk80xx_boardinfo[] = {
@@ -178,8 +178,6 @@ static const struct vmk80xx_board vmk80xx_boardinfo[] = {
		.ao_nchans	= 2,
		.ao_nchans	= 2,
		.di_nchans	= 6,
		.di_nchans	= 6,
		.cnt_maxdata	= 0xffff,
		.cnt_maxdata	= 0xffff,
		.pwm_chans	= 0,
		.pwm_bits	= 0,
	},
	},
	[DEVICE_VMK8061] = {
	[DEVICE_VMK8061] = {
		.name		= "K8061 (VM140)",
		.name		= "K8061 (VM140)",
@@ -190,8 +188,8 @@ static const struct vmk80xx_board vmk80xx_boardinfo[] = {
		.ao_nchans	= 8,
		.ao_nchans	= 8,
		.di_nchans	= 8,
		.di_nchans	= 8,
		.cnt_maxdata	= 0,	/* unknown, device is not writeable */
		.cnt_maxdata	= 0,	/* unknown, device is not writeable */
		.pwm_chans	= 1,
		.pwm_nchans	= 1,
		.pwm_bits	= 10,
		.pwm_maxdata	= 0x03ff,
	},
	},
};
};


@@ -1043,9 +1041,10 @@ static int vmk80xx_cnt_insn_write(struct comedi_device *dev,
	return n;
	return n;
}
}


static int vmk80xx_pwm_rinsn(struct comedi_device *dev,
static int vmk80xx_pwm_insn_read(struct comedi_device *dev,
				 struct comedi_subdevice *s,
				 struct comedi_subdevice *s,
			     struct comedi_insn *insn, unsigned int *data)
				 struct comedi_insn *insn,
				 unsigned int *data)
{
{
	struct vmk80xx_private *devpriv = dev->private;
	struct vmk80xx_private *devpriv = dev->private;
	unsigned char *tx_buf;
	unsigned char *tx_buf;
@@ -1079,9 +1078,10 @@ static int vmk80xx_pwm_rinsn(struct comedi_device *dev,
	return n;
	return n;
}
}


static int vmk80xx_pwm_winsn(struct comedi_device *dev,
static int vmk80xx_pwm_insn_write(struct comedi_device *dev,
				  struct comedi_subdevice *s,
				  struct comedi_subdevice *s,
			     struct comedi_insn *insn, unsigned int *data)
				  struct comedi_insn *insn,
				  unsigned int *data)
{
{
	struct vmk80xx_private *devpriv = dev->private;
	struct vmk80xx_private *devpriv = dev->private;
	unsigned char *tx_buf;
	unsigned char *tx_buf;
@@ -1267,10 +1267,10 @@ static int vmk80xx_attach_common(struct comedi_device *dev)
		s = &dev->subdevices[5];
		s = &dev->subdevices[5];
		s->type		= COMEDI_SUBD_PWM;
		s->type		= COMEDI_SUBD_PWM;
		s->subdev_flags	= SDF_READABLE | SDF_WRITEABLE;
		s->subdev_flags	= SDF_READABLE | SDF_WRITEABLE;
		s->n_chan = boardinfo->pwm_chans;
		s->n_chan	= boardinfo->pwm_nchans;
		s->maxdata = (1 << boardinfo->pwm_bits) - 1;
		s->maxdata	= boardinfo->pwm_maxdata;
		s->insn_read = vmk80xx_pwm_rinsn;
		s->insn_read	= vmk80xx_pwm_insn_read;
		s->insn_write = vmk80xx_pwm_winsn;
		s->insn_write	= vmk80xx_pwm_insn_write;
	}
	}


	up(&devpriv->limit_sem);
	up(&devpriv->limit_sem);