From e3a335c2c434dda579398efb1fafe147102b650b Mon Sep 17 00:00:00 2001 From: Felix Fietkau Date: Mon, 11 Nov 2013 16:51:01 +0000 Subject: [PATCH] ixp4xx: fix usb on cambria boards by using the ehci-platform driver Signed-off-by: Felix Fietkau SVN-Revision: 38740 --- .../patches-3.10/190-cambria_support.patch | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/target/linux/ixp4xx/patches-3.10/190-cambria_support.patch b/target/linux/ixp4xx/patches-3.10/190-cambria_support.patch index 7698912ccefa..c3de81a11719 100644 --- a/target/linux/ixp4xx/patches-3.10/190-cambria_support.patch +++ b/target/linux/ixp4xx/patches-3.10/190-cambria_support.patch @@ -125,7 +125,7 @@ +subsys_initcall(cambria_pci_init); --- /dev/null +++ b/arch/arm/mach-ixp4xx/cambria-setup.c -@@ -0,0 +1,993 @@ +@@ -0,0 +1,1003 @@ +/* + * arch/arm/mach-ixp4xx/cambria-setup.c + * @@ -163,6 +163,7 @@ +#include +#include +#include ++#include + +#include +#include @@ -634,25 +635,34 @@ + +static u64 ehci_dma_mask = ~(u32)0; + ++static struct usb_ehci_pdata cambria_usb_pdata = { ++ .big_endian_desc = 1, ++ .big_endian_mmio = 1, ++ .has_tt = 1, ++ .caps_offset = 0x100, ++}; ++ +static struct platform_device cambria_usb0_device = { -+ .name = "ixp4xx-ehci", ++ .name = "ehci-platform", + .id = 0, + .resource = cambria_usb0_resources, + .num_resources = ARRAY_SIZE(cambria_usb0_resources), + .dev = { + .dma_mask = &ehci_dma_mask, + .coherent_dma_mask = 0xffffffff, ++ .platform_data = &cambria_usb_pdata, + }, +}; + +static struct platform_device cambria_usb1_device = { -+ .name = "ixp4xx-ehci", ++ .name = "ehci-platform", + .id = 1, + .resource = cambria_usb1_resources, + .num_resources = ARRAY_SIZE(cambria_usb1_resources), + .dev = { + .dma_mask = &ehci_dma_mask, + .coherent_dma_mask = 0xffffffff, ++ .platform_data = &cambria_usb_pdata, + }, +}; + -- 2.30.2