Re: [PATCH] Staging: iio: adc: use dev_get_platdata()
On 23/11/15 17:33, Nizam Haider wrote: > Use the wrapper function for retrieving the platform data instead of > accessing dev->platform_data directly. > > Signed-off-by: Nizam Haider The 7780 platform data has gone away in the meantime. Applied for the other 3. Thanks, Jonathan > --- > drivers/staging/iio/adc/ad7192.c | 2 +- > drivers/staging/iio/adc/ad7280a.c | 2 +- > drivers/staging/iio/adc/ad7780.c | 2 +- > drivers/staging/iio/adc/ad7816.c | 2 +- > 4 files changed, 4 insertions(+), 4 deletions(-) > > diff --git a/drivers/staging/iio/adc/ad7192.c > b/drivers/staging/iio/adc/ad7192.c > index bb40f37..9221103 100644 > --- a/drivers/staging/iio/adc/ad7192.c > +++ b/drivers/staging/iio/adc/ad7192.c > @@ -609,7 +609,7 @@ static const struct iio_chan_spec ad7192_channels[] = { > > static int ad7192_probe(struct spi_device *spi) > { > - const struct ad7192_platform_data *pdata = spi->dev.platform_data; > + const struct ad7192_platform_data *pdata = dev_get_platdata(&spi->dev); > struct ad7192_state *st; > struct iio_dev *indio_dev; > int ret, voltage_uv = 0; > diff --git a/drivers/staging/iio/adc/ad7280a.c > b/drivers/staging/iio/adc/ad7280a.c > index 35acb1a..f45ebed 100644 > --- a/drivers/staging/iio/adc/ad7280a.c > +++ b/drivers/staging/iio/adc/ad7280a.c > @@ -833,7 +833,7 @@ static const struct ad7280_platform_data > ad7793_default_pdata = { > > static int ad7280_probe(struct spi_device *spi) > { > - const struct ad7280_platform_data *pdata = spi->dev.platform_data; > + const struct ad7280_platform_data *pdata = dev_get_platdata(&spi->dev); > struct ad7280_state *st; > int ret; > const unsigned short tACQ_ns[4] = {465, 1010, 1460, 1890}; > diff --git a/drivers/staging/iio/adc/ad7780.c > b/drivers/staging/iio/adc/ad7780.c > index 3abc778..9baa703 100644 > --- a/drivers/staging/iio/adc/ad7780.c > +++ b/drivers/staging/iio/adc/ad7780.c > @@ -163,7 +163,7 @@ static const struct iio_info ad7780_info = { > > static int ad7780_probe(struct spi_device *spi) > { > - struct ad7780_platform_data *pdata = spi->dev.platform_data; > + struct ad7780_platform_data *pdata = dev_get_platdata(&spi->dev); > struct ad7780_state *st; > struct iio_dev *indio_dev; > int ret, voltage_uv = 0; > diff --git a/drivers/staging/iio/adc/ad7816.c > b/drivers/staging/iio/adc/ad7816.c > index c8e1566..2226051 100644 > --- a/drivers/staging/iio/adc/ad7816.c > +++ b/drivers/staging/iio/adc/ad7816.c > @@ -345,7 +345,7 @@ static int ad7816_probe(struct spi_device *spi_dev) > { > struct ad7816_chip_info *chip; > struct iio_dev *indio_dev; > - unsigned short *pins = spi_dev->dev.platform_data; > + unsigned short *pins = dev_get_platdata(&spi_dev->dev); > int ret = 0; > int i; > > ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
Re: [PATCH] Staging: iio: light: tsl2x7x_core: use dev_get_platdata()
On 23/11/15 17:48, Nizam Haider wrote: > Use the wrapper function for retrieving the platform data instead of > accessing dev->platform_data directly. > > Signed-off-by: Nizam Haider Applied to the togreg branch of iio.git - initially pushed out as testing. Note that branch will get rebased shortly to catch up with Greg's staging-next. Thanks, Jonathan > --- > drivers/staging/iio/light/tsl2x7x_core.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/staging/iio/light/tsl2x7x_core.c > b/drivers/staging/iio/light/tsl2x7x_core.c > index 9dfd048..5b1c165 100644 > --- a/drivers/staging/iio/light/tsl2x7x_core.c > +++ b/drivers/staging/iio/light/tsl2x7x_core.c > @@ -1898,7 +1898,7 @@ static int tsl2x7x_probe(struct i2c_client *clientp, > mutex_init(&chip->prox_mutex); > > chip->tsl2x7x_chip_status = TSL2X7X_CHIP_UNKNOWN; > - chip->pdata = clientp->dev.platform_data; > + chip->pdata = dev_get_platdata(&clientp->dev); > chip->id = id->driver_data; > chip->chip_info = > &tsl2x7x_chip_info_tbl[device_channel_config[id->driver_data]]; > ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
Re: [PATCH] Staging: iio: frequency: use dev_get_platdata()
On 23/11/15 18:07, Nizam Haider wrote: > Use the wrapper function for retrieving the platform data instead of > accessing dev->platform_data directly. > > Signed-off-by: Nizam Haider applied > --- > drivers/staging/iio/frequency/ad9832.c | 2 +- > drivers/staging/iio/frequency/ad9834.c | 2 +- > 2 files changed, 2 insertions(+), 2 deletions(-) > > diff --git a/drivers/staging/iio/frequency/ad9832.c > b/drivers/staging/iio/frequency/ad9832.c > index 2b65faa..18b27a1 100644 > --- a/drivers/staging/iio/frequency/ad9832.c > +++ b/drivers/staging/iio/frequency/ad9832.c > @@ -201,7 +201,7 @@ static const struct iio_info ad9832_info = { > > static int ad9832_probe(struct spi_device *spi) > { > - struct ad9832_platform_data *pdata = spi->dev.platform_data; > + struct ad9832_platform_data *pdata = dev_get_platdata(&spi->dev); > struct iio_dev *indio_dev; > struct ad9832_state *st; > struct regulator *reg; > diff --git a/drivers/staging/iio/frequency/ad9834.c > b/drivers/staging/iio/frequency/ad9834.c > index 6464f2c..6366216 100644 > --- a/drivers/staging/iio/frequency/ad9834.c > +++ b/drivers/staging/iio/frequency/ad9834.c > @@ -318,7 +318,7 @@ static const struct iio_info ad9833_info = { > > static int ad9834_probe(struct spi_device *spi) > { > - struct ad9834_platform_data *pdata = spi->dev.platform_data; > + struct ad9834_platform_data *pdata = dev_get_platdata(&spi->dev); > struct ad9834_state *st; > struct iio_dev *indio_dev; > struct regulator *reg; > ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
[PATCH] staging: gdm72xx: fix address space parse warnings
copy_to_user() and copy_from_user() functions expect the user space pointers to be marked with __user. Sparse throws following warnings. For copy_to_user(): warning: incorrect type in argument 1 (different address spaces) expected void [noderef] *to got void *buf For copy_from_user(): warning: incorrect type in argument 2 (different address spaces) expected void const [noderef] *from got void *buf This patch casts the user space pointers to have __user by using __force. Signed-off-by: Okash Khawaja --- drivers/staging/gdm72xx/gdm_wimax.c | 10 -- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/drivers/staging/gdm72xx/gdm_wimax.c b/drivers/staging/gdm72xx/gdm_wimax.c index d9ddced..16f8f35 100644 --- a/drivers/staging/gdm72xx/gdm_wimax.c +++ b/drivers/staging/gdm72xx/gdm_wimax.c @@ -371,6 +371,7 @@ static void kdelete(void **buf) static int gdm_wimax_ioctl_get_data(struct data_s *dst, struct data_s *src) { int size; + void __user *p; size = dst->size < src->size ? dst->size : src->size; @@ -378,7 +379,9 @@ static int gdm_wimax_ioctl_get_data(struct data_s *dst, struct data_s *src) if (src->size) { if (!dst->buf) return -EINVAL; - if (copy_to_user(dst->buf, src->buf, size)) + + p = (__force void __user *)dst->buf; + if (copy_to_user(p, src->buf, size)) return -EFAULT; } return 0; @@ -386,6 +389,8 @@ static int gdm_wimax_ioctl_get_data(struct data_s *dst, struct data_s *src) static int gdm_wimax_ioctl_set_data(struct data_s *dst, struct data_s *src) { + void __user *p; + if (!src->size) { dst->size = 0; return 0; @@ -401,7 +406,8 @@ static int gdm_wimax_ioctl_set_data(struct data_s *dst, struct data_s *src) return -ENOMEM; } - if (copy_from_user(dst->buf, src->buf, src->size)) { + p = (__force void __user *)src->buf; + if (copy_from_user(dst->buf, p, src->size)) { kdelete(&dst->buf); return -EFAULT; } -- 2.5.2 ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
[PATCH] staging: fwserial: Fix coding style problems
Fix below coding style problems reported by checkpatch: - Check for pointer comparisons to NULL - No space after a cast Signed-off-by: Rajan Vaja --- drivers/staging/fwserial/dma_fifo.c | 10 +- drivers/staging/fwserial/fwserial.c | 18 +- 2 files changed, 14 insertions(+), 14 deletions(-) diff --git a/drivers/staging/fwserial/dma_fifo.c b/drivers/staging/fwserial/dma_fifo.c index 7a3347c..4cd3ed3 100644 --- a/drivers/staging/fwserial/dma_fifo.c +++ b/drivers/staging/fwserial/dma_fifo.c @@ -106,7 +106,7 @@ void dma_fifo_free(struct dma_fifo *fifo) { struct dma_pending *pending, *next; - if (fifo->data == NULL) + if (!fifo->data) return; list_for_each_entry_safe(pending, next, &fifo->pending, link) @@ -123,7 +123,7 @@ void dma_fifo_reset(struct dma_fifo *fifo) { struct dma_pending *pending, *next; - if (fifo->data == NULL) + if (!fifo->data) return; list_for_each_entry_safe(pending, next, &fifo->pending, link) @@ -149,7 +149,7 @@ int dma_fifo_in(struct dma_fifo *fifo, const void *src, int n) { int ofs, l; - if (fifo->data == NULL) + if (!fifo->data) return -ENOENT; if (fifo->corrupt) return -ENXIO; @@ -192,7 +192,7 @@ int dma_fifo_out_pend(struct dma_fifo *fifo, struct dma_pending *pended) { unsigned len, n, ofs, l, limit; - if (fifo->data == NULL) + if (!fifo->data) return -ENOENT; if (fifo->corrupt) return -ENXIO; @@ -252,7 +252,7 @@ int dma_fifo_out_complete(struct dma_fifo *fifo, struct dma_pending *complete) { struct dma_pending *pending, *next, *tmp; - if (fifo->data == NULL) + if (!fifo->data) return -ENOENT; if (fifo->corrupt) return -ENXIO; diff --git a/drivers/staging/fwserial/fwserial.c b/drivers/staging/fwserial/fwserial.c index b3ea4bb..06c23d3 100644 --- a/drivers/staging/fwserial/fwserial.c +++ b/drivers/staging/fwserial/fwserial.c @@ -1466,9 +1466,9 @@ static void fwtty_debugfs_show_peer(struct seq_file *m, struct fwtty_peer *peer) seq_printf(m, " %s:", dev_name(&peer->unit->device)); seq_printf(m, " node:%04x gen:%d", peer->node_id, generation); seq_printf(m, " sp:%d max:%d guid:%016llx", peer->speed, - peer->max_payload, (unsigned long long) peer->guid); - seq_printf(m, " mgmt:%012llx", (unsigned long long) peer->mgmt_addr); - seq_printf(m, " addr:%012llx", (unsigned long long) peer->status_addr); + peer->max_payload, (unsigned long long)peer->guid); + seq_printf(m, " mgmt:%012llx", (unsigned long long)peer->mgmt_addr); + seq_printf(m, " addr:%012llx", (unsigned long long)peer->status_addr); seq_putc(m, '\n'); } @@ -1515,7 +1515,7 @@ static int fwtty_debugfs_peers_show(struct seq_file *m, void *v) rcu_read_lock(); seq_printf(m, "card: %s guid: %016llx\n", dev_name(serial->card->device), - (unsigned long long) serial->card->guid); + (unsigned long long)serial->card->guid); list_for_each_entry_rcu(peer, &serial->peer_list, list) fwtty_debugfs_show_peer(m, peer); rcu_read_unlock(); @@ -1701,7 +1701,7 @@ static void fwserial_virt_plug_complete(struct fwtty_peer *peer, dma_fifo_change_tx_limit(&port->tx_fifo, port->max_payload); spin_unlock_bh(&peer->port->lock); - if (port->port.console && port->fwcon_ops->notify != NULL) + if (port->port.console && port->fwcon_ops->notify) (*port->fwcon_ops->notify)(FWCON_NOTIFY_ATTACH, port->con_data); fwtty_info(&peer->unit, "peer (guid:%016llx) connected on %s\n", @@ -1808,7 +1808,7 @@ static void fwserial_release_port(struct fwtty_port *port, bool reset) RCU_INIT_POINTER(port->peer, NULL); spin_unlock_bh(&port->lock); - if (port->port.console && port->fwcon_ops->notify != NULL) + if (port->port.console && port->fwcon_ops->notify) (*port->fwcon_ops->notify)(FWCON_NOTIFY_DETACH, port->con_data); } @@ -1987,7 +1987,7 @@ static struct fwtty_peer *__fwserial_peer_by_node_id(struct fw_card *card, * been probed for any unit devices... */ fwtty_err(card, "unknown card (guid %016llx)\n", - (unsigned long long) card->guid); + (unsigned long long)card->guid); return NULL; } @@ -2017,7 +2017,7 @@ static void __dump_peer_list(struct fw_card *card) smp_rmb(); fwtty_dbg(card, "peer(%d:%x) guid: %016llx\n", - g, peer->node_id, (unsigned long long) peer->guid); + g, peer->node_id, (unsigned long long)peer->guid); } } #else @@ -2314,7 +2314