diff options
author | Koen Kooi <koen@openembedded.org> | 2008-01-28 11:27:21 +0000 |
---|---|---|
committer | Koen Kooi <koen@openembedded.org> | 2008-01-28 11:27:21 +0000 |
commit | 43f3297970d794c9720998ea07ad45d57b371b71 (patch) | |
tree | 2ebc3bffa3a50477a83cbf3b9a2b14afe4638e58 /packages/linux/linux-ezx-2.6.24/patches/a1200-pcap.patch | |
parent | 85b5683120b7aa53f10639b4356ead1f1c0d8d47 (diff) |
linux-ezx: add 2.6.24
Diffstat (limited to 'packages/linux/linux-ezx-2.6.24/patches/a1200-pcap.patch')
-rw-r--r-- | packages/linux/linux-ezx-2.6.24/patches/a1200-pcap.patch | 66 |
1 files changed, 66 insertions, 0 deletions
diff --git a/packages/linux/linux-ezx-2.6.24/patches/a1200-pcap.patch b/packages/linux/linux-ezx-2.6.24/patches/a1200-pcap.patch new file mode 100644 index 0000000000..c725886630 --- /dev/null +++ b/packages/linux/linux-ezx-2.6.24/patches/a1200-pcap.patch @@ -0,0 +1,66 @@ +Index: linux-2.6.23/arch/arm/mach-pxa/ezx-a1200.c +=================================================================== +--- linux-2.6.23.orig/arch/arm/mach-pxa/ezx-a1200.c ++++ linux-2.6.23/arch/arm/mach-pxa/ezx-a1200.c +@@ -19,6 +19,7 @@ + #include <asm/arch/pxa-regs.h> + #include <asm/arch/pxafb.h> + #include <asm/arch/ezx.h> ++#include <asm/arch/ezx-pcap.h> + + #include "generic.h" + +@@ -48,7 +49,53 @@ + .pxafb_lcd_power = &ezx_lcd_power, + }; + ++/* PCAP */ ++static int a1200_pcap_init(void) ++{ ++ /* FIXME */ ++ ezx_pcap_write(PCAP_REG_INT_SEL, 0x0); /* wrong */ ++ ezx_pcap_write(PCAP_REG_SWCTRL, 0x2ee6); /* partially wrong */ ++ ezx_pcap_write(PCAP_REG_VREG1, 0x15778e3); /* wrong */ ++ ezx_pcap_write(PCAP_REG_VREG2, 0x810234); /* partially wrong */ ++ ezx_pcap_write(PCAP_REG_AUXVREG, 0x1024bec); /* wrong */ ++ ezx_pcap_write(PCAP_REG_PWR, 0x94108); /* partially wrong */ ++ ezx_pcap_write(PCAP_REG_AUXVREG_MASK, 0x214d48); /* wrong */ ++ ezx_pcap_write(PCAP_REG_BUSCTRL, 0x2a0); /* wrong */ ++ ezx_pcap_write(PCAP_REG_LOWPWR, 0x1d9610c); ++ ezx_pcap_write(PCAP_REG_PERIPH, 0x0); /* wrong */ ++ ezx_pcap_write(PCAP_REG_GP, 0x107); /* probably unnecessary */ ++ ++ return 0; ++} ++ ++static struct pcap_platform_data a1200_pcap_platform_data = { ++ .port = 1, ++ .cs = GPIO_SPI_CE, ++ .flags = PCAP_CS_AH | PCAP_MCI_TF, ++ .clk = 1, ++ .init = a1200_pcap_init, ++}; ++ ++static struct resource a1200_pcap_resources[] = { ++ [0] = { ++ .start = IRQ_GPIO1, ++ .end = IRQ_GPIO1, ++ .flags = IORESOURCE_IRQ, ++ }, ++}; ++ ++struct platform_device a1200_pcap_device = { ++ .name = "ezx-pcap", ++ .id = -1, ++ .num_resources = ARRAY_SIZE(a1200_pcap_resources), ++ .resource = a1200_pcap_resources, ++ .dev = { ++ .platform_data = &a1200_pcap_platform_data, ++ }, ++}; ++ + static struct platform_device *devices[] __initdata = { ++ &a1200_pcap_device, + }; + + static void __init a1200_init(void) |