Merge master.kernel.org:/home/rmk/linux-2.6-arm
authorLinus Torvalds <torvalds@woody.linux-foundation.org>
Sun, 29 Jul 2007 02:29:37 +0000 (19:29 -0700)
committerLinus Torvalds <torvalds@woody.linux-foundation.org>
Sun, 29 Jul 2007 02:29:37 +0000 (19:29 -0700)
* master.kernel.org:/home/rmk/linux-2.6-arm:
  [ARM] 4527/1: pxa: fix pxa27x ac97 cold reset in ASoC due to CKEN change
  [ARM] 4530/1: MXC: fix elf_hwcap compile breakage as in iop13xx
  [ARM] 4529/1: [HP Jornada 7XX] - Fix jornada720.c to use SSP driver
  [ARM] 4528/1: [HP Jornada 7XX] - Fix typo in jornada720_ssp.c
  [ARM] Remove CONFIG_IGNORE_FIQ
  [ARM] 4526/1: pxa: make ARCH_PXA select GENERIC_CLOCKEVENTS
  [ARM] setup_profiling_timer must not be __init

arch/arm/Kconfig
arch/arm/kernel/smp.c
arch/arm/kernel/traps.c
arch/arm/mach-sa1100/jornada720.c
arch/arm/mach-sa1100/jornada720_ssp.c
include/asm-arm/arch-mxc/uncompress.h
sound/soc/pxa/pxa2xx-ac97.c

index 85016313bd1175779772fbfe45d1c798780e064e..c8569e862c6ba7746d4a9080c59da4594d3d59e1 100644 (file)
@@ -341,6 +341,7 @@ config ARCH_PXA
        select ARCH_MTD_XIP
        select GENERIC_GPIO
        select GENERIC_TIME
+       select GENERIC_CLOCKEVENTS
        help
          Support for Intel's PXA2XX processor line.
 
index 1b76d87fa335de634f7151c630cec6005ec340ec..9746e5293249b2ec5289e5640b69e6b212b64c3c 100644 (file)
@@ -630,7 +630,7 @@ void smp_send_stop(void)
 /*
  * not supported here
  */
-int __init setup_profiling_timer(unsigned int multiplier)
+int setup_profiling_timer(unsigned int multiplier)
 {
        return -EINVAL;
 }
index f2114bcf09d522994d11fcfafef264b2ba318e92..8ad47619c07906b31dcd60c97490426f6330e34c 100644 (file)
@@ -352,10 +352,8 @@ asmlinkage void __exception do_undefinstr(struct pt_regs *regs)
 
 asmlinkage void do_unexp_fiq (struct pt_regs *regs)
 {
-#ifndef CONFIG_IGNORE_FIQ
        printk("Hmm.  Unexpected FIQ received, but trying to continue\n");
        printk("You may have a hardware problem...\n");
-#endif
 }
 
 /*
index 64067cd58d36e075cd7fede2ddbdb48e2d715f1e..52ac37d1e23aa91f6ec67c548db310287051fc87 100644 (file)
@@ -3,6 +3,7 @@
  *
  * HP Jornada720 init code
  *
+ * Copyright (C) 2007 Kristoffer Ericson <Kristoffer.Ericson@gmail.com>
  * Copyright (C) 2006 Filip Zyzniewski <filip.zyzniewski@tefnet.pl>
  *  Copyright (C) 2005 Michael Gernoth <michael@gernoth.net>
  *
@@ -220,14 +221,16 @@ static struct platform_device sa1111_device = {
        .resource       = sa1111_resources,
 };
 
-static struct platform_device jornada720_mcu_device = {
-       .name           = "jornada720_mcu",
-       .id             = -1,
+static struct platform_device jornada_ssp_device = {
+       .name           = "jornada_ssp",
+       .id             = -1,
 };
 
 static struct platform_device *devices[] __initdata = {
        &sa1111_device,
-       &jornada720_mcu_device,
+#ifdef CONFIG_SA1100_JORNADA720_SSP
+       &jornada_ssp_device,
+#endif
        &s1d13xxxfb_device,
 };
 
@@ -236,19 +239,19 @@ static int __init jornada720_init(void)
        int ret = -ENODEV;
 
        if (machine_is_jornada720()) {
-               GPDR |= GPIO_GPIO20;
-               /* oscillator setup (line 116 of HP's doc) */
+               /* we want to use gpio20 as input to drive the clock of our uart 3 */
+               GPDR |= GPIO_GPIO20;    /* Clear gpio20 pin as input */
                TUCR = TUCR_VAL;
-               /* resetting SA1111 (line 118 of HP's doc) */
-               GPSR = GPIO_GPIO20;
+               GPSR = GPIO_GPIO20;     /* start gpio20 pin */
                udelay(1);
-               GPCR = GPIO_GPIO20;
+               GPCR = GPIO_GPIO20;     /* stop gpio20 */
                udelay(1);
-               GPSR = GPIO_GPIO20;
-               udelay(20);
+               GPSR = GPIO_GPIO20;     /* restart gpio20 */
+               udelay(20);             /* give it some time to restart */
 
                ret = platform_add_devices(devices, ARRAY_SIZE(devices));
        }
+
        return ret;
 }
 
@@ -345,7 +348,7 @@ static void __init jornada720_mach_init(void)
 }
 
 MACHINE_START(JORNADA720, "HP Jornada 720")
-       /* Maintainer: Michael Gernoth <michael@gernoth.net> */
+       /* Maintainer: Kristoffer Ericson <Kristoffer.Ericson@gmail.com> */
        .phys_io        = 0x80000000,
        .io_pg_offst    = ((0xf8000000) >> 18) & 0xfffc,
        .boot_params    = 0xc0000100,
index 0a45e1ac8ad6700d27f7d30fb8c47cdfab7318fc..395c39bed7d823c06fca82b10525279e45c0dd7b 100644 (file)
@@ -161,7 +161,7 @@ static int __init jornada_ssp_probe(struct platform_device *dev)
        ret = jornada_ssp_inout(GETBRIGHTNESS);
 
        /* seems like it worked, just feed it with TxDummy to get rid of data */
-       if (ret == TxDummy)
+       if (ret == TXDUMMY)
                jornada_ssp_inout(TXDUMMY);
 
        jornada_ssp_end();
index ec5787d0e78cac6c714b5b5347041a4749625a41..42cc0cb3fefd40343ae2380cb9969d6ea2570f05 100644 (file)
@@ -26,7 +26,6 @@
 #define __MXC_BOOT_UNCOMPRESS
 
 #include <asm/hardware.h>
-#include <asm/processor.h>
 
 #define UART(x) (*(volatile unsigned long *)(serial_port + (x)))
 
@@ -62,7 +61,7 @@ static void putc(int ch)
        }
 
        while (!(UART(USR2) & USR2_TXFE))
-               cpu_relax();
+               barrier();
 
        UART(TXR) = ch;
 }
index 129d851b31511fb8516df1b89c50a85248b62a67..dd14abcdf1bd6091d4e3ab3a767866c64405cd84 100644 (file)
@@ -160,9 +160,9 @@ static void pxa2xx_ac97_cold_reset(struct snd_ac97 *ac97)
        gsr_bits = 0;
 #ifdef CONFIG_PXA27x
        /* PXA27x Developers Manual section 13.5.2.2.1 */
-       pxa_set_cken(1 << 31, 1);
+       pxa_set_cken(31, 1);
        udelay(5);
-       pxa_set_cken(1 << 31, 0);
+       pxa_set_cken(31, 0);
        GCR = GCR_COLD_RST;
        udelay(50);
 #else