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
This commit is contained in:
commit
715dad5992
@ -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)
|
|||||||
/*
|
/*
|
||||||
* 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)
|
|||||||
|
|
||||||
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 @@
|
|||||||
*
|
*
|
||||||
* 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 = {
|
|||||||
.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)
|
|||||||
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)
|
|||||||
}
|
}
|
||||||
|
|
||||||
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)
|
|||||||
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 @@
|
|||||||
#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)
|
|||||||
}
|
}
|
||||||
|
|
||||||
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)
|
|||||||
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
|
||||||
|
Loading…
Reference in New Issue
Block a user