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 <kis...@ti.com>
> ---
>  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 linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to