On Thu, Apr 30, 2009 at 4:31 PM, Anton Vorontsov <avoront...@ru.mvista.com> wrote: > mpc52xx_psc_spi driver is the last user of the legacy activate_cs > and deactivate_cs callbacks, so convert the driver to the cs_control > hook and remove the legacy callbacks from fsl_spi_platform_data > struct. > > Signed-off-by: Anton Vorontsov <avoront...@ru.mvista.com> Acked-by: Grant Likely <grant.lik...@secretlab.ca>
David, will you pick this one up, or can I put it into Ben's powerpc -next tree (since it is a powerpc-only device driver). g. > --- > drivers/spi/mpc52xx_psc_spi.c | 22 +++++++++------------- > include/linux/fsl_devices.h | 4 ---- > 2 files changed, 9 insertions(+), 17 deletions(-) > > diff --git a/drivers/spi/mpc52xx_psc_spi.c b/drivers/spi/mpc52xx_psc_spi.c > index 68c77a9..e1901fd 100644 > --- a/drivers/spi/mpc52xx_psc_spi.c > +++ b/drivers/spi/mpc52xx_psc_spi.c > @@ -13,6 +13,7 @@ > > #include <linux/module.h> > #include <linux/init.h> > +#include <linux/types.h> > #include <linux/errno.h> > #include <linux/interrupt.h> > #include <linux/of_platform.h> > @@ -30,8 +31,7 @@ > > struct mpc52xx_psc_spi { > /* fsl_spi_platform data */ > - void (*activate_cs)(u8, u8); > - void (*deactivate_cs)(u8, u8); > + void (*cs_control)(struct spi_device *spi, bool on); > u32 sysclk; > > /* driver internal data */ > @@ -111,18 +111,16 @@ static void mpc52xx_psc_spi_activate_cs(struct > spi_device *spi) > out_be16((u16 __iomem *)&psc->ccr, ccr); > mps->bits_per_word = cs->bits_per_word; > > - if (mps->activate_cs) > - mps->activate_cs(spi->chip_select, > - (spi->mode & SPI_CS_HIGH) ? 1 : 0); > + if (mps->cs_control) > + mps->cs_control(spi, (spi->mode & SPI_CS_HIGH) ? 1 : 0); > } > > static void mpc52xx_psc_spi_deactivate_cs(struct spi_device *spi) > { > struct mpc52xx_psc_spi *mps = spi_master_get_devdata(spi->master); > > - if (mps->deactivate_cs) > - mps->deactivate_cs(spi->chip_select, > - (spi->mode & SPI_CS_HIGH) ? 1 : 0); > + if (mps->cs_control) > + mps->cs_control(spi, (spi->mode & SPI_CS_HIGH) ? 0 : 1); > } > > #define MPC52xx_PSC_BUFSIZE (MPC52xx_PSC_RFNUM_MASK + 1) > @@ -388,15 +386,13 @@ static int __init mpc52xx_psc_spi_do_probe(struct > device *dev, u32 regaddr, > mps->irq = irq; > if (pdata == NULL) { > dev_warn(dev, "probe called without platform data, no " > - "(de)activate_cs function will be called\n"); > - mps->activate_cs = NULL; > - mps->deactivate_cs = NULL; > + "cs_control function will be called\n"); > + mps->cs_control = NULL; > mps->sysclk = 0; > master->bus_num = bus_num; > master->num_chipselect = 255; > } else { > - mps->activate_cs = pdata->activate_cs; > - mps->deactivate_cs = pdata->deactivate_cs; > + mps->cs_control = pdata->cs_control; > mps->sysclk = pdata->sysclk; > master->bus_num = pdata->bus_num; > master->num_chipselect = pdata->max_chipselect; > diff --git a/include/linux/fsl_devices.h b/include/linux/fsl_devices.h > index 244677c..43fc95d 100644 > --- a/include/linux/fsl_devices.h > +++ b/include/linux/fsl_devices.h > @@ -79,10 +79,6 @@ struct fsl_spi_platform_data { > u16 max_chipselect; > void (*cs_control)(struct spi_device *spi, bool on); > u32 sysclk; > - > - /* Legacy hooks, used by mpc52xx_psc_spi driver. */ > - void (*activate_cs)(u8 cs, u8 polarity); > - void (*deactivate_cs)(u8 cs, u8 polarity); > }; > > struct mpc8xx_pcmcia_ops { > -- > 1.6.2.2 > -- Grant Likely, B.Sc., P.Eng. Secret Lab Technologies Ltd. _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-dev