Re: [PATCH 1/5] ibmebus: convert of_platform_driver to platform_driver

From: Rob Herring
Date: Thu Apr 25 2013 - 11:23:46 EST


On Sun, Apr 21, 2013 at 9:13 PM, Rob Herring <robherring2@xxxxxxxxx> wrote:
> From: Rob Herring <rob.herring@xxxxxxxxxxx>
>
> ibmebus is the last remaining user of of_platform_driver and the
> conversion to a regular platform driver is trivial.
>
> Signed-off-by: Rob Herring <rob.herring@xxxxxxxxxxx>
> Cc: Benjamin Herrenschmidt <benh@xxxxxxxxxxxxxxxxxxx>
> Cc: Paul Mackerras <paulus@xxxxxxxxx>
> Cc: Hoang-Nam Nguyen <hnguyen@xxxxxxxxxx>
> Cc: Christoph Raisch <raisch@xxxxxxxxxx>
> Cc: Roland Dreier <roland@xxxxxxxxxx>
> Cc: Sean Hefty <sean.hefty@xxxxxxxxx>
> Cc: Hal Rosenstock <hal.rosenstock@xxxxxxxxx>
> Cc: Thadeu Lima de Souza Cascardo <cascardo@xxxxxxxxxxxxxxxxxx>
> Cc: Grant Likely <grant.likely@xxxxxxxxxx>
> Cc: linuxppc-dev@xxxxxxxxxxxxxxxx
> Cc: linux-rdma@xxxxxxxxxxxxxxx
> Cc: netdev@xxxxxxxxxxxxxxx

Ben, Can I have your Ack for this? The change is straightforward and
neither of the 2 drivers used the id parameter that is removed.

Rob

> ---
> arch/powerpc/include/asm/ibmebus.h | 4 ++--
> arch/powerpc/kernel/ibmebus.c | 22 ++++++++++------------
> drivers/infiniband/hw/ehca/ehca_main.c | 5 ++---
> drivers/net/ethernet/ibm/ehea/ehea_main.c | 8 +++-----
> 4 files changed, 17 insertions(+), 22 deletions(-)
>
> diff --git a/arch/powerpc/include/asm/ibmebus.h b/arch/powerpc/include/asm/ibmebus.h
> index 1a9d9ae..088f95b 100644
> --- a/arch/powerpc/include/asm/ibmebus.h
> +++ b/arch/powerpc/include/asm/ibmebus.h
> @@ -48,8 +48,8 @@
>
> extern struct bus_type ibmebus_bus_type;
>
> -int ibmebus_register_driver(struct of_platform_driver *drv);
> -void ibmebus_unregister_driver(struct of_platform_driver *drv);
> +int ibmebus_register_driver(struct platform_driver *drv);
> +void ibmebus_unregister_driver(struct platform_driver *drv);
>
> int ibmebus_request_irq(u32 ist, irq_handler_t handler,
> unsigned long irq_flags, const char *devname,
> diff --git a/arch/powerpc/kernel/ibmebus.c b/arch/powerpc/kernel/ibmebus.c
> index 8220baa..16a7c23 100644
> --- a/arch/powerpc/kernel/ibmebus.c
> +++ b/arch/powerpc/kernel/ibmebus.c
> @@ -205,7 +205,7 @@ static int ibmebus_create_devices(const struct of_device_id *matches)
> return ret;
> }
>
> -int ibmebus_register_driver(struct of_platform_driver *drv)
> +int ibmebus_register_driver(struct platform_driver *drv)
> {
> /* If the driver uses devices that ibmebus doesn't know, add them */
> ibmebus_create_devices(drv->driver.of_match_table);
> @@ -215,7 +215,7 @@ int ibmebus_register_driver(struct of_platform_driver *drv)
> }
> EXPORT_SYMBOL(ibmebus_register_driver);
>
> -void ibmebus_unregister_driver(struct of_platform_driver *drv)
> +void ibmebus_unregister_driver(struct platform_driver *drv)
> {
> driver_unregister(&drv->driver);
> }
> @@ -338,11 +338,10 @@ static int ibmebus_bus_bus_match(struct device *dev, struct device_driver *drv)
> static int ibmebus_bus_device_probe(struct device *dev)
> {
> int error = -ENODEV;
> - struct of_platform_driver *drv;
> + struct platform_driver *drv;
> struct platform_device *of_dev;
> - const struct of_device_id *match;
>
> - drv = to_of_platform_driver(dev->driver);
> + drv = to_platform_driver(dev->driver);
> of_dev = to_platform_device(dev);
>
> if (!drv->probe)
> @@ -350,9 +349,8 @@ static int ibmebus_bus_device_probe(struct device *dev)
>
> of_dev_get(of_dev);
>
> - match = of_match_device(drv->driver.of_match_table, dev);
> - if (match)
> - error = drv->probe(of_dev, match);
> + if (of_driver_match_device(dev, dev->driver))
> + error = drv->probe(of_dev);
> if (error)
> of_dev_put(of_dev);
>
> @@ -362,7 +360,7 @@ static int ibmebus_bus_device_probe(struct device *dev)
> static int ibmebus_bus_device_remove(struct device *dev)
> {
> struct platform_device *of_dev = to_platform_device(dev);
> - struct of_platform_driver *drv = to_of_platform_driver(dev->driver);
> + struct platform_driver *drv = to_platform_driver(dev->driver);
>
> if (dev->driver && drv->remove)
> drv->remove(of_dev);
> @@ -372,7 +370,7 @@ static int ibmebus_bus_device_remove(struct device *dev)
> static void ibmebus_bus_device_shutdown(struct device *dev)
> {
> struct platform_device *of_dev = to_platform_device(dev);
> - struct of_platform_driver *drv = to_of_platform_driver(dev->driver);
> + struct platform_driver *drv = to_platform_driver(dev->driver);
>
> if (dev->driver && drv->shutdown)
> drv->shutdown(of_dev);
> @@ -419,7 +417,7 @@ struct device_attribute ibmebus_bus_device_attrs[] = {
> static int ibmebus_bus_legacy_suspend(struct device *dev, pm_message_t mesg)
> {
> struct platform_device *of_dev = to_platform_device(dev);
> - struct of_platform_driver *drv = to_of_platform_driver(dev->driver);
> + struct platform_driver *drv = to_platform_driver(dev->driver);
> int ret = 0;
>
> if (dev->driver && drv->suspend)
> @@ -430,7 +428,7 @@ static int ibmebus_bus_legacy_suspend(struct device *dev, pm_message_t mesg)
> static int ibmebus_bus_legacy_resume(struct device *dev)
> {
> struct platform_device *of_dev = to_platform_device(dev);
> - struct of_platform_driver *drv = to_of_platform_driver(dev->driver);
> + struct platform_driver *drv = to_platform_driver(dev->driver);
> int ret = 0;
>
> if (dev->driver && drv->resume)
> diff --git a/drivers/infiniband/hw/ehca/ehca_main.c b/drivers/infiniband/hw/ehca/ehca_main.c
> index f8a6291..982e3ef 100644
> --- a/drivers/infiniband/hw/ehca/ehca_main.c
> +++ b/drivers/infiniband/hw/ehca/ehca_main.c
> @@ -713,8 +713,7 @@ static struct attribute_group ehca_dev_attr_grp = {
> .attrs = ehca_dev_attrs
> };
>
> -static int ehca_probe(struct platform_device *dev,
> - const struct of_device_id *id)
> +static int ehca_probe(struct platform_device *dev)
> {
> struct ehca_shca *shca;
> const u64 *handle;
> @@ -937,7 +936,7 @@ static struct of_device_id ehca_device_table[] =
> };
> MODULE_DEVICE_TABLE(of, ehca_device_table);
>
> -static struct of_platform_driver ehca_driver = {
> +static struct platform_driver ehca_driver = {
> .probe = ehca_probe,
> .remove = ehca_remove,
> .driver = {
> diff --git a/drivers/net/ethernet/ibm/ehea/ehea_main.c b/drivers/net/ethernet/ibm/ehea/ehea_main.c
> index 328f47c..c6ecf70 100644
> --- a/drivers/net/ethernet/ibm/ehea/ehea_main.c
> +++ b/drivers/net/ethernet/ibm/ehea/ehea_main.c
> @@ -98,8 +98,7 @@ static struct ehea_fw_handle_array ehea_fw_handles;
> static struct ehea_bcmc_reg_array ehea_bcmc_regs;
>
>
> -static int ehea_probe_adapter(struct platform_device *dev,
> - const struct of_device_id *id);
> +static int ehea_probe_adapter(struct platform_device *dev);
>
> static int ehea_remove(struct platform_device *dev);
>
> @@ -112,7 +111,7 @@ static struct of_device_id ehea_device_table[] = {
> };
> MODULE_DEVICE_TABLE(of, ehea_device_table);
>
> -static struct of_platform_driver ehea_driver = {
> +static struct platform_driver ehea_driver = {
> .driver = {
> .name = "ehea",
> .owner = THIS_MODULE,
> @@ -3255,8 +3254,7 @@ static void ehea_remove_device_sysfs(struct platform_device *dev)
> device_remove_file(&dev->dev, &dev_attr_remove_port);
> }
>
> -static int ehea_probe_adapter(struct platform_device *dev,
> - const struct of_device_id *id)
> +static int ehea_probe_adapter(struct platform_device *dev)
> {
> struct ehea_adapter *adapter;
> const u64 *adapter_handle;
> --
> 1.7.10.4
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/