[PATCH 2/5] ARM: PXA: Zipit Z2: Add USB host and device support
From: zonque@gmail.com (Daniel Mack)
Date: 2012-10-28 22:58:21
On Oct 28, 2012 11:44 PM, "Vasily Khoruzhick" [off-list ref] wrote:
On Mon, Oct 29, 2012 at 12:59 AM, Marek Vasut [off-list ref] wrote:quoted
Dear Vasily Khoruzhick, missing commit message.OKquoted
quoted
Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com> --- arch/arm/mach-pxa/z2.c | 52 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+)diff --git a/arch/arm/mach-pxa/z2.c b/arch/arm/mach-pxa/z2.c index c97485f..ce90fa9 100644 --- a/arch/arm/mach-pxa/z2.c +++ b/arch/arm/mach-pxa/z2.c@@ -41,6 +41,9 @@ #include <linux/platform_data/mmc-pxamci.h> #include <linux/platform_data/keypad-pxa27x.h> #include <mach/pm.h> +#include <mach/pxa27x-udc.h> +#include <mach/udc.h> +#include <linux/platform_data/usb-ohci-pxa27x.h> #include "generic.h" #include "devices.h"@@ -680,6 +683,52 @@ static void __init z2_pmic_init(void) static inline void z2_pmic_init(void) {} #endif
+/*************************************************************************
quoted
quoted
***** + * USB Switch +
**************************************************************************
quoted
quoted
****/ +static struct platform_device z2_usb_switch = { + .name = "z2-usb-switch", + .id = -1, +}; + +static void __init z2_usb_switch_init(void) +{ + platform_device_register(&z2_usb_switch); +} +
+/*************************************************************************
quoted
quoted
***** + * USB Gadget +
**************************************************************************
quoted
quoted
****/ +#if defined(CONFIG_USB_GADGET_PXA27X) \ + || defined(CONFIG_USB_GADGET_PXA27X_MODULE) +static int z2_udc_is_connected(void) +{ + return 1; +} + +static struct pxa2xx_udc_mach_info z2_udc_info __initdata = { + .udc_is_connected = z2_udc_is_connected, + .gpio_pullup = -1, +}; + +static void __init z2_udc_init(void) +{ + pxa_set_udc_info(&z2_udc_info); +} +#else +static inline void z2_udc_init(void) {} +#endifWe really should work on the DT here.Any volunteers? :) It requires huge amount of work,
Well, it's actually quite straight forward. With the changes that got merged to 3.7, pxa3xx platforms boot, and I also ported some pxa specific peripheral drivers that should work for both 2xx and 3xx. Adding CPU support for 27x should also just be a matter of some extra lines. So I would clearly say you should give the DT approach a try first and see which bits are missing. And I would vote for not taking any new features for the legay board support files but just bugfixes.
and right now my goal is to get every piece of Z2 HW working with vanilla kernel, before those
changes
are lost in my github repo. I see no advantages in moving Z2 to DT except self-education. I'm OK with DT, but it needs some time. Let's get non-DT version working properly first.
At least there is a reference :-) For mainline though, things should be done right in the first place. Daniel
quoted
quoted
+/*************************************************************************
quoted
quoted
***** + * USB Host (OHCI) +
**************************************************************************
quoted
quoted
****/ +static struct pxaohci_platform_data z2_ohci_platform_data = { + .port_mode = PMM_PERPORT_MODE, + .flags = ENABLE_PORT2 | NO_OC_PROTECTION, + .power_on_delay = 10, + .power_budget = 500, +}; + #ifdef CONFIG_PM static void z2_power_off(void) {@@ -705,10 +754,12 @@ static void __init z2_init(void) pxa_set_ffuart_info(NULL); pxa_set_btuart_info(NULL); pxa_set_stuart_info(NULL); + pxa_set_ohci_info(&z2_ohci_platform_data); z2_lcd_init(); z2_mmc_init(); z2_mkp_init(); + z2_udc_init();This patch adds _host_ ? So why do you have udc in here ?Both, host and device.quoted
Besides, pxa_set_ohci_info() should also be wrapped in some
z2_uhc_init()
OKquoted
quoted
z2_i2c_init(); z2_spi_init(); z2_nor_init();@@ -716,6 +767,7 @@ static void __init z2_init(void) z2_leds_init(); z2_keys_init(); z2_pmic_init(); + z2_usb_switch_init(); pm_power_off = z2_power_off; }Best regards, Marek VasutRegards Vasily _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel at lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20121028/5f3462f4/attachment-0001.html>