提交 715dad59 编写于 作者: L Linus Torvalds

Merge master.kernel.org:/home/rmk/linux-2.6-arm

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