Re: [PATCH 01/28] OMAP3: PM: GPMC context save/restore

2009-10-03 Thread Nishanth Menon
Kevin Hilman said the following on 10/01/2009 06:58 PM:
 From: Rajendra Nayak rna...@ti.com

 This patch adds the context save restore functions for GPMC

 Signed-off-by: Rajendra Nayak rna...@ti.com
 ---
  arch/arm/mach-omap2/gpmc.c |   93 
 
  arch/arm/plat-omap/include/mach/gpmc.h |3 +
  2 files changed, 96 insertions(+), 0 deletions(-)

 diff --git a/arch/arm/mach-omap2/gpmc.c b/arch/arm/mach-omap2/gpmc.c
 index 1587682..86ea936 100644
 --- a/arch/arm/mach-omap2/gpmc.c
 +++ b/arch/arm/mach-omap2/gpmc.c
 @@ -62,10 +62,38 @@
  #define ENABLE_PREFETCH  (0x1  7)
  #define DMA_MPU_MODE 2
  
 +/* Structure to save gpmc cs context */
 +struct gpmc_cs_config {
 + u32 config1;
 + u32 config2;
 + u32 config3;
 + u32 config4;
 + u32 config5;
 + u32 config6;
 + u32 config7;
 + int is_valid;
 +};
 +
 +/*
 + * Structure to save/restore gpmc context
 + * to support core off on OMAP3
 + */
 +struct omap3_gpmc_regs {
 + u32 sysconfig;
 + u32 irqenable;
 + u32 timeout_ctrl;
 + u32 config;
 + u32 prefetch_config1;
 + u32 prefetch_config2;
 + u32 prefetch_control;
 + struct gpmc_cs_config cs_context[GPMC_CS_NUM];
 +};
 +
  static struct resource   gpmc_mem_root;
  static struct resource   gpmc_cs_mem[GPMC_CS_NUM];
  static DEFINE_SPINLOCK(gpmc_mem_lock);
  static unsigned  gpmc_cs_map;
 +static struct omap3_gpmc_regs gpmc_context;
  
  static void __iomem *gpmc_base;
  
 @@ -516,3 +544,68 @@ void __init gpmc_init(void)
   gpmc_write_reg(GPMC_SYSCONFIG, l);
   gpmc_mem_init();
  }
 +
 +#ifdef CONFIG_ARCH_OMAP3
   
apologies if this is a dumb question - why is this under #ifdef - if
the save save restore structures are not under #ifdef?
 +void omap3_gpmc_save_context()
 +{
 + int i;
 + gpmc_context.sysconfig = gpmc_read_reg(GPMC_SYSCONFIG);
 + gpmc_context.irqenable = gpmc_read_reg(GPMC_IRQENABLE);
 + gpmc_context.timeout_ctrl = gpmc_read_reg(GPMC_TIMEOUT_CONTROL);
 + gpmc_context.config = gpmc_read_reg(GPMC_CONFIG);
 + gpmc_context.prefetch_config1 = gpmc_read_reg(GPMC_PREFETCH_CONFIG1);
 + gpmc_context.prefetch_config2 = gpmc_read_reg(GPMC_PREFETCH_CONFIG2);
 + gpmc_context.prefetch_control = gpmc_read_reg(GPMC_PREFETCH_CONTROL);
 + for (i = 0; i  GPMC_CS_NUM; i++) {
 + gpmc_context.cs_context[i].is_valid =
 + (gpmc_cs_read_reg(i, GPMC_CS_CONFIG7))
 +  GPMC_CONFIG7_CSVALID;
 + if (gpmc_context.cs_context[i].is_valid) {
 + gpmc_context.cs_context[i].config1 =
 + gpmc_cs_read_reg(i, GPMC_CS_CONFIG1);
 + gpmc_context.cs_context[i].config2 =
 + gpmc_cs_read_reg(i, GPMC_CS_CONFIG2);
 + gpmc_context.cs_context[i].config3 =
 + gpmc_cs_read_reg(i, GPMC_CS_CONFIG3);
 + gpmc_context.cs_context[i].config4 =
 + gpmc_cs_read_reg(i, GPMC_CS_CONFIG4);
 + gpmc_context.cs_context[i].config5 =
 + gpmc_cs_read_reg(i, GPMC_CS_CONFIG5);
 + gpmc_context.cs_context[i].config6 =
 + gpmc_cs_read_reg(i, GPMC_CS_CONFIG6);
 + gpmc_context.cs_context[i].config7 =
 + gpmc_cs_read_reg(i, GPMC_CS_CONFIG7);
 + }
   
here is a theoretical bug:
1: GPMC, 1, 2, 3 4 5 configured 6 7 not configured.
2. Save and restore 1: save and restore variables which are static will
contain 1-5 and not 67
3. next I disable 2,3
3. save will save 1,4,5 BUT my variable will contain 1,2,3,4,5 -
restore will rename 2,3 (which I did not intend)..

Regards,
Nishanth Menon
--
To unsubscribe from this list: send the line unsubscribe linux-omap in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH 02/28] OMAP3: PM: GPIO context save/restore

2009-10-03 Thread Nishanth Menon
Kevin Hilman said the following on 10/01/2009 06:58 PM:
 From: Rajendra Nayak rna...@ti.com

 Signed-off-by: Rajendra Nayak rna...@ti.com
 ---
  arch/arm/plat-omap/gpio.c  |   92 
 
  arch/arm/plat-omap/include/mach/gpio.h |3 +-
  2 files changed, 94 insertions(+), 1 deletions(-)

 diff --git a/arch/arm/plat-omap/gpio.c b/arch/arm/plat-omap/gpio.c
 index b0c7361..9850ade 100644
 --- a/arch/arm/plat-omap/gpio.c
 +++ b/arch/arm/plat-omap/gpio.c
 +
 +/* restore the required registers of bank 2-6 */
 +void omap3_gpio_restore_context(void)
 +{
 + int i;
 + for (i = 1; i  gpio_bank_count; i++) {
 + struct gpio_bank *bank = gpio_bank[i];
 + __raw_writel(gpio_context[i].sysconfig,
 + bank-base + OMAP24XX_GPIO_SYSCONFIG);
 + __raw_writel(gpio_context[i].irqenable1,
 + bank-base + OMAP24XX_GPIO_IRQENABLE1);
 + __raw_writel(gpio_context[i].irqenable2,
 + bank-base + OMAP24XX_GPIO_IRQENABLE2);
   
do you want to write to the IRQENABLE register even before configuring
the rest of the registers (such as data direction etc?
usually my understanding was:
configure the device,
enable the irq..

Regards,
Nishanth Menon
--
To unsubscribe from this list: send the line unsubscribe linux-omap in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Question on OPP table handling

2009-10-03 Thread Nishanth Menon
Sanjeev Premi said the following on 10/01/2009 01:03 PM:
 +struct omap_opp omap3_mpu_rate_table[] = {
 + {0, 0, 0},
 + /*OPP1*/
 + {S125M, VDD1_OPP1, 0x1E},
 + /*OPP2*/
 + {S250M, VDD1_OPP2, 0x26},
 + /*OPP3*/
 + {S500M, VDD1_OPP3, 0x30},
 + /*OPP4*/
 + {S550M, VDD1_OPP4, 0x36},
 + /*OPP5*/
 + {S600M, VDD1_OPP5, 0x3C},
 +};
   
For those involved,
if we wanted to convert omap3_mpu_table[] into *omap3_mpu_table so that
we dynamically initialize it based on cpu type - what would be the
recommendations?
Regards,
Nishanth Menon

--
To unsubscribe from this list: send the line unsubscribe linux-omap in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH 6/8] omapfb: Condition mutex acquisition

2009-10-03 Thread Cory Maccarrone
On Fri, Oct 2, 2009 at 3:44 PM, Tony Lindgren t...@atomide.com wrote:

 From: Sergio Aguirre saagui...@ti.com

 This fixes a bug introduced by this commit ID:

  commit 537a1bf059fa312355696fa6db80726e655e7f17
  Author: Krzysztof Helt krzysztof...@wp.pl
  Date:   Tue Jun 30 11:41:29 2009 -0700

    fbdev: add mutex for fb_mmap locking

 In which a mutex was added when changing smem_start and smem_len fields,
 so the mutex inside the fb_mmap() call is actually used.

 The problem was that set_fb_fix, which modifies the above 2 fields,
 was called before and after registering the framebuffer,
 which when used before registration, lead to a failed attempt to
 use an uninitialized mutex.

 Solution: Don't use mutex before framebuffer registration.

 Signed-off-by: Sergio Aguirre saagui...@ti.com
 Acked-by: Tomi Valkeinen tomi.valkei...@nokia.com
 Acked-by: Imre Deak imre.d...@nokia.com
 Signed-off-by: Tony Lindgren t...@atomide.com
 ---
  drivers/video/omap/omapfb_main.c |   22 ++
  1 files changed, 14 insertions(+), 8 deletions(-)

 diff --git a/drivers/video/omap/omapfb_main.c 
 b/drivers/video/omap/omapfb_main.c
 index 125e605..0d0c8c8 100644
 --- a/drivers/video/omap/omapfb_main.c
 +++ b/drivers/video/omap/omapfb_main.c
 @@ -393,7 +393,7 @@ static void omapfb_sync(struct fb_info *fbi)
  * Set fb_info.fix fields and also updates fbdev.
  * When calling this fb_info.var must be set up already.
  */
 -static void set_fb_fix(struct fb_info *fbi)
 +static void set_fb_fix(struct fb_info *fbi, int from_init)
  {
        struct fb_fix_screeninfo *fix = fbi-fix;
        struct fb_var_screeninfo *var = fbi-var;
 @@ -403,10 +403,16 @@ static void set_fb_fix(struct fb_info *fbi)

        rg = plane-fbdev-mem_desc.region[plane-idx];
        fbi-screen_base        = rg-vaddr;
 -       mutex_lock(fbi-mm_lock);
 -       fix-smem_start         = rg-paddr;
 -       fix-smem_len           = rg-size;
 -       mutex_unlock(fbi-mm_lock);
 +
 +       if (!from_init) {
 +               mutex_lock(fbi-mm_lock);
 +               fix-smem_start         = rg-paddr;
 +               fix-smem_len           = rg-size;
 +               mutex_unlock(fbi-mm_lock);
 +       } else {
 +               fix-smem_start         = rg-paddr;
 +               fix-smem_len           = rg-size;
 +       }

        fix-type = FB_TYPE_PACKED_PIXELS;
        bpp = var-bits_per_pixel;
 @@ -704,7 +710,7 @@ static int omapfb_set_par(struct fb_info *fbi)
        int r = 0;

        omapfb_rqueue_lock(fbdev);
 -       set_fb_fix(fbi);
 +       set_fb_fix(fbi, 0);
        r = ctrl_change_mode(fbi);
        omapfb_rqueue_unlock(fbdev);

 @@ -904,7 +910,7 @@ static int omapfb_setup_mem(struct fb_info *fbi, struct 
 omapfb_mem_info *mi)
                if (old_size != size) {
                        if (size) {
                                memcpy(fbi-var, new_var, sizeof(fbi-var));
 -                               set_fb_fix(fbi);
 +                               set_fb_fix(fbi, 0);
                        } else {
                                /*
                                 * Set these explicitly to indicate that the
 @@ -1504,7 +1510,7 @@ static int fbinfo_init(struct omapfb_device *fbdev, 
 struct fb_info *info)
        var-bits_per_pixel = fbdev-panel-bpp;

        set_fb_var(info, var);
 -       set_fb_fix(info);
 +       set_fb_fix(info, 1);

        r = fb_alloc_cmap(info-cmap, 16, 0);
        if (r != 0)

 --
 To unsubscribe from this list: send the line unsubscribe linux-omap in
 the body of a message to majord...@vger.kernel.org
 More majordomo info at  http://vger.kernel.org/majordomo-info.html

Tested-by: Cory Maccarrone darkstar6...@gmail.com

This patch works beautifully for omap850-based devices.  I need only
add a board file and LCD resolution parameters, and I get a fully
working framebuffer.

I have tested with linux-omap master (commit
6469d1c660f8751ff39836c81970cdbe46953057), adding only the board/lcd
files on HTC Herald.

- Cory
--
To unsubscribe from this list: send the line unsubscribe linux-omap in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH] [OMAP1] htcherald: Add board support and LCD config for HTC Herald

2009-10-03 Thread Cory Maccarrone
I have added a board support file, along with corresponding LCD configuration
for the HTC Herald series of OMAP850-based smartphones (T-Mobile Wing, etc).

Signed-off-by: Cory Maccarrone darkstar6...@gmail.com
---
 arch/arm/configs/htcherald_defconfig  | 1146 +
 arch/arm/mach-omap1/Kconfig   |6 +
 arch/arm/mach-omap1/Makefile  |1 +
 arch/arm/mach-omap1/board-htcherald.c |  233 +++
 drivers/video/omap/Makefile   |1 +
 drivers/video/omap/lcd_htcherald.c|  124 
 6 files changed, 1511 insertions(+), 0 deletions(-)
 create mode 100644 arch/arm/configs/htcherald_defconfig
 create mode 100644 arch/arm/mach-omap1/board-htcherald.c
 create mode 100644 drivers/video/omap/lcd_htcherald.c

diff --git a/arch/arm/configs/htcherald_defconfig
b/arch/arm/configs/htcherald_defconfig
new file mode 100644
index 000..9ec9c26
--- /dev/null
+++ b/arch/arm/configs/htcherald_defconfig
@@ -0,0 +1,1146 @@
+#
+# Automatically generated make config: don't edit
+# Linux kernel version: 2.6.32-rc2
+# Sat Oct  3 12:16:22 2009
+#
+CONFIG_ARM=y
+CONFIG_SYS_SUPPORTS_APM_EMULATION=y
+CONFIG_GENERIC_GPIO=y
+CONFIG_GENERIC_TIME=y
+CONFIG_GENERIC_CLOCKEVENTS=y
+CONFIG_GENERIC_HARDIRQS=y
+CONFIG_STACKTRACE_SUPPORT=y
+CONFIG_HAVE_LATENCYTOP_SUPPORT=y
+CONFIG_LOCKDEP_SUPPORT=y
+CONFIG_TRACE_IRQFLAGS_SUPPORT=y
+CONFIG_HARDIRQS_SW_RESEND=y
+CONFIG_GENERIC_IRQ_PROBE=y
+CONFIG_RWSEM_GENERIC_SPINLOCK=y
+CONFIG_ARCH_HAS_CPUFREQ=y
+CONFIG_GENERIC_HWEIGHT=y
+CONFIG_GENERIC_CALIBRATE_DELAY=y
+CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
+CONFIG_VECTORS_BASE=0x
+CONFIG_DEFCONFIG_LIST=/lib/modules/$UNAME_RELEASE/.config
+CONFIG_CONSTRUCTORS=y
+
+#
+# General setup
+#
+CONFIG_EXPERIMENTAL=y
+CONFIG_BROKEN_ON_SMP=y
+CONFIG_LOCK_KERNEL=y
+CONFIG_INIT_ENV_ARG_LIMIT=32
+CONFIG_LOCALVERSION=
+CONFIG_LOCALVERSION_AUTO=y
+CONFIG_SWAP=y
+CONFIG_SYSVIPC=y
+CONFIG_SYSVIPC_SYSCTL=y
+# CONFIG_POSIX_MQUEUE is not set
+# CONFIG_BSD_PROCESS_ACCT is not set
+# CONFIG_TASKSTATS is not set
+# CONFIG_AUDIT is not set
+
+#
+# RCU Subsystem
+#
+CONFIG_TREE_RCU=y
+# CONFIG_TREE_PREEMPT_RCU is not set
+# CONFIG_RCU_TRACE is not set
+CONFIG_RCU_FANOUT=32
+# CONFIG_RCU_FANOUT_EXACT is not set
+# CONFIG_TREE_RCU_TRACE is not set
+# CONFIG_IKCONFIG is not set
+CONFIG_LOG_BUF_SHIFT=14
+# CONFIG_GROUP_SCHED is not set
+# CONFIG_CGROUPS is not set
+# CONFIG_SYSFS_DEPRECATED_V2 is not set
+# CONFIG_RELAY is not set
+CONFIG_NAMESPACES=y
+# CONFIG_UTS_NS is not set
+# CONFIG_IPC_NS is not set
+# CONFIG_USER_NS is not set
+# CONFIG_PID_NS is not set
+# CONFIG_NET_NS is not set
+CONFIG_BLK_DEV_INITRD=y
+CONFIG_INITRAMFS_SOURCE=
+CONFIG_RD_GZIP=y
+CONFIG_RD_BZIP2=y
+CONFIG_RD_LZMA=y
+CONFIG_CC_OPTIMIZE_FOR_SIZE=y
+CONFIG_SYSCTL=y
+CONFIG_ANON_INODES=y
+# CONFIG_EMBEDDED is not set
+CONFIG_UID16=y
+CONFIG_SYSCTL_SYSCALL=y
+CONFIG_KALLSYMS=y
+# CONFIG_KALLSYMS_EXTRA_PASS is not set
+CONFIG_HOTPLUG=y
+CONFIG_PRINTK=y
+CONFIG_BUG=y
+CONFIG_ELF_CORE=y
+CONFIG_BASE_FULL=y
+CONFIG_FUTEX=y
+CONFIG_EPOLL=y
+CONFIG_SIGNALFD=y
+CONFIG_TIMERFD=y
+CONFIG_EVENTFD=y
+CONFIG_SHMEM=y
+CONFIG_AIO=y
+
+#
+# Kernel Performance Events And Counters
+#
+CONFIG_VM_EVENT_COUNTERS=y
+CONFIG_COMPAT_BRK=y
+CONFIG_SLAB=y
+# CONFIG_SLUB is not set
+# CONFIG_SLOB is not set
+# CONFIG_PROFILING is not set
+CONFIG_HAVE_OPROFILE=y
+# CONFIG_KPROBES is not set
+CONFIG_HAVE_KPROBES=y
+CONFIG_HAVE_KRETPROBES=y
+CONFIG_HAVE_CLK=y
+
+#
+# GCOV-based kernel profiling
+#
+# CONFIG_SLOW_WORK is not set
+CONFIG_HAVE_GENERIC_DMA_COHERENT=y
+CONFIG_SLABINFO=y
+CONFIG_RT_MUTEXES=y
+CONFIG_BASE_SMALL=0
+CONFIG_MODULES=y
+# CONFIG_MODULE_FORCE_LOAD is not set
+CONFIG_MODULE_UNLOAD=y
+# CONFIG_MODULE_FORCE_UNLOAD is not set
+# CONFIG_MODVERSIONS is not set
+# CONFIG_MODULE_SRCVERSION_ALL is not set
+CONFIG_BLOCK=y
+CONFIG_LBDAF=y
+# CONFIG_BLK_DEV_BSG is not set
+# CONFIG_BLK_DEV_INTEGRITY is not set
+
+#
+# IO Schedulers
+#
+CONFIG_IOSCHED_NOOP=y
+CONFIG_IOSCHED_AS=y
+CONFIG_IOSCHED_DEADLINE=y
+CONFIG_IOSCHED_CFQ=y
+# CONFIG_DEFAULT_AS is not set
+# CONFIG_DEFAULT_DEADLINE is not set
+CONFIG_DEFAULT_CFQ=y
+# CONFIG_DEFAULT_NOOP is not set
+CONFIG_DEFAULT_IOSCHED=cfq
+CONFIG_FREEZER=y
+
+#
+# System Type
+#
+CONFIG_MMU=y
+# CONFIG_ARCH_AAEC2000 is not set
+# CONFIG_ARCH_INTEGRATOR is not set
+# CONFIG_ARCH_REALVIEW is not set
+# CONFIG_ARCH_VERSATILE is not set
+# CONFIG_ARCH_AT91 is not set
+# CONFIG_ARCH_CLPS711X is not set
+# CONFIG_ARCH_GEMINI is not set
+# CONFIG_ARCH_EBSA110 is not set
+# CONFIG_ARCH_EP93XX is not set
+# CONFIG_ARCH_FOOTBRIDGE is not set
+# CONFIG_ARCH_MXC is not set
+# CONFIG_ARCH_STMP3XXX is not set
+# CONFIG_ARCH_NETX is not set
+# CONFIG_ARCH_H720X is not set
+# CONFIG_ARCH_NOMADIK is not set
+# CONFIG_ARCH_IOP13XX is not set
+# CONFIG_ARCH_IOP32X is not set
+# CONFIG_ARCH_IOP33X is not set
+# CONFIG_ARCH_IXP23XX is not set
+# CONFIG_ARCH_IXP2000 is not set
+# CONFIG_ARCH_IXP4XX is not set
+# CONFIG_ARCH_L7200 is not set
+# 

Re: [PATCH] [OMAP1] htcherald: Add board support and LCD config for HTC Herald

2009-10-03 Thread Cory Maccarrone
I just became aware that I was missing some key header information, so
I have a revised patch with the proper information (patch to follow
next).

- Cory

On Sat, Oct 3, 2009 at 1:20 PM, Cory Maccarrone darkstar6...@gmail.com wrote:
 I have added a board support file, along with corresponding LCD configuration
 for the HTC Herald series of OMAP850-based smartphones (T-Mobile Wing, etc).

 Signed-off-by: Cory Maccarrone darkstar6...@gmail.com
 ---
  arch/arm/configs/htcherald_defconfig  | 1146 
 +
  arch/arm/mach-omap1/Kconfig           |    6 +
  arch/arm/mach-omap1/Makefile          |    1 +
  arch/arm/mach-omap1/board-htcherald.c |  233 +++
  drivers/video/omap/Makefile           |    1 +
  drivers/video/omap/lcd_htcherald.c    |  124 
  6 files changed, 1511 insertions(+), 0 deletions(-)
  create mode 100644 arch/arm/configs/htcherald_defconfig
  create mode 100644 arch/arm/mach-omap1/board-htcherald.c
  create mode 100644 drivers/video/omap/lcd_htcherald.c

 diff --git a/arch/arm/configs/htcherald_defconfig
 b/arch/arm/configs/htcherald_defconfig
 new file mode 100644
 index 000..9ec9c26
 --- /dev/null
 +++ b/arch/arm/configs/htcherald_defconfig
 @@ -0,0 +1,1146 @@
 +#
 +# Automatically generated make config: don't edit
 +# Linux kernel version: 2.6.32-rc2
 +# Sat Oct  3 12:16:22 2009
 +#
 +CONFIG_ARM=y
 +CONFIG_SYS_SUPPORTS_APM_EMULATION=y
 +CONFIG_GENERIC_GPIO=y
 +CONFIG_GENERIC_TIME=y
 +CONFIG_GENERIC_CLOCKEVENTS=y
 +CONFIG_GENERIC_HARDIRQS=y
 +CONFIG_STACKTRACE_SUPPORT=y
 +CONFIG_HAVE_LATENCYTOP_SUPPORT=y
 +CONFIG_LOCKDEP_SUPPORT=y
 +CONFIG_TRACE_IRQFLAGS_SUPPORT=y
 +CONFIG_HARDIRQS_SW_RESEND=y
 +CONFIG_GENERIC_IRQ_PROBE=y
 +CONFIG_RWSEM_GENERIC_SPINLOCK=y
 +CONFIG_ARCH_HAS_CPUFREQ=y
 +CONFIG_GENERIC_HWEIGHT=y
 +CONFIG_GENERIC_CALIBRATE_DELAY=y
 +CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
 +CONFIG_VECTORS_BASE=0x
 +CONFIG_DEFCONFIG_LIST=/lib/modules/$UNAME_RELEASE/.config
 +CONFIG_CONSTRUCTORS=y
 +
 +#
 +# General setup
 +#
 +CONFIG_EXPERIMENTAL=y
 +CONFIG_BROKEN_ON_SMP=y
 +CONFIG_LOCK_KERNEL=y
 +CONFIG_INIT_ENV_ARG_LIMIT=32
 +CONFIG_LOCALVERSION=
 +CONFIG_LOCALVERSION_AUTO=y
 +CONFIG_SWAP=y
 +CONFIG_SYSVIPC=y
 +CONFIG_SYSVIPC_SYSCTL=y
 +# CONFIG_POSIX_MQUEUE is not set
 +# CONFIG_BSD_PROCESS_ACCT is not set
 +# CONFIG_TASKSTATS is not set
 +# CONFIG_AUDIT is not set
 +
 +#
 +# RCU Subsystem
 +#
 +CONFIG_TREE_RCU=y
 +# CONFIG_TREE_PREEMPT_RCU is not set
 +# CONFIG_RCU_TRACE is not set
 +CONFIG_RCU_FANOUT=32
 +# CONFIG_RCU_FANOUT_EXACT is not set
 +# CONFIG_TREE_RCU_TRACE is not set
 +# CONFIG_IKCONFIG is not set
 +CONFIG_LOG_BUF_SHIFT=14
 +# CONFIG_GROUP_SCHED is not set
 +# CONFIG_CGROUPS is not set
 +# CONFIG_SYSFS_DEPRECATED_V2 is not set
 +# CONFIG_RELAY is not set
 +CONFIG_NAMESPACES=y
 +# CONFIG_UTS_NS is not set
 +# CONFIG_IPC_NS is not set
 +# CONFIG_USER_NS is not set
 +# CONFIG_PID_NS is not set
 +# CONFIG_NET_NS is not set
 +CONFIG_BLK_DEV_INITRD=y
 +CONFIG_INITRAMFS_SOURCE=
 +CONFIG_RD_GZIP=y
 +CONFIG_RD_BZIP2=y
 +CONFIG_RD_LZMA=y
 +CONFIG_CC_OPTIMIZE_FOR_SIZE=y
 +CONFIG_SYSCTL=y
 +CONFIG_ANON_INODES=y
 +# CONFIG_EMBEDDED is not set
 +CONFIG_UID16=y
 +CONFIG_SYSCTL_SYSCALL=y
 +CONFIG_KALLSYMS=y
 +# CONFIG_KALLSYMS_EXTRA_PASS is not set
 +CONFIG_HOTPLUG=y
 +CONFIG_PRINTK=y
 +CONFIG_BUG=y
 +CONFIG_ELF_CORE=y
 +CONFIG_BASE_FULL=y
 +CONFIG_FUTEX=y
 +CONFIG_EPOLL=y
 +CONFIG_SIGNALFD=y
 +CONFIG_TIMERFD=y
 +CONFIG_EVENTFD=y
 +CONFIG_SHMEM=y
 +CONFIG_AIO=y
 +
 +#
 +# Kernel Performance Events And Counters
 +#
 +CONFIG_VM_EVENT_COUNTERS=y
 +CONFIG_COMPAT_BRK=y
 +CONFIG_SLAB=y
 +# CONFIG_SLUB is not set
 +# CONFIG_SLOB is not set
 +# CONFIG_PROFILING is not set
 +CONFIG_HAVE_OPROFILE=y
 +# CONFIG_KPROBES is not set
 +CONFIG_HAVE_KPROBES=y
 +CONFIG_HAVE_KRETPROBES=y
 +CONFIG_HAVE_CLK=y
 +
 +#
 +# GCOV-based kernel profiling
 +#
 +# CONFIG_SLOW_WORK is not set
 +CONFIG_HAVE_GENERIC_DMA_COHERENT=y
 +CONFIG_SLABINFO=y
 +CONFIG_RT_MUTEXES=y
 +CONFIG_BASE_SMALL=0
 +CONFIG_MODULES=y
 +# CONFIG_MODULE_FORCE_LOAD is not set
 +CONFIG_MODULE_UNLOAD=y
 +# CONFIG_MODULE_FORCE_UNLOAD is not set
 +# CONFIG_MODVERSIONS is not set
 +# CONFIG_MODULE_SRCVERSION_ALL is not set
 +CONFIG_BLOCK=y
 +CONFIG_LBDAF=y
 +# CONFIG_BLK_DEV_BSG is not set
 +# CONFIG_BLK_DEV_INTEGRITY is not set
 +
 +#
 +# IO Schedulers
 +#
 +CONFIG_IOSCHED_NOOP=y
 +CONFIG_IOSCHED_AS=y
 +CONFIG_IOSCHED_DEADLINE=y
 +CONFIG_IOSCHED_CFQ=y
 +# CONFIG_DEFAULT_AS is not set
 +# CONFIG_DEFAULT_DEADLINE is not set
 +CONFIG_DEFAULT_CFQ=y
 +# CONFIG_DEFAULT_NOOP is not set
 +CONFIG_DEFAULT_IOSCHED=cfq
 +CONFIG_FREEZER=y
 +
 +#
 +# System Type
 +#
 +CONFIG_MMU=y
 +# CONFIG_ARCH_AAEC2000 is not set
 +# CONFIG_ARCH_INTEGRATOR is not set
 +# CONFIG_ARCH_REALVIEW is not set
 +# CONFIG_ARCH_VERSATILE is not set
 +# CONFIG_ARCH_AT91 is not set
 +# CONFIG_ARCH_CLPS711X is not set
 +# CONFIG_ARCH_GEMINI is not set
 +# CONFIG_ARCH_EBSA110 is not set
 +# CONFIG_ARCH_EP93XX is not set
 +# CONFIG_ARCH_FOOTBRIDGE is not 

Re: [PATCH] [OMAP1] htcherald: Add board support and LCD config for HTC Herald

2009-10-03 Thread Cory Maccarrone
I have added a board support file, along with corresponding LCD configuration
for the HTC Herald series of OMAP850-based smartphones (T-Mobile Wing, etc).

Signed-off-by: Cory Maccarrone darkstar6...@gmail.com
---
 arch/arm/configs/htcherald_defconfig  | 1146 +
 arch/arm/mach-omap1/Kconfig   |6 +
 arch/arm/mach-omap1/Makefile  |1 +
 arch/arm/mach-omap1/board-htcherald.c |  241 +++
 drivers/video/omap/Makefile   |1 +
 drivers/video/omap/lcd_htcherald.c|  129 
 6 files changed, 1524 insertions(+), 0 deletions(-)
 create mode 100644 arch/arm/configs/htcherald_defconfig
 create mode 100644 arch/arm/mach-omap1/board-htcherald.c
 create mode 100644 drivers/video/omap/lcd_htcherald.c

diff --git a/arch/arm/configs/htcherald_defconfig
b/arch/arm/configs/htcherald_defconfig
new file mode 100644
index 000..9ec9c26
--- /dev/null
+++ b/arch/arm/configs/htcherald_defconfig
@@ -0,0 +1,1146 @@
+#
+# Automatically generated make config: don't edit
+# Linux kernel version: 2.6.32-rc2
+# Sat Oct  3 12:16:22 2009
+#
+CONFIG_ARM=y
+CONFIG_SYS_SUPPORTS_APM_EMULATION=y
+CONFIG_GENERIC_GPIO=y
+CONFIG_GENERIC_TIME=y
+CONFIG_GENERIC_CLOCKEVENTS=y
+CONFIG_GENERIC_HARDIRQS=y
+CONFIG_STACKTRACE_SUPPORT=y
+CONFIG_HAVE_LATENCYTOP_SUPPORT=y
+CONFIG_LOCKDEP_SUPPORT=y
+CONFIG_TRACE_IRQFLAGS_SUPPORT=y
+CONFIG_HARDIRQS_SW_RESEND=y
+CONFIG_GENERIC_IRQ_PROBE=y
+CONFIG_RWSEM_GENERIC_SPINLOCK=y
+CONFIG_ARCH_HAS_CPUFREQ=y
+CONFIG_GENERIC_HWEIGHT=y
+CONFIG_GENERIC_CALIBRATE_DELAY=y
+CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
+CONFIG_VECTORS_BASE=0x
+CONFIG_DEFCONFIG_LIST=/lib/modules/$UNAME_RELEASE/.config
+CONFIG_CONSTRUCTORS=y
+
+#
+# General setup
+#
+CONFIG_EXPERIMENTAL=y
+CONFIG_BROKEN_ON_SMP=y
+CONFIG_LOCK_KERNEL=y
+CONFIG_INIT_ENV_ARG_LIMIT=32
+CONFIG_LOCALVERSION=
+CONFIG_LOCALVERSION_AUTO=y
+CONFIG_SWAP=y
+CONFIG_SYSVIPC=y
+CONFIG_SYSVIPC_SYSCTL=y
+# CONFIG_POSIX_MQUEUE is not set
+# CONFIG_BSD_PROCESS_ACCT is not set
+# CONFIG_TASKSTATS is not set
+# CONFIG_AUDIT is not set
+
+#
+# RCU Subsystem
+#
+CONFIG_TREE_RCU=y
+# CONFIG_TREE_PREEMPT_RCU is not set
+# CONFIG_RCU_TRACE is not set
+CONFIG_RCU_FANOUT=32
+# CONFIG_RCU_FANOUT_EXACT is not set
+# CONFIG_TREE_RCU_TRACE is not set
+# CONFIG_IKCONFIG is not set
+CONFIG_LOG_BUF_SHIFT=14
+# CONFIG_GROUP_SCHED is not set
+# CONFIG_CGROUPS is not set
+# CONFIG_SYSFS_DEPRECATED_V2 is not set
+# CONFIG_RELAY is not set
+CONFIG_NAMESPACES=y
+# CONFIG_UTS_NS is not set
+# CONFIG_IPC_NS is not set
+# CONFIG_USER_NS is not set
+# CONFIG_PID_NS is not set
+# CONFIG_NET_NS is not set
+CONFIG_BLK_DEV_INITRD=y
+CONFIG_INITRAMFS_SOURCE=
+CONFIG_RD_GZIP=y
+CONFIG_RD_BZIP2=y
+CONFIG_RD_LZMA=y
+CONFIG_CC_OPTIMIZE_FOR_SIZE=y
+CONFIG_SYSCTL=y
+CONFIG_ANON_INODES=y
+# CONFIG_EMBEDDED is not set
+CONFIG_UID16=y
+CONFIG_SYSCTL_SYSCALL=y
+CONFIG_KALLSYMS=y
+# CONFIG_KALLSYMS_EXTRA_PASS is not set
+CONFIG_HOTPLUG=y
+CONFIG_PRINTK=y
+CONFIG_BUG=y
+CONFIG_ELF_CORE=y
+CONFIG_BASE_FULL=y
+CONFIG_FUTEX=y
+CONFIG_EPOLL=y
+CONFIG_SIGNALFD=y
+CONFIG_TIMERFD=y
+CONFIG_EVENTFD=y
+CONFIG_SHMEM=y
+CONFIG_AIO=y
+
+#
+# Kernel Performance Events And Counters
+#
+CONFIG_VM_EVENT_COUNTERS=y
+CONFIG_COMPAT_BRK=y
+CONFIG_SLAB=y
+# CONFIG_SLUB is not set
+# CONFIG_SLOB is not set
+# CONFIG_PROFILING is not set
+CONFIG_HAVE_OPROFILE=y
+# CONFIG_KPROBES is not set
+CONFIG_HAVE_KPROBES=y
+CONFIG_HAVE_KRETPROBES=y
+CONFIG_HAVE_CLK=y
+
+#
+# GCOV-based kernel profiling
+#
+# CONFIG_SLOW_WORK is not set
+CONFIG_HAVE_GENERIC_DMA_COHERENT=y
+CONFIG_SLABINFO=y
+CONFIG_RT_MUTEXES=y
+CONFIG_BASE_SMALL=0
+CONFIG_MODULES=y
+# CONFIG_MODULE_FORCE_LOAD is not set
+CONFIG_MODULE_UNLOAD=y
+# CONFIG_MODULE_FORCE_UNLOAD is not set
+# CONFIG_MODVERSIONS is not set
+# CONFIG_MODULE_SRCVERSION_ALL is not set
+CONFIG_BLOCK=y
+CONFIG_LBDAF=y
+# CONFIG_BLK_DEV_BSG is not set
+# CONFIG_BLK_DEV_INTEGRITY is not set
+
+#
+# IO Schedulers
+#
+CONFIG_IOSCHED_NOOP=y
+CONFIG_IOSCHED_AS=y
+CONFIG_IOSCHED_DEADLINE=y
+CONFIG_IOSCHED_CFQ=y
+# CONFIG_DEFAULT_AS is not set
+# CONFIG_DEFAULT_DEADLINE is not set
+CONFIG_DEFAULT_CFQ=y
+# CONFIG_DEFAULT_NOOP is not set
+CONFIG_DEFAULT_IOSCHED=cfq
+CONFIG_FREEZER=y
+
+#
+# System Type
+#
+CONFIG_MMU=y
+# CONFIG_ARCH_AAEC2000 is not set
+# CONFIG_ARCH_INTEGRATOR is not set
+# CONFIG_ARCH_REALVIEW is not set
+# CONFIG_ARCH_VERSATILE is not set
+# CONFIG_ARCH_AT91 is not set
+# CONFIG_ARCH_CLPS711X is not set
+# CONFIG_ARCH_GEMINI is not set
+# CONFIG_ARCH_EBSA110 is not set
+# CONFIG_ARCH_EP93XX is not set
+# CONFIG_ARCH_FOOTBRIDGE is not set
+# CONFIG_ARCH_MXC is not set
+# CONFIG_ARCH_STMP3XXX is not set
+# CONFIG_ARCH_NETX is not set
+# CONFIG_ARCH_H720X is not set
+# CONFIG_ARCH_NOMADIK is not set
+# CONFIG_ARCH_IOP13XX is not set
+# CONFIG_ARCH_IOP32X is not set
+# CONFIG_ARCH_IOP33X is not set
+# CONFIG_ARCH_IXP23XX is not set
+# CONFIG_ARCH_IXP2000 is not set
+# CONFIG_ARCH_IXP4XX is not set
+# CONFIG_ARCH_L7200 is not set
+# 

Re: [PATCH] [OMAP1] htcherald: Add board support and LCD config for HTC Herald

2009-10-03 Thread michael

Hi,

Cory Maccarrone wrote:

I have added a board support file, along with corresponding LCD configuration
for the HTC Herald series of OMAP850-based smartphones (T-Mobile Wing, etc).

Signed-off-by: Cory Maccarrone darkstar6...@gmail.com
---
 arch/arm/configs/htcherald_defconfig  | 1146 +
 arch/arm/mach-omap1/Kconfig   |6 +
 arch/arm/mach-omap1/Makefile  |1 +
 arch/arm/mach-omap1/board-htcherald.c |  241 +++
 drivers/video/omap/Makefile   |1 +
 drivers/video/omap/lcd_htcherald.c|  129 
 6 files changed, 1524 insertions(+), 0 deletions(-)
 create mode 100644 arch/arm/configs/htcherald_defconfig
 create mode 100644 arch/arm/mach-omap1/board-htcherald.c
 create mode 100644 drivers/video/omap/lcd_htcherald.c

diff --git a/arch/arm/configs/htcherald_defconfig
b/arch/arm/configs/htcherald_defconfig
new file mode 100644
index 000..9ec9c26
--- /dev/null
+++ b/arch/arm/configs/htcherald_defconfig
@@ -0,0 +1,1146 @@
+#
+# Automatically generated make config: don't edit
+# Linux kernel version: 2.6.32-rc2
+# Sat Oct  3 12:16:22 2009
+#
+CONFIG_ARM=y
+CONFIG_SYS_SUPPORTS_APM_EMULATION=y
+CONFIG_GENERIC_GPIO=y
+CONFIG_GENERIC_TIME=y
+CONFIG_GENERIC_CLOCKEVENTS=y
+CONFIG_GENERIC_HARDIRQS=y
+CONFIG_STACKTRACE_SUPPORT=y
+CONFIG_HAVE_LATENCYTOP_SUPPORT=y
+CONFIG_LOCKDEP_SUPPORT=y
+CONFIG_TRACE_IRQFLAGS_SUPPORT=y
+CONFIG_HARDIRQS_SW_RESEND=y
+CONFIG_GENERIC_IRQ_PROBE=y
+CONFIG_RWSEM_GENERIC_SPINLOCK=y
+CONFIG_ARCH_HAS_CPUFREQ=y
+CONFIG_GENERIC_HWEIGHT=y
+CONFIG_GENERIC_CALIBRATE_DELAY=y
+CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
+CONFIG_VECTORS_BASE=0x
+CONFIG_DEFCONFIG_LIST=/lib/modules/$UNAME_RELEASE/.config
+CONFIG_CONSTRUCTORS=y
+
+#
+# General setup
+#
+CONFIG_EXPERIMENTAL=y
+CONFIG_BROKEN_ON_SMP=y
+CONFIG_LOCK_KERNEL=y
+CONFIG_INIT_ENV_ARG_LIMIT=32
+CONFIG_LOCALVERSION=
+CONFIG_LOCALVERSION_AUTO=y
+CONFIG_SWAP=y
+CONFIG_SYSVIPC=y
+CONFIG_SYSVIPC_SYSCTL=y
+# CONFIG_POSIX_MQUEUE is not set
+# CONFIG_BSD_PROCESS_ACCT is not set
+# CONFIG_TASKSTATS is not set
+# CONFIG_AUDIT is not set
+
+#
+# RCU Subsystem
+#
+CONFIG_TREE_RCU=y
+# CONFIG_TREE_PREEMPT_RCU is not set
+# CONFIG_RCU_TRACE is not set
+CONFIG_RCU_FANOUT=32
+# CONFIG_RCU_FANOUT_EXACT is not set
+# CONFIG_TREE_RCU_TRACE is not set
+# CONFIG_IKCONFIG is not set
+CONFIG_LOG_BUF_SHIFT=14
+# CONFIG_GROUP_SCHED is not set
+# CONFIG_CGROUPS is not set
+# CONFIG_SYSFS_DEPRECATED_V2 is not set
+# CONFIG_RELAY is not set
+CONFIG_NAMESPACES=y
+# CONFIG_UTS_NS is not set
+# CONFIG_IPC_NS is not set
+# CONFIG_USER_NS is not set
+# CONFIG_PID_NS is not set
+# CONFIG_NET_NS is not set
+CONFIG_BLK_DEV_INITRD=y
+CONFIG_INITRAMFS_SOURCE=
+CONFIG_RD_GZIP=y
+CONFIG_RD_BZIP2=y
+CONFIG_RD_LZMA=y
+CONFIG_CC_OPTIMIZE_FOR_SIZE=y
+CONFIG_SYSCTL=y
+CONFIG_ANON_INODES=y
+# CONFIG_EMBEDDED is not set
+CONFIG_UID16=y
+CONFIG_SYSCTL_SYSCALL=y
+CONFIG_KALLSYMS=y
+# CONFIG_KALLSYMS_EXTRA_PASS is not set
+CONFIG_HOTPLUG=y
+CONFIG_PRINTK=y
+CONFIG_BUG=y
+CONFIG_ELF_CORE=y
+CONFIG_BASE_FULL=y
+CONFIG_FUTEX=y
+CONFIG_EPOLL=y
+CONFIG_SIGNALFD=y
+CONFIG_TIMERFD=y
+CONFIG_EVENTFD=y
+CONFIG_SHMEM=y
+CONFIG_AIO=y
+
+#
+# Kernel Performance Events And Counters
+#
+CONFIG_VM_EVENT_COUNTERS=y
+CONFIG_COMPAT_BRK=y
+CONFIG_SLAB=y
+# CONFIG_SLUB is not set
+# CONFIG_SLOB is not set
+# CONFIG_PROFILING is not set
+CONFIG_HAVE_OPROFILE=y
+# CONFIG_KPROBES is not set
+CONFIG_HAVE_KPROBES=y
+CONFIG_HAVE_KRETPROBES=y
+CONFIG_HAVE_CLK=y
+
+#
+# GCOV-based kernel profiling
+#
+# CONFIG_SLOW_WORK is not set
+CONFIG_HAVE_GENERIC_DMA_COHERENT=y
+CONFIG_SLABINFO=y
+CONFIG_RT_MUTEXES=y
+CONFIG_BASE_SMALL=0
+CONFIG_MODULES=y
+# CONFIG_MODULE_FORCE_LOAD is not set
+CONFIG_MODULE_UNLOAD=y
+# CONFIG_MODULE_FORCE_UNLOAD is not set
+# CONFIG_MODVERSIONS is not set
+# CONFIG_MODULE_SRCVERSION_ALL is not set
+CONFIG_BLOCK=y
+CONFIG_LBDAF=y
+# CONFIG_BLK_DEV_BSG is not set
+# CONFIG_BLK_DEV_INTEGRITY is not set
+
+#
+# IO Schedulers
+#
+CONFIG_IOSCHED_NOOP=y
+CONFIG_IOSCHED_AS=y
+CONFIG_IOSCHED_DEADLINE=y
+CONFIG_IOSCHED_CFQ=y
+# CONFIG_DEFAULT_AS is not set
+# CONFIG_DEFAULT_DEADLINE is not set
+CONFIG_DEFAULT_CFQ=y
+# CONFIG_DEFAULT_NOOP is not set
+CONFIG_DEFAULT_IOSCHED=cfq
+CONFIG_FREEZER=y
+
+#
+# System Type
+#
+CONFIG_MMU=y
+# CONFIG_ARCH_AAEC2000 is not set
+# CONFIG_ARCH_INTEGRATOR is not set
+# CONFIG_ARCH_REALVIEW is not set
+# CONFIG_ARCH_VERSATILE is not set
+# CONFIG_ARCH_AT91 is not set
+# CONFIG_ARCH_CLPS711X is not set
+# CONFIG_ARCH_GEMINI is not set
+# CONFIG_ARCH_EBSA110 is not set
+# CONFIG_ARCH_EP93XX is not set
+# CONFIG_ARCH_FOOTBRIDGE is not set
+# CONFIG_ARCH_MXC is not set
+# CONFIG_ARCH_STMP3XXX is not set
+# CONFIG_ARCH_NETX is not set
+# CONFIG_ARCH_H720X is not set
+# CONFIG_ARCH_NOMADIK is not set
+# CONFIG_ARCH_IOP13XX is not set
+# CONFIG_ARCH_IOP32X is not set
+# CONFIG_ARCH_IOP33X is not set
+# CONFIG_ARCH_IXP23XX is not set
+# CONFIG_ARCH_IXP2000 is not set
+# CONFIG_ARCH_IXP4XX is not set
+# 

[PATCH] [mmc-omap] Add support for 16-bit and 32-bit registers

2009-10-03 Thread Cory Maccarrone
The omap850 and omap730 use 16-bit registers instead of 32-bit, requiring
a modification of the register addresses in the mmc-omap driver.  To
make this as portable as possible, I made the following changes:

* Moved register address offsets from drivers/mmc/host/omap.c to
  drivers/mmc/host/omap.h
* Implemented a lookup table for 16-bit and 32-bit register offsets
* Added a reg_size field in the mmc_omap_host structure
* Added code in mmc_omap_probe() to populate the reg_size
  field based on processor in use
* Added inline function to return the register offset based on
  the register size and register name
* Modified mmc-omap driver to use the new inline function to call out
  register names

This change should allow the omap7xx-series of processors to correctly
utilize the MMC driver.

Signed-off-by: Cory Maccarrone darkstar6...@gmail.com
---
 drivers/mmc/host/omap.c |   42 +
 drivers/mmc/host/omap.h |  115 +++
 2 files changed, 127 insertions(+), 30 deletions(-)
 create mode 100644 drivers/mmc/host/omap.h

diff --git a/drivers/mmc/host/omap.c b/drivers/mmc/host/omap.c
index e7a331d..b82f935 100644
--- a/drivers/mmc/host/omap.c
+++ b/drivers/mmc/host/omap.c
@@ -37,31 +37,7 @@
 #include mach/mux.h
 #include mach/fpga.h

-#defineOMAP_MMC_REG_CMD0x00
-#defineOMAP_MMC_REG_ARGL   0x04
-#defineOMAP_MMC_REG_ARGH   0x08
-#defineOMAP_MMC_REG_CON0x0c
-#defineOMAP_MMC_REG_STAT   0x10
-#defineOMAP_MMC_REG_IE 0x14
-#defineOMAP_MMC_REG_CTO0x18
-#defineOMAP_MMC_REG_DTO0x1c
-#defineOMAP_MMC_REG_DATA   0x20
-#defineOMAP_MMC_REG_BLEN   0x24
-#defineOMAP_MMC_REG_NBLK   0x28
-#defineOMAP_MMC_REG_BUF0x2c
-#define OMAP_MMC_REG_SDIO  0x34
-#defineOMAP_MMC_REG_REV0x3c
-#defineOMAP_MMC_REG_RSP0   0x40
-#defineOMAP_MMC_REG_RSP1   0x44
-#defineOMAP_MMC_REG_RSP2   0x48
-#defineOMAP_MMC_REG_RSP3   0x4c
-#defineOMAP_MMC_REG_RSP4   0x50
-#defineOMAP_MMC_REG_RSP5   0x54
-#defineOMAP_MMC_REG_RSP6   0x58
-#defineOMAP_MMC_REG_RSP7   0x5c
-#defineOMAP_MMC_REG_IOSR   0x60
-#defineOMAP_MMC_REG_SYSC   0x64
-#defineOMAP_MMC_REG_SYSS   0x68
+#include omap.h

 #defineOMAP_MMC_STAT_CARD_ERR  (1  14)
 #defineOMAP_MMC_STAT_CARD_IRQ  (1  13)
@@ -77,8 +53,10 @@
 #defineOMAP_MMC_STAT_CARD_BUSY (1   2)
 #defineOMAP_MMC_STAT_END_OF_CMD(1   0)

-#define OMAP_MMC_READ(host, reg)   __raw_readw((host)-virt_base +
OMAP_MMC_REG_##reg)
-#define OMAP_MMC_WRITE(host, reg, val) __raw_writew((val),
(host)-virt_base + OMAP_MMC_REG_##reg)
+#define OMAP_MMC_REG(host,
reg)mmc_omap_get_register(host-reg_size, OMAP_MMC_REG_##reg)
+
+#define OMAP_MMC_READ(host, reg)   __raw_readw((host)-virt_base +
OMAP_MMC_REG(host, reg))
+#define OMAP_MMC_WRITE(host, reg, val) __raw_writew((val),
(host)-virt_base + OMAP_MMC_REG(host, reg))

 /*
  * Command types
@@ -167,6 +145,8 @@ struct mmc_omap_host {
spinlock_t  clk_lock; /* for changing enabled state */
unsigned intfclk_enabled:1;

+   unsignedreg_size:1;
+
struct omap_mmc_platform_data *pdata;
 };

@@ -679,9 +659,9 @@ mmc_omap_xfer_data(struct mmc_omap_host *host, int write)
host-data-bytes_xfered += n;

if (write) {
-   __raw_writesw(host-virt_base + OMAP_MMC_REG_DATA, 
host-buffer, n);
+   __raw_writesw(host-virt_base + OMAP_MMC_REG(host, DATA), 
host-buffer, n);
} else {
-   __raw_readsw(host-virt_base + OMAP_MMC_REG_DATA, host-buffer, 
n);
+   __raw_readsw(host-virt_base + OMAP_MMC_REG(host, DATA), 
host-buffer, n);
}
 }

@@ -899,7 +879,7 @@ mmc_omap_prepare_dma(struct mmc_omap_host *host,
struct mmc_data *data)
int dst_port = 0;
int sync_dev = 0;

-   data_addr = host-phys_base + OMAP_MMC_REG_DATA;
+   data_addr = host-phys_base + OMAP_MMC_REG(host, DATA);
frame = data-blksz;
count = sg_dma_len(sg);

@@ -1490,6 +1470,8 @@ static int __init mmc_omap_probe(struct
platform_device *pdev)
}
}

+   host-reg_size = (cpu_is_omap7xx() ? OMAP_MMC_REG_SIZE_2 :
OMAP_MMC_REG_SIZE_4);
+
return 0;

 err_plat_cleanup:
diff --git a/drivers/mmc/host/omap.h b/drivers/mmc/host/omap.h
new file mode 100644
index 000..9a52203
--- /dev/null
+++ b/drivers/mmc/host/omap.h
@@ -0,0 +1,115 @@
+/*
+ *  linux/drivers/mmc/host/omap.h
+ *
+ *  Copyright (C) 2009 Cory Maccarrone darkstar6...@gmail.com
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free 

[PATCH] [OMAP7XX] Add missing clocks for MMC

2009-10-03 Thread Cory Maccarrone
The omap730 and omap850 both use a different clock for the fck
clock of the MMC interface than other omap processors based on the
SOFT_REQ_REG, pin 12.  The ick clock is the same as that used
by other omap processors.

* Added the missing clock definition as mmc3_ck to clock.h
* Added the clock definition to omap_clks in clock.c
* Added CK_7XX to the mmci-omap.0 ick clock already in clock.c

With this change, it is now possible to initialize and use MMC
cards with omap730 and omap850 devices.

Signed-off-by: Cory Maccarrone darkstar6...@gmail.com
---
 arch/arm/mach-omap1/clock.c |3 ++-
 arch/arm/mach-omap1/clock.h |   12 
 2 files changed, 14 insertions(+), 1 deletions(-)

diff --git a/arch/arm/mach-omap1/clock.c b/arch/arm/mach-omap1/clock.c
index 5f77b83..8ff0a07 100644
--- a/arch/arm/mach-omap1/clock.c
+++ b/arch/arm/mach-omap1/clock.c
@@ -125,7 +125,8 @@ static struct omap_clk omap_clks[] = {
CLK(NULL,   bclk, bclk_1510, CK_1510 | CK_310),
CLK(NULL,   bclk, bclk_16xx, CK_16XX),
CLK(mmci-omap.0, fck,   mmc1_ck,   CK_16XX | CK_1510 | 
CK_310),
-   CLK(mmci-omap.0, ick,   armper_ck.clk, CK_16XX | CK_1510 | 
CK_310),
+   CLK(mmci-omap.0, fck,   mmc3_ck,   CK_7XX),
+   CLK(mmci-omap.0, ick,   armper_ck.clk, CK_16XX | CK_1510 | 
CK_310
| CK_7XX),
CLK(mmci-omap.1, fck,   mmc2_ck,   CK_16XX),
CLK(mmci-omap.1, ick,   armper_ck.clk, CK_16XX),
/* Virtual clocks */
diff --git a/arch/arm/mach-omap1/clock.h b/arch/arm/mach-omap1/clock.h
index 17f8742..fac921c 100644
--- a/arch/arm/mach-omap1/clock.h
+++ b/arch/arm/mach-omap1/clock.h
@@ -637,6 +637,18 @@ static struct clk mmc2_ck = {
.enable_bit = 20,
 };

+static struct clk mmc3_ck = {
+   .name   = mmc_ck,
+   .id = 2,
+   .ops= clkops_generic,
+   /* Functional clock is direct from ULPD, interface clock is ARMPER */
+   .parent = armper_ck.clk,
+   .rate   = 4800,
+   .flags  = RATE_FIXED | ENABLE_REG_32BIT | CLOCK_NO_IDLE_PARENT,
+   .enable_reg = OMAP1_IO_ADDRESS(SOFT_REQ_REG),
+   .enable_bit = 12,
+};
+
 static struct clk virtual_ck_mpu = {
.name   = mpu,
.ops= clkops_null,
-- 
1.5.6.3
--
To unsubscribe from this list: send the line unsubscribe linux-omap in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


ISP OMAP3 camera support ov7690

2009-10-03 Thread michael

Hi all,

I'm writing a driver to support the ov7690 camera and I have some question 
about the meaning of:

- datalane configuration
- phyconfiguration

How can I map this parameter to a camera? Can anyone give me some example?


Michael
--
To unsubscribe from this list: send the line unsubscribe linux-omap in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH 0/3] htcherald: Add board support for HTC Herald

2009-10-03 Thread Cory Maccarrone
This series of patches introduces board support for the HTC
Herald (T-Mobile Wing, etc.) series of OMAP850-based smart
phones.  The changes here are an update to my previous posting,
taking into account the comments by michael.

Cory Maccarrone (3):
  [OMAP] htcherald: Add board support and LCD for HTC Herald
  [OMAP] htcherald: Modify Makefiles and Kconfig for HTC Herald
  [OMAP] htcherald: Add default kernel configuration for Herald

 arch/arm/configs/htcherald_defconfig  | 1146 +
 arch/arm/mach-omap1/Kconfig   |6 +
 arch/arm/mach-omap1/Makefile  |1 +
 arch/arm/mach-omap1/board-htcherald.c |  203 ++
 drivers/video/omap/Makefile   |1 +
 drivers/video/omap/lcd_htcherald.c|  166 +
 6 files changed, 1523 insertions(+), 0 deletions(-)
 create mode 100644 arch/arm/configs/htcherald_defconfig
 create mode 100644 arch/arm/mach-omap1/board-htcherald.c
 create mode 100644 drivers/video/omap/lcd_htcherald.c
--
To unsubscribe from this list: send the line unsubscribe linux-omap in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH 1/3] [OMAP] htcherald: Add board support and LCD for HTC Herald

2009-10-03 Thread Cory Maccarrone
This patch introduces support for the HTC Herald (T-Mobile
Wing, etc.) series of smart phones -- board support and LCD
panel settings.

Signed-off-by: Cory Maccarrone darkstar6...@gmail.com
---
 arch/arm/mach-omap1/board-htcherald.c |  203 +
 drivers/video/omap/lcd_htcherald.c|  166 +++
 2 files changed, 369 insertions(+), 0 deletions(-)
 create mode 100644 arch/arm/mach-omap1/board-htcherald.c
 create mode 100644 drivers/video/omap/lcd_htcherald.c

diff --git a/arch/arm/mach-omap1/board-htcherald.c
b/arch/arm/mach-omap1/board-htcherald.c
new file mode 100644
index 000..d5174a7
--- /dev/null
+++ b/arch/arm/mach-omap1/board-htcherald.c
@@ -0,0 +1,203 @@
+/*
+ * HTC Herald board configuration
+ * Copyright (C) 2009 Cory Maccarrone darkstar6...@gmail.com
+ * Copyright (C) 2009 Wing Linux
+ *
+ * Based on the board-htcwizard.c file from the linwizard project:
+ * Copyright (C) 2006 Unai Uribarri
+ * Copyright (C) 2008 linwizard.sourceforge.net
+ *
+ * This  program is  free  software; you  can  redistribute it  and/or
+ * modify  it under the  terms of  the GNU  General Public  License as
+ * published by the Free Software  Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT  ANY  WARRANTY;  without   even  the  implied  warranty  of
+ * MERCHANTABILITY or  FITNESS FOR A PARTICULAR PURPOSE.   See the GNU
+ * General Public License for more details.
+ *
+ * You should have  received a copy of the  GNU General Public License
+ * along  with  this program;  if  not,  write  to the  Free  Software
+ * Foundation,  Inc.,  51 Franklin  Street,  Fifth  Floor, Boston,  MA
+ * 02110-1301, USA.
+ *
+ */
+
+#include linux/kernel.h
+#include linux/init.h
+#include linux/platform_device.h
+#include linux/input.h
+#include linux/bootmem.h
+
+#include asm/mach-types.h
+#include asm/mach/arch.h
+#include asm/mach/map.h
+#include mach/omap7xx.h
+#include asm/page.h
+#include asm/memory.h
+#include mach/common.h
+#include mach/board.h
+
+#include mach/io.h
+#include mach/irqs.h
+#include mach/gpio.h
+#include mach/keypad.h
+
+#include linux/delay.h
+
+static struct omap_lcd_config htcherald_lcd_config __initdata = {
+   .ctrl_name  = internal,
+};
+
+static struct omap_board_config_kernel htcherald_config[] __initdata =
+{
+   { OMAP_TAG_LCD, htcherald_lcd_config },
+};
+
+/* Keyboard definition */
+
+static int htc_herald_keymap[] = {
+   KEY(0,0,KEY_RECORD), /* Mail button */
+   KEY(0,1,KEY_CAMERA), /* Camera */
+   KEY(0,2,KEY_PHONE), /* Send key */
+   KEY(0,3,KEY_VOLUMEUP), /* Volume up */
+   KEY(0,4,KEY_F2),  /* Right bar (landscape) */
+   KEY(0,5,KEY_MAIL), /* Win key (portrait) */
+   KEY(0,6,KEY_DIRECTORY), /* Right bar (protrait) */
+   KEY(1,0,KEY_LEFTCTRL), /* Windows key */
+   KEY(1,1,KEY_COMMA),
+   KEY(1,2,KEY_M),
+   KEY(1,3,KEY_K),
+   KEY(1,4,KEY_SLASH), /* OK key */
+   KEY(1,5,KEY_I),
+   KEY(1,6,KEY_U),
+   KEY(2,0,KEY_LEFTALT),
+   KEY(2,1,KEY_TAB),
+   KEY(2,2,KEY_N),
+   KEY(2,3,KEY_J),
+   KEY(2,4,KEY_ENTER),
+   KEY(2,5,KEY_H),
+   KEY(2,6,KEY_Y),
+   KEY(3,0,KEY_SPACE),
+   KEY(3,1,KEY_L),
+   KEY(3,2,KEY_B),
+   KEY(3,3,KEY_V),
+   KEY(3,4,KEY_BACKSPACE),
+   KEY(3,5,KEY_G),
+   KEY(3,6,KEY_T),
+   KEY(4,0,KEY_CAPSLOCK), /* Shift */
+   KEY(4,1,KEY_C),
+   KEY(4,2,KEY_F),
+   KEY(4,3,KEY_R),
+   KEY(4,4,KEY_O),
+   KEY(4,5,KEY_E),
+   KEY(4,6,KEY_D),
+   KEY(5,0,KEY_X),
+   KEY(5,1,KEY_Z),
+   KEY(5,2,KEY_S),
+   KEY(5,3,KEY_W),
+   KEY(5,4,KEY_P),
+   KEY(5,5,KEY_Q),
+   KEY(5,6,KEY_A),
+   KEY(6,0,KEY_CONNECT), /* Voice button */
+   KEY(6,2,KEY_CANCEL), /* End key */
+   KEY(6,3,KEY_VOLUMEDOWN), /* Volume down */
+   KEY(6,4,KEY_F1), /* Left bar (landscape) */
+   KEY(6,5,KEY_WWW), /* OK button (portrait) */
+   KEY(6,6,KEY_CALENDAR), /* Left bar (portrait) */
+   0
+};
+
+struct omap_kp_platform_data htcherald_kp_data = {
+   .rows   = 7,
+   .cols   = 7,
+   .delay = 20,
+   .rep = 1,
+   .keymap = htc_herald_keymap,
+};
+
+static struct resource kp_resources[] = {
+   [0] = {
+   .start  = INT_7XX_MPUIO_KEYPAD,
+   .end= INT_7XX_MPUIO_KEYPAD,
+   .flags  = IORESOURCE_IRQ,
+   },
+};
+
+static struct platform_device kp_device = {
+   .name   = omap-keypad,
+   .id = -1,
+   .dev= {
+   .platform_data = htcherald_kp_data,
+   },
+   .num_resources  = ARRAY_SIZE(kp_resources),
+   .resource   = kp_resources,
+};
+
+/* LCD Device resources */
+static struct platform_device lcd_device = {
+   .name   = lcd_htcherald,
+   .id = -1,
+};
+

[PATCH 2/3] [OMAP] htcherald: Modify Makefiles and Kconfig for HTC Herald

2009-10-03 Thread Cory Maccarrone
The Makefiles and Kconfig files were modified to include the new
HTC Herald board support and LCD panel configuration code.

Signed-off-by: Cory Maccarrone darkstar6...@gmail.com
---
 arch/arm/mach-omap1/Kconfig  |6 ++
 arch/arm/mach-omap1/Makefile |1 +
 drivers/video/omap/Makefile  |1 +
 3 files changed, 8 insertions(+), 0 deletions(-)

diff --git a/arch/arm/mach-omap1/Kconfig b/arch/arm/mach-omap1/Kconfig
index 55ecc01..0341d7b 100644
--- a/arch/arm/mach-omap1/Kconfig
+++ b/arch/arm/mach-omap1/Kconfig
@@ -56,6 +56,12 @@ config MACH_OMAP_HTCWIZARD
help
  HTC Wizard smartphone support (AKA QTEK 9100, ...)

+config MACH_HERALD
+   bool HTC Herald
+   depends on ARCH_OMAP850
+   help
+ HTC Herald smartphone support (AKA T-Mobile Wing, ...)
+
 config MACH_OMAP_OSK
bool TI OSK Support
depends on ARCH_OMAP1  ARCH_OMAP16XX
diff --git a/arch/arm/mach-omap1/Makefile b/arch/arm/mach-omap1/Makefile
index 6867cd3..87e539a 100644
--- a/arch/arm/mach-omap1/Makefile
+++ b/arch/arm/mach-omap1/Makefile
@@ -34,6 +34,7 @@ obj-$(CONFIG_MACH_OMAP_PALMTT)+= 
board-palmtt.o
 obj-$(CONFIG_MACH_NOKIA770)+= board-nokia770.o
 obj-$(CONFIG_MACH_AMS_DELTA)   += board-ams-delta.o
 obj-$(CONFIG_MACH_SX1) += board-sx1.o board-sx1-mmc.o
+obj-$(CONFIG_MACH_HERALD)  += board-htcherald.o

 ifeq ($(CONFIG_ARCH_OMAP15XX),y)
 # Innovator-1510 FPGA
diff --git a/drivers/video/omap/Makefile b/drivers/video/omap/Makefile
index b63b198..49226a1 100644
--- a/drivers/video/omap/Makefile
+++ b/drivers/video/omap/Makefile
@@ -35,6 +35,7 @@ objs-y$(CONFIG_MACH_OMAP3EVM) += lcd_omap3evm.o
 objs-y$(CONFIG_MACH_OMAP3_BEAGLE) += lcd_omap3beagle.o
 objs-y$(CONFIG_FB_OMAP_LCD_MIPID) += lcd_mipid.o
 objs-y$(CONFIG_MACH_OVERO) += lcd_overo.o
+objs-y$(CONFIG_MACH_HERALD) += lcd_htcherald.o

 omapfb-objs := $(objs-yy)

-- 
1.5.6.3
--
To unsubscribe from this list: send the line unsubscribe linux-omap in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH 3/3] [OMAP] htcherald: Add default kernel configuration for Herald

2009-10-03 Thread Cory Maccarrone
This adds a new defconfig for the HTC Herald series of devices.

Signed-off-by: Cory Maccarrone darkstar6...@gmail.com
---
 arch/arm/configs/htcherald_defconfig | 1146 ++
 1 files changed, 1146 insertions(+), 0 deletions(-)
 create mode 100644 arch/arm/configs/htcherald_defconfig

diff --git a/arch/arm/configs/htcherald_defconfig
b/arch/arm/configs/htcherald_defconfig
new file mode 100644
index 000..9ec9c26
--- /dev/null
+++ b/arch/arm/configs/htcherald_defconfig
@@ -0,0 +1,1146 @@
+#
+# Automatically generated make config: don't edit
+# Linux kernel version: 2.6.32-rc2
+# Sat Oct  3 12:16:22 2009
+#
+CONFIG_ARM=y
+CONFIG_SYS_SUPPORTS_APM_EMULATION=y
+CONFIG_GENERIC_GPIO=y
+CONFIG_GENERIC_TIME=y
+CONFIG_GENERIC_CLOCKEVENTS=y
+CONFIG_GENERIC_HARDIRQS=y
+CONFIG_STACKTRACE_SUPPORT=y
+CONFIG_HAVE_LATENCYTOP_SUPPORT=y
+CONFIG_LOCKDEP_SUPPORT=y
+CONFIG_TRACE_IRQFLAGS_SUPPORT=y
+CONFIG_HARDIRQS_SW_RESEND=y
+CONFIG_GENERIC_IRQ_PROBE=y
+CONFIG_RWSEM_GENERIC_SPINLOCK=y
+CONFIG_ARCH_HAS_CPUFREQ=y
+CONFIG_GENERIC_HWEIGHT=y
+CONFIG_GENERIC_CALIBRATE_DELAY=y
+CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
+CONFIG_VECTORS_BASE=0x
+CONFIG_DEFCONFIG_LIST=/lib/modules/$UNAME_RELEASE/.config
+CONFIG_CONSTRUCTORS=y
+
+#
+# General setup
+#
+CONFIG_EXPERIMENTAL=y
+CONFIG_BROKEN_ON_SMP=y
+CONFIG_LOCK_KERNEL=y
+CONFIG_INIT_ENV_ARG_LIMIT=32
+CONFIG_LOCALVERSION=
+CONFIG_LOCALVERSION_AUTO=y
+CONFIG_SWAP=y
+CONFIG_SYSVIPC=y
+CONFIG_SYSVIPC_SYSCTL=y
+# CONFIG_POSIX_MQUEUE is not set
+# CONFIG_BSD_PROCESS_ACCT is not set
+# CONFIG_TASKSTATS is not set
+# CONFIG_AUDIT is not set
+
+#
+# RCU Subsystem
+#
+CONFIG_TREE_RCU=y
+# CONFIG_TREE_PREEMPT_RCU is not set
+# CONFIG_RCU_TRACE is not set
+CONFIG_RCU_FANOUT=32
+# CONFIG_RCU_FANOUT_EXACT is not set
+# CONFIG_TREE_RCU_TRACE is not set
+# CONFIG_IKCONFIG is not set
+CONFIG_LOG_BUF_SHIFT=14
+# CONFIG_GROUP_SCHED is not set
+# CONFIG_CGROUPS is not set
+# CONFIG_SYSFS_DEPRECATED_V2 is not set
+# CONFIG_RELAY is not set
+CONFIG_NAMESPACES=y
+# CONFIG_UTS_NS is not set
+# CONFIG_IPC_NS is not set
+# CONFIG_USER_NS is not set
+# CONFIG_PID_NS is not set
+# CONFIG_NET_NS is not set
+CONFIG_BLK_DEV_INITRD=y
+CONFIG_INITRAMFS_SOURCE=
+CONFIG_RD_GZIP=y
+CONFIG_RD_BZIP2=y
+CONFIG_RD_LZMA=y
+CONFIG_CC_OPTIMIZE_FOR_SIZE=y
+CONFIG_SYSCTL=y
+CONFIG_ANON_INODES=y
+# CONFIG_EMBEDDED is not set
+CONFIG_UID16=y
+CONFIG_SYSCTL_SYSCALL=y
+CONFIG_KALLSYMS=y
+# CONFIG_KALLSYMS_EXTRA_PASS is not set
+CONFIG_HOTPLUG=y
+CONFIG_PRINTK=y
+CONFIG_BUG=y
+CONFIG_ELF_CORE=y
+CONFIG_BASE_FULL=y
+CONFIG_FUTEX=y
+CONFIG_EPOLL=y
+CONFIG_SIGNALFD=y
+CONFIG_TIMERFD=y
+CONFIG_EVENTFD=y
+CONFIG_SHMEM=y
+CONFIG_AIO=y
+
+#
+# Kernel Performance Events And Counters
+#
+CONFIG_VM_EVENT_COUNTERS=y
+CONFIG_COMPAT_BRK=y
+CONFIG_SLAB=y
+# CONFIG_SLUB is not set
+# CONFIG_SLOB is not set
+# CONFIG_PROFILING is not set
+CONFIG_HAVE_OPROFILE=y
+# CONFIG_KPROBES is not set
+CONFIG_HAVE_KPROBES=y
+CONFIG_HAVE_KRETPROBES=y
+CONFIG_HAVE_CLK=y
+
+#
+# GCOV-based kernel profiling
+#
+# CONFIG_SLOW_WORK is not set
+CONFIG_HAVE_GENERIC_DMA_COHERENT=y
+CONFIG_SLABINFO=y
+CONFIG_RT_MUTEXES=y
+CONFIG_BASE_SMALL=0
+CONFIG_MODULES=y
+# CONFIG_MODULE_FORCE_LOAD is not set
+CONFIG_MODULE_UNLOAD=y
+# CONFIG_MODULE_FORCE_UNLOAD is not set
+# CONFIG_MODVERSIONS is not set
+# CONFIG_MODULE_SRCVERSION_ALL is not set
+CONFIG_BLOCK=y
+CONFIG_LBDAF=y
+# CONFIG_BLK_DEV_BSG is not set
+# CONFIG_BLK_DEV_INTEGRITY is not set
+
+#
+# IO Schedulers
+#
+CONFIG_IOSCHED_NOOP=y
+CONFIG_IOSCHED_AS=y
+CONFIG_IOSCHED_DEADLINE=y
+CONFIG_IOSCHED_CFQ=y
+# CONFIG_DEFAULT_AS is not set
+# CONFIG_DEFAULT_DEADLINE is not set
+CONFIG_DEFAULT_CFQ=y
+# CONFIG_DEFAULT_NOOP is not set
+CONFIG_DEFAULT_IOSCHED=cfq
+CONFIG_FREEZER=y
+
+#
+# System Type
+#
+CONFIG_MMU=y
+# CONFIG_ARCH_AAEC2000 is not set
+# CONFIG_ARCH_INTEGRATOR is not set
+# CONFIG_ARCH_REALVIEW is not set
+# CONFIG_ARCH_VERSATILE is not set
+# CONFIG_ARCH_AT91 is not set
+# CONFIG_ARCH_CLPS711X is not set
+# CONFIG_ARCH_GEMINI is not set
+# CONFIG_ARCH_EBSA110 is not set
+# CONFIG_ARCH_EP93XX is not set
+# CONFIG_ARCH_FOOTBRIDGE is not set
+# CONFIG_ARCH_MXC is not set
+# CONFIG_ARCH_STMP3XXX is not set
+# CONFIG_ARCH_NETX is not set
+# CONFIG_ARCH_H720X is not set
+# CONFIG_ARCH_NOMADIK is not set
+# CONFIG_ARCH_IOP13XX is not set
+# CONFIG_ARCH_IOP32X is not set
+# CONFIG_ARCH_IOP33X is not set
+# CONFIG_ARCH_IXP23XX is not set
+# CONFIG_ARCH_IXP2000 is not set
+# CONFIG_ARCH_IXP4XX is not set
+# CONFIG_ARCH_L7200 is not set
+# CONFIG_ARCH_KIRKWOOD is not set
+# CONFIG_ARCH_LOKI is not set
+# CONFIG_ARCH_MV78XX0 is not set
+# CONFIG_ARCH_ORION5X is not set
+# CONFIG_ARCH_MMP is not set
+# CONFIG_ARCH_KS8695 is not set
+# CONFIG_ARCH_NS9XXX is not set
+# CONFIG_ARCH_W90X900 is not set
+# CONFIG_ARCH_PNX4008 is not set
+# CONFIG_ARCH_PXA is not set
+# CONFIG_ARCH_MSM is not set
+# CONFIG_ARCH_RPC is not set
+# CONFIG_ARCH_SA1100 is not set
+# CONFIG_ARCH_S3C2410 is not set
+#