[PATCH 00/27] Clean up of_platform drivers

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



struct of_platform_driver unnecessarily duplicates the .owner and
.name fields from the encapsulated struct device_driver.  This patch
series goes through all of_platform drivers and makes it use the
device_driver instance so that the duplicate field can be removed.

Since every of_platform_driver is getting touched anyway, this series
takes the opportunity to also move the of_device_id match table out
of struct of_platform_driver and into struct device_driver proper.
This makes it possible for all bus types to make use of OF-style
binding when CONFIG_OF is set.

I've compile tested this on sparc, powerpc and microblaze.  It should
all be fully bisectable, and only the last patch removes the old
fields (ie. nothing should break without the last patch).

g.

---

Grant Likely (27):
      of: remove obsolete members from of_platform_driver
      arch/sparc/of: don't use deprecated field in of_platform_driver
      arch/powerpc/of: don't use deprecated field in of_platform_driver
      sound/of: don't use deprecated fields in of_platform_driver
      drivers/infiniband/of: don't use deprecated fields in of_platform_driver
      drivers/i2c/of: don't use deprecated field in of_platform_driver
      drivers/hwmon/of: don't use deprecated field in of_platform_driver
      drivers/mmc/of: don't use deprecated field in of_platform_driver
      drivers/pcmcia/of: don't use deprecated field in of_platform_driver
      drivers/parport/of: don't use deprecated field in of_platform_driver
      drivers/sbus/of: don't use deprecated field in of_platform_driver
      drivers/scsi/of: don't use deprecated field in of_platform_driver
      drivers/spi/of: don't use deprecated field in of_platform_driver
      drivers/serial/of: don't use deprecated field in of_platform_driver
      drivers/net/of: don't use deprecated field in of_platform_driver
      drivers/mtd/of: don't use deprecated field in of_platform_driver
      drivers/macintosh/of: don't use deprecated field in of_platform_driver
      drivers/input/of: don't use deprecated field in of_platform_driver
      drivers/atm/of: don't use deprecated field in of_platform_driver
      drivers/crypto/of: don't use deprecated field in of_platform_driver
      drivers/char/of: don't use deprecated field in of_platform_driver
      drivers/block/of: don't use deprecated field in of_platform_driver
      drivers/usb/of: don't use deprecated field in of_platform_driver
      drivers/video/of: don't use deprecated field in of_platform_driver
      drivers/watchdog/of: don't use deprecated .name and .owner in of_platform_driver
      drivers/gpio/of: don't use deprecated fields in of_platform_driver
      drivercore: Add of_match_table to the common device drivers


 arch/powerpc/kernel/ibmebus.c                 |    2 +-
 arch/powerpc/kernel/of_platform.c             |    3 ++-
 arch/powerpc/platforms/52xx/mpc52xx_gpio.c    |   14 ++++++++----
 arch/powerpc/platforms/52xx/mpc52xx_gpt.c     |    7 ++++--
 arch/powerpc/platforms/52xx/mpc52xx_lpbfifo.c |    8 ++++---
 arch/powerpc/platforms/82xx/ep8248e.c         |    3 ++-
 arch/powerpc/platforms/83xx/suspend.c         |    7 ++++--
 arch/powerpc/platforms/cell/axon_msi.c        |    7 +++---
 arch/powerpc/platforms/pasemi/gpio_mdio.c     |    7 +++---
 arch/powerpc/sysdev/axonram.c                 |    8 +++----
 arch/powerpc/sysdev/bestcomm/bestcomm.c       |   10 +++-----
 arch/powerpc/sysdev/fsl_msi.c                 |    7 ++++--
 arch/powerpc/sysdev/fsl_pmc.c                 |    7 ++++--
 arch/powerpc/sysdev/fsl_rio.c                 |    7 ++++--
 arch/powerpc/sysdev/pmi.c                     |    7 +++---
 arch/powerpc/sysdev/qe_lib/qe.c               |    7 ++++--
 arch/sparc/include/asm/parport.h              |    7 ++++--
 arch/sparc/kernel/apc.c                       |    7 ++++--
 arch/sparc/kernel/auxio_64.c                  |    7 +++---
 arch/sparc/kernel/central.c                   |   14 +++++++-----
 arch/sparc/kernel/chmc.c                      |    7 ++++--
 arch/sparc/kernel/pci_fire.c                  |    7 ++++--
 arch/sparc/kernel/pci_psycho.c                |    7 ++++--
 arch/sparc/kernel/pci_sabre.c                 |    7 ++++--
 arch/sparc/kernel/pci_schizo.c                |    7 ++++--
 arch/sparc/kernel/pci_sun4v.c                 |    7 ++++--
 arch/sparc/kernel/pmc.c                       |    7 ++++--
 arch/sparc/kernel/power.c                     |    7 +++---
 arch/sparc/kernel/time_32.c                   |    7 +++---
 arch/sparc/kernel/time_64.c                   |   21 ++++++++++--------
 drivers/ata/pata_of_platform.c                |    7 ++++--
 drivers/ata/sata_fsl.c                        |    7 ++++--
 drivers/atm/fore200e.c                        |    7 ++++--
 drivers/block/xsysace.c                       |    5 ++--
 drivers/char/hw_random/n2-drv.c               |    7 ++++--
 drivers/char/hw_random/pasemi-rng.c           |    7 ++++--
 drivers/char/ipmi/ipmi_si_intf.c              |    7 ++++--
 drivers/char/xilinx_hwicap/xilinx_hwicap.c    |    5 ++--
 drivers/crypto/amcc/crypto4xx_core.c          |    7 ++++--
 drivers/crypto/talitos.c                      |    7 ++++--
 drivers/dma/fsldma.c                          |   13 +++++++----
 drivers/dma/ppc4xx/adma.c                     |    2 +-
 drivers/edac/mpc85xx_edac.c                   |   30 ++++++++++---------------
 drivers/edac/ppc4xx_edac.c                    |   10 ++++----
 drivers/hwmon/ultra45_env.c                   |    7 ++++--
 drivers/i2c/busses/i2c-cpm.c                  |   10 ++++----
 drivers/i2c/busses/i2c-ibm_iic.c              |    7 ++++--
 drivers/i2c/busses/i2c-mpc.c                  |    8 +++----
 drivers/infiniband/hw/ehca/ehca_main.c        |    7 +++---
 drivers/input/misc/sparcspkr.c                |   14 ++++++++----
 drivers/input/serio/i8042-sparcio.h           |    7 ++++--
 drivers/input/serio/xilinx_ps2.c              |    7 ++++--
 drivers/leds/leds-gpio.c                      |    2 +-
 drivers/macintosh/macio_asic.c                |    5 ++--
 drivers/macintosh/smu.c                       |    7 ++++--
 drivers/macintosh/therm_pm72.c                |    7 ++++--
 drivers/macintosh/therm_windtunnel.c          |    7 ++++--
 drivers/mmc/host/sdhci-of-core.c              |    7 ++++--
 drivers/mtd/maps/physmap_of.c                 |    7 ++++--
 drivers/mtd/maps/sun_uflash.c                 |    7 ++++--
 drivers/mtd/nand/fsl_elbc_nand.c              |    5 +++-
 drivers/mtd/nand/fsl_upm.c                    |    7 ++++--
 drivers/mtd/nand/ndfc.c                       |    5 +++-
 drivers/mtd/nand/pasemi_nand.c                |    7 ++++--
 drivers/mtd/nand/socrates_nand.c              |    7 ++++--
 drivers/net/can/mscan/mpc5xxx_can.c           |    8 ++++---
 drivers/net/can/sja1000/sja1000_of_platform.c |    8 ++++---
 drivers/net/ehea/ehea_main.c                  |    7 ++++--
 drivers/net/fs_enet/fs_enet-main.c            |    7 ++++--
 drivers/net/fs_enet/mii-bitbang.c             |    7 ++++--
 drivers/net/fs_enet/mii-fec.c                 |    7 ++++--
 drivers/net/fsl_pq_mdio.c                     |    7 ++++--
 drivers/net/gianfar.c                         |   10 +++++---
 drivers/net/ibm_newemac/core.c                |    8 ++++---
 drivers/net/ibm_newemac/mal.c                 |    8 ++++---
 drivers/net/ibm_newemac/rgmii.c               |    8 ++++---
 drivers/net/ibm_newemac/tah.c                 |    8 ++++---
 drivers/net/ibm_newemac/zmii.c                |    8 ++++---
 drivers/net/ll_temac_main.c                   |    2 +-
 drivers/net/myri_sbus.c                       |    7 ++++--
 drivers/net/niu.c                             |    7 ++++--
 drivers/net/phy/mdio-gpio.c                   |    7 ++++--
 drivers/net/sunbmac.c                         |    7 ++++--
 drivers/net/sunhme.c                          |    7 ++++--
 drivers/net/sunlance.c                        |    7 ++++--
 drivers/net/sunqe.c                           |    7 ++++--
 drivers/net/ucc_geth.c                        |    7 ++++--
 drivers/net/xilinx_emaclite.c                 |    7 ++++--
 drivers/of/platform.c                         |   10 ++------
 drivers/parport/parport_sunbpp.c              |    7 ++++--
 drivers/pcmcia/electra_cf.c                   |    7 ++++--
 drivers/pcmcia/m8xx_pcmcia.c                  |    7 ++++--
 drivers/sbus/char/bbc_i2c.c                   |    7 ++++--
 drivers/sbus/char/display7seg.c               |    7 ++++--
 drivers/sbus/char/envctrl.c                   |    7 ++++--
 drivers/sbus/char/flash.c                     |    7 ++++--
 drivers/sbus/char/uctrl.c                     |    7 ++++--
 drivers/scsi/qlogicpti.c                      |    7 ++++--
 drivers/scsi/sun_esp.c                        |    7 ++++--
 drivers/serial/apbuart.c                      |    8 +++----
 drivers/serial/cpm_uart/cpm_uart_core.c       |    7 ++++--
 drivers/serial/mpc52xx_uart.c                 |    7 +++---
 drivers/serial/of_serial.c                    |    8 ++++---
 drivers/serial/sunhv.c                        |    7 ++++--
 drivers/serial/sunsab.c                       |    7 ++++--
 drivers/serial/sunsu.c                        |    7 ++++--
 drivers/serial/sunzilog.c                     |    7 ++++--
 drivers/serial/uartlite.c                     |    5 ++--
 drivers/serial/ucc_uart.c                     |    8 ++++---
 drivers/spi/mpc52xx_psc_spi.c                 |    4 +--
 drivers/spi/mpc52xx_spi.c                     |    8 ++++---
 drivers/spi/spi_mpc8xxx.c                     |    7 ++++--
 drivers/spi/spi_ppc4xx.c                      |    2 +-
 drivers/spi/xilinx_spi_of.c                   |    2 +-
 drivers/usb/gadget/fsl_qe_udc.c               |    7 ++++--
 drivers/usb/host/ehci-ppc-of.c                |    9 +++-----
 drivers/usb/host/ehci-xilinx-of.c             |    9 +++-----
 drivers/usb/host/fhci-hcd.c                   |    7 ++++--
 drivers/usb/host/isp1760-if.c                 |    7 ++++--
 drivers/usb/host/ohci-ppc-of.c                |   13 +++--------
 drivers/video/bw2.c                           |    7 ++++--
 drivers/video/cg14.c                          |    7 ++++--
 drivers/video/cg3.c                           |    7 ++++--
 drivers/video/cg6.c                           |    7 ++++--
 drivers/video/ffb.c                           |    7 ++++--
 drivers/video/fsl-diu-fb.c                    |    8 ++++---
 drivers/video/leo.c                           |    7 ++++--
 drivers/video/mb862xx/mb862xxfb.c             |    8 ++++---
 drivers/video/p9100.c                         |    7 ++++--
 drivers/video/platinumfb.c                    |    7 ++++--
 drivers/video/tcx.c                           |    7 ++++--
 drivers/video/xilinxfb.c                      |    5 ++--
 drivers/watchdog/cpwd.c                       |    7 ++++--
 drivers/watchdog/gef_wdt.c                    |    8 ++++---
 drivers/watchdog/mpc8xxx_wdt.c                |    8 +++----
 drivers/watchdog/riowd.c                      |    7 ++++--
 include/linux/device.h                        |    4 +++
 include/linux/of_platform.h                   |    4 ---
 sound/soc/fsl/mpc5200_psc_ac97.c              |    2 +-
 sound/soc/fsl/mpc5200_psc_i2s.c               |    2 +-
 sound/soc/fsl/mpc8610_hpcd.c                  |    8 ++++---
 sound/sparc/amd7930.c                         |    7 ++++--
 sound/sparc/cs4231.c                          |    7 ++++--
 sound/sparc/dbri.c                            |    7 ++++--
 144 files changed, 665 insertions(+), 380 deletions(-)

-- 
Signature
--
To unsubscribe from this list: send the line "unsubscribe linux-i2c" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux GPIO]     [Linux SPI]     [Linux Hardward Monitoring]     [LM Sensors]     [Linux USB Devel]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux