mirror of
https://github.com/edk2-porting/linux-next.git
synced 2024-11-19 16:14:13 +08:00
Merge master.kernel.org:/home/rmk/linux-2.6-arm
* master.kernel.org:/home/rmk/linux-2.6-arm: [ARM] 3815/1: headers_install support for ARM [ARM] 3794/1: S3C24XX: do not defined set_irq_wake when no CONFIG_PM [ARM] 3793/1: S3C2412: fix wrong serial info struct [ARM] 3780/1: Fix iop321 cpuid [ARM] 3786/1: pnx4008: update defconfig [ARM] 3785/1: S3C2412: Fix idle code as default uses wrong clocks [ARM] 3784/1: S3C2413: fix config for MACH_S3C2413/MACH_SMDK2413
This commit is contained in:
commit
77e2782f9b
File diff suppressed because it is too large
Load Diff
@ -81,9 +81,17 @@ config SMDK2440_CPU2442
|
|||||||
depends on ARCH_S3C2440
|
depends on ARCH_S3C2440
|
||||||
select CPU_S3C2442
|
select CPU_S3C2442
|
||||||
|
|
||||||
|
config MACH_S3C2413
|
||||||
|
bool
|
||||||
|
help
|
||||||
|
Internal node for S3C2413 verison of SMDK2413, so that
|
||||||
|
machine_is_s3c2413() will work when MACH_SMDK2413 is
|
||||||
|
selected
|
||||||
|
|
||||||
config MACH_SMDK2413
|
config MACH_SMDK2413
|
||||||
bool "SMDK2413"
|
bool "SMDK2413"
|
||||||
select CPU_S3C2412
|
select CPU_S3C2412
|
||||||
|
select MACH_S3C2413
|
||||||
select MACH_SMDK
|
select MACH_SMDK
|
||||||
help
|
help
|
||||||
Say Y here if you are using an SMDK2413
|
Say Y here if you are using an SMDK2413
|
||||||
|
@ -100,5 +100,10 @@ s3c_irqsub_ack(unsigned int irqno, unsigned int parentmask, unsigned int group)
|
|||||||
|
|
||||||
/* exported for use in arch/arm/mach-s3c2410 */
|
/* exported for use in arch/arm/mach-s3c2410 */
|
||||||
|
|
||||||
|
#ifdef CONFIG_PM
|
||||||
extern int s3c_irq_wake(unsigned int irqno, unsigned int state);
|
extern int s3c_irq_wake(unsigned int irqno, unsigned int state);
|
||||||
|
#else
|
||||||
|
#define s3c_irq_wake NULL
|
||||||
|
#endif
|
||||||
|
|
||||||
extern int s3c_irqext_type(unsigned int irq, unsigned int type);
|
extern int s3c_irqext_type(unsigned int irq, unsigned int type);
|
||||||
|
@ -35,11 +35,15 @@
|
|||||||
#include <asm/mach/irq.h>
|
#include <asm/mach/irq.h>
|
||||||
|
|
||||||
#include <asm/hardware.h>
|
#include <asm/hardware.h>
|
||||||
|
#include <asm/proc-fns.h>
|
||||||
#include <asm/io.h>
|
#include <asm/io.h>
|
||||||
#include <asm/irq.h>
|
#include <asm/irq.h>
|
||||||
|
|
||||||
|
#include <asm/arch/idle.h>
|
||||||
|
|
||||||
#include <asm/arch/regs-clock.h>
|
#include <asm/arch/regs-clock.h>
|
||||||
#include <asm/arch/regs-serial.h>
|
#include <asm/arch/regs-serial.h>
|
||||||
|
#include <asm/arch/regs-power.h>
|
||||||
#include <asm/arch/regs-gpio.h>
|
#include <asm/arch/regs-gpio.h>
|
||||||
#include <asm/arch/regs-gpioj.h>
|
#include <asm/arch/regs-gpioj.h>
|
||||||
#include <asm/arch/regs-dsc.h>
|
#include <asm/arch/regs-dsc.h>
|
||||||
@ -75,6 +79,27 @@ void __init s3c2412_init_uarts(struct s3c2410_uartcfg *cfg, int no)
|
|||||||
s3c_device_nand.name = "s3c2412-nand";
|
s3c_device_nand.name = "s3c2412-nand";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* s3c2412_idle
|
||||||
|
*
|
||||||
|
* use the standard idle call by ensuring the idle mode
|
||||||
|
* in power config, then issuing the idle co-processor
|
||||||
|
* instruction
|
||||||
|
*/
|
||||||
|
|
||||||
|
static void s3c2412_idle(void)
|
||||||
|
{
|
||||||
|
unsigned long tmp;
|
||||||
|
|
||||||
|
/* ensure our idle mode is to go to idle */
|
||||||
|
|
||||||
|
tmp = __raw_readl(S3C2412_PWRCFG);
|
||||||
|
tmp &= ~S3C2412_PWRCFG_STANDBYWFI_MASK;
|
||||||
|
tmp |= S3C2412_PWRCFG_STANDBYWFI_IDLE;
|
||||||
|
__raw_writel(tmp, S3C2412_PWRCFG);
|
||||||
|
|
||||||
|
cpu_do_idle();
|
||||||
|
}
|
||||||
|
|
||||||
/* s3c2412_map_io
|
/* s3c2412_map_io
|
||||||
*
|
*
|
||||||
* register the standard cpu IO areas, and any passed in from the
|
* register the standard cpu IO areas, and any passed in from the
|
||||||
@ -87,6 +112,10 @@ void __init s3c2412_map_io(struct map_desc *mach_desc, int mach_size)
|
|||||||
|
|
||||||
s3c24xx_va_gpio2 = S3C24XX_VA_GPIO + 0x10;
|
s3c24xx_va_gpio2 = S3C24XX_VA_GPIO + 0x10;
|
||||||
|
|
||||||
|
/* set our idle function */
|
||||||
|
|
||||||
|
s3c24xx_idle = s3c2412_idle;
|
||||||
|
|
||||||
/* register our io-tables */
|
/* register our io-tables */
|
||||||
|
|
||||||
iotable_init(s3c2412_iodesc, ARRAY_SIZE(s3c2412_iodesc));
|
iotable_init(s3c2412_iodesc, ARRAY_SIZE(s3c2412_iodesc));
|
||||||
|
@ -644,7 +644,7 @@ __80219_proc_info:
|
|||||||
.type __8032x_proc_info,#object
|
.type __8032x_proc_info,#object
|
||||||
__8032x_proc_info:
|
__8032x_proc_info:
|
||||||
.long 0x69052420
|
.long 0x69052420
|
||||||
.long 0xffffffe0
|
.long 0xfffff7e0
|
||||||
.long PMD_TYPE_SECT | \
|
.long PMD_TYPE_SECT | \
|
||||||
PMD_SECT_BUFFERABLE | \
|
PMD_SECT_BUFFERABLE | \
|
||||||
PMD_SECT_CACHEABLE | \
|
PMD_SECT_CACHEABLE | \
|
||||||
|
@ -1621,7 +1621,7 @@ static struct s3c24xx_uart_info s3c2412_uart_inf = {
|
|||||||
static int s3c2412_serial_probe(struct platform_device *dev)
|
static int s3c2412_serial_probe(struct platform_device *dev)
|
||||||
{
|
{
|
||||||
dbg("s3c2440_serial_probe: dev=%p\n", dev);
|
dbg("s3c2440_serial_probe: dev=%p\n", dev);
|
||||||
return s3c24xx_serial_probe(dev, &s3c2440_uart_inf);
|
return s3c24xx_serial_probe(dev, &s3c2412_uart_inf);
|
||||||
}
|
}
|
||||||
|
|
||||||
static struct platform_driver s3c2412_serial_drv = {
|
static struct platform_driver s3c2412_serial_drv = {
|
||||||
|
34
include/asm-arm/arch-s3c2410/regs-power.h
Normal file
34
include/asm-arm/arch-s3c2410/regs-power.h
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
/* linux/include/asm/arch-s3c2410/regs-power.h
|
||||||
|
*
|
||||||
|
* Copyright (c) 2003,2004,2005,2006 Simtec Electronics <linux@simtec.co.uk>
|
||||||
|
* http://armlinux.simtec.co.uk/
|
||||||
|
*
|
||||||
|
* 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 Software Foundation.
|
||||||
|
*
|
||||||
|
* S3C24XX power control register definitions
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef __ASM_ARM_REGS_PWR
|
||||||
|
#define __ASM_ARM_REGS_PWR __FILE__
|
||||||
|
|
||||||
|
#define S3C24XX_PWRREG(x) ((x) + S3C24XX_VA_CLKPWR)
|
||||||
|
|
||||||
|
#define S3C2412_PWRMODECON S3C24XX_PWRREG(0x20)
|
||||||
|
#define S3C2412_PWRCFG S3C24XX_PWRREG(0x24)
|
||||||
|
|
||||||
|
#define S3C2412_PWRCFG_BATF_IGNORE (0<<0)
|
||||||
|
#define S3C2412_PWRCFG_BATF_SLEEP (3<<0)
|
||||||
|
#define S3C2412_PWRCFG_BATF_MASK (3<<0)
|
||||||
|
|
||||||
|
#define S3C2412_PWRCFG_STANDBYWFI_IGNORE (0<<6)
|
||||||
|
#define S3C2412_PWRCFG_STANDBYWFI_IDLE (1<<6)
|
||||||
|
#define S3C2412_PWRCFG_STANDBYWFI_STOP (2<<6)
|
||||||
|
#define S3C2412_PWRCFG_STANDBYWFI_SLEEP (3<<6)
|
||||||
|
#define S3C2412_PWRCFG_STANDBYWFI_MASK (3<<6)
|
||||||
|
|
||||||
|
#define S3C2412_PWRCFG_RTC_MASKIRQ (1<<8)
|
||||||
|
#define S3C2412_PWRCFG_NAND_NORST (1<<9)
|
||||||
|
|
||||||
|
#endif /* __ASM_ARM_REGS_PWR */
|
@ -8,7 +8,9 @@
|
|||||||
|
|
||||||
#include <asm/ptrace.h>
|
#include <asm/ptrace.h>
|
||||||
#include <asm/user.h>
|
#include <asm/user.h>
|
||||||
|
#ifdef __KERNEL
|
||||||
#include <asm/procinfo.h>
|
#include <asm/procinfo.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
typedef unsigned long elf_greg_t;
|
typedef unsigned long elf_greg_t;
|
||||||
typedef unsigned long elf_freg_t[3];
|
typedef unsigned long elf_freg_t[3];
|
||||||
|
@ -193,8 +193,8 @@ extern pmd_t *top_pmd;
|
|||||||
#define ARCH_SLAB_MINALIGN 8
|
#define ARCH_SLAB_MINALIGN 8
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#endif /* __KERNEL__ */
|
|
||||||
|
|
||||||
#include <asm-generic/page.h>
|
#include <asm-generic/page.h>
|
||||||
|
|
||||||
|
#endif /* __KERNEL__ */
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
Loading…
Reference in New Issue
Block a user