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: H Hartley Sweeten <hsweeten@visionengravers.com> Cc: Ian Abbott <abbotti@mev.co.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
75a45d924d
commit
9a23a7481e
1 changed files with 18 additions and 18 deletions
|
@ -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;
|
||||||
|
@ -1265,12 +1265,12 @@ static int vmk80xx_attach_common(struct comedi_device *dev)
|
||||||
/* PWM subdevice */
|
/* PWM subdevice */
|
||||||
if (devpriv->model == VMK8061_MODEL) {
|
if (devpriv->model == VMK8061_MODEL) {
|
||||||
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);
|
||||||
|
|
Loading…
Add table
Reference in a new issue