Hi, On 09/02/2013 06:43 PM, Kishon Vijay Abraham I wrote: > renamed struct omap_control_usb to struct omap_control_phy since it can > be used to control PHY of USB, SATA and PCIE. Also moved the driver and > include files under *phy* and made the corresponding changes in the users > of phy-omap-control. > > Signed-off-by: Kishon Vijay Abraham I <kishon@xxxxxx> > --- > drivers/phy/Kconfig | 14 +- > drivers/phy/Makefile | 1 + > drivers/{usb => }/phy/phy-omap-control.c | 164 ++++++++++---------- > drivers/phy/phy-omap-pipe3.c | 8 +- > drivers/phy/phy-omap-usb2.c | 8 +- > drivers/usb/musb/omap2430.c | 2 +- > drivers/usb/phy/Makefile | 1 - > .../omap_control_usb.h => phy/omap_control_phy.h} | 32 ++-- > 8 files changed, 120 insertions(+), 110 deletions(-) > rename drivers/{usb => }/phy/phy-omap-control.c (55%) > rename include/linux/{usb/omap_control_usb.h => phy/omap_control_phy.h} (69%) > > diff --git a/drivers/phy/Kconfig b/drivers/phy/Kconfig > index 5c2e7a0..fd11294 100644 > --- a/drivers/phy/Kconfig > +++ b/drivers/phy/Kconfig > @@ -15,12 +15,22 @@ config GENERIC_PHY > phy users can obtain reference to the PHY. All the users of this > framework should select this config. > > +config OMAP_CONTROL_PHY > + tristate "OMAP CONTROL PHY Driver" > + depends on ARCH_OMAP2PLUS || COMPILE_TEST > + help > + Enable this to add support for the PHY part present in the control > + module. This driver has API to power on the USB2 PHY and to write to > + the mailbox. The mailbox is present only in omap4 and the register to > + power on the USB2 PHY is present in OMAP4 and OMAP5. OMAP5 has > + additional registers to power on PIPE3 PHYs. > + > config OMAP_USB2 > tristate "OMAP USB2 PHY Driver" > depends on ARCH_OMAP2PLUS > select GENERIC_PHY > select USB_PHY > - select OMAP_CONTROL_USB > + select OMAP_CONTROL_PHY > help > Enable this to support the transceiver that is part of SOC. This > driver takes care of all the PHY functionality apart from comparator. > @@ -30,7 +40,7 @@ config OMAP_USB2 > config OMAP_PIPE3 > tristate "OMAP PIPE3 PHY Driver" > select GENERIC_PHY > - select OMAP_CONTROL_USB > + select OMAP_CONTROL_PHY > help > Enable this to support the PIPE3 PHY that is part of SOC. This > driver takes care of all the PHY functionality apart from comparator. > diff --git a/drivers/phy/Makefile b/drivers/phy/Makefile > index 48bf9f2..f0127f6 100644 > --- a/drivers/phy/Makefile > +++ b/drivers/phy/Makefile > @@ -3,6 +3,7 @@ > # > > obj-$(CONFIG_GENERIC_PHY) += phy-core.o > +obj-$(CONFIG_OMAP_CONTROL_PHY) += phy-omap-control.o > obj-$(CONFIG_OMAP_USB2) += phy-omap-usb2.o > obj-$(CONFIG_OMAP_PIPE3) += phy-omap-pipe3.o > obj-$(CONFIG_TWL4030_USB) += phy-twl4030-usb.o > diff --git a/drivers/usb/phy/phy-omap-control.c b/drivers/phy/phy-omap-control.c > similarity index 55% > rename from drivers/usb/phy/phy-omap-control.c > rename to drivers/phy/phy-omap-control.c > index 1a7e19a..ece3573 100644 > --- a/drivers/usb/phy/phy-omap-control.c > +++ b/drivers/phy/phy-omap-control.c > @@ -1,5 +1,5 @@ > /* > - * omap-control-usb.c - The USB part of control module. > + * phy-omap-control.c - The USB part of control module. > * > * Copyright (C) 2013 Texas Instruments Incorporated - http://www.ti.com > * This program is free software; you can redistribute it and/or modify > @@ -24,36 +24,36 @@ > #include <linux/err.h> > #include <linux/io.h> > #include <linux/clk.h> > -#include <linux/usb/omap_control_usb.h> > +#include <linux/phy/omap_control_phy.h> > <snip> > #ifdef CONFIG_OF > > -static const enum omap_control_usb_type omap4_data = OMAP_CTRL_TYPE_OMAP4; > -static const enum omap_control_usb_type usb2_data = OMAP_CTRL_TYPE_USB2; > -static const enum omap_control_usb_type usb3_data = OMAP_CTRL_TYPE_USB3; > -static const enum omap_control_usb_type dra7_data = OMAP_CTRL_TYPE_DRA7; > +static const enum omap_control_phy_type omap4_data = OMAP_CTRL_TYPE_OMAP4; > +static const enum omap_control_phy_type usb2_data = OMAP_CTRL_TYPE_USB2; > +static const enum omap_control_phy_type usb3_data = OMAP_CTRL_TYPE_USB3; > +static const enum omap_control_phy_type dra7_data = OMAP_CTRL_TYPE_DRA7; > > -static const struct of_device_id omap_control_usb_id_table[] = { > +static const struct of_device_id omap_control_phy_id_table[] = { > { > .compatible = "ti,omap4-control-usb", > .data = &omap4_data, > @@ -286,31 +286,31 @@ static const struct of_device_id omap_control_usb_id_table[] = { > }, > {}, > }; > -MODULE_DEVICE_TABLE(of, omap_control_usb_id_table); > +MODULE_DEVICE_TABLE(of, omap_control_phy_id_table); > #endif > > -static struct platform_driver omap_control_usb_driver = { > - .probe = omap_control_usb_probe, > +static struct platform_driver omap_control_phy_driver = { > + .probe = omap_control_phy_probe, > .driver = { > .name = "omap-control-usb", > .owner = THIS_MODULE, > - .of_match_table = of_match_ptr(omap_control_usb_id_table), > + .of_match_table = of_match_ptr(omap_control_phy_id_table), > }, > }; > > -static int __init omap_control_usb_init(void) > +static int __init omap_control_phy_init(void) > { > - return platform_driver_register(&omap_control_usb_driver); > + return platform_driver_register(&omap_control_phy_driver); > } > -subsys_initcall(omap_control_usb_init); > +subsys_initcall(omap_control_phy_init); Any specific reason for having this as subsys_initcall? If not then you can use module_platform_driver(). > > -static void __exit omap_control_usb_exit(void) > +static void __exit omap_control_phy_exit(void) > { > - platform_driver_unregister(&omap_control_usb_driver); > + platform_driver_unregister(&omap_control_phy_driver); > } > -module_exit(omap_control_usb_exit); > +module_exit(omap_control_phy_exit); > > -MODULE_ALIAS("platform: omap_control_usb"); > +MODULE_ALIAS("platform: omap_control_phy"); > MODULE_AUTHOR("Texas Instruments Inc."); > MODULE_DESCRIPTION("OMAP Control Module USB Driver"); > MODULE_LICENSE("GPL v2"); cheers, -roger -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html