Merge branch 'next-s3c-fixes' of git://aeryn.fluff.org.uk/bjdooks/linux

This commit is contained in:
Russell King 2009-09-18 20:55:56 +01:00
commit 07198871da
9 changed files with 34 additions and 8 deletions

View File

@ -77,6 +77,7 @@ config ARCH_H1940
select CPU_S3C2410 select CPU_S3C2410
select PM_H1940 if PM select PM_H1940 if PM
select S3C_DEV_USB_HOST select S3C_DEV_USB_HOST
select S3C_DEV_NAND
help help
Say Y here if you are using the HP IPAQ H1940 Say Y here if you are using the HP IPAQ H1940
@ -89,6 +90,7 @@ config MACH_N30
bool "Acer N30 family" bool "Acer N30 family"
select CPU_S3C2410 select CPU_S3C2410
select S3C_DEV_USB_HOST select S3C_DEV_USB_HOST
select S3C_DEV_NAND
help help
Say Y here if you want suppt for the Acer N30, Acer N35, Say Y here if you want suppt for the Acer N30, Acer N35,
Navman PiN570, Yakumo AlphaX or Airis NC05 PDAs. Navman PiN570, Yakumo AlphaX or Airis NC05 PDAs.
@ -103,6 +105,7 @@ config ARCH_BAST
select S3C24XX_DCLK select S3C24XX_DCLK
select ISA select ISA
select S3C_DEV_USB_HOST select S3C_DEV_USB_HOST
select S3C_DEV_NAND
help help
Say Y here if you are using the Simtec Electronics EB2410ITX Say Y here if you are using the Simtec Electronics EB2410ITX
development board (also known as BAST) development board (also known as BAST)
@ -111,6 +114,7 @@ config MACH_OTOM
bool "NexVision OTOM Board" bool "NexVision OTOM Board"
select CPU_S3C2410 select CPU_S3C2410
select S3C_DEV_USB_HOST select S3C_DEV_USB_HOST
select S3C_DEV_NAND
help help
Say Y here if you are using the Nex Vision OTOM board Say Y here if you are using the Nex Vision OTOM board
@ -154,6 +158,7 @@ config MACH_QT2410
bool "QT2410" bool "QT2410"
select CPU_S3C2410 select CPU_S3C2410
select S3C_DEV_USB_HOST select S3C_DEV_USB_HOST
select S3C_DEV_NAND
help help
Say Y here if you are using the Armzone QT2410 Say Y here if you are using the Armzone QT2410

View File

@ -48,6 +48,7 @@ config MACH_JIVE
bool "Logitech Jive" bool "Logitech Jive"
select CPU_S3C2412 select CPU_S3C2412
select S3C_DEV_USB_HOST select S3C_DEV_USB_HOST
select S3C_DEV_NAND
help help
Say Y here if you are using the Logitech Jive. Say Y here if you are using the Logitech Jive.
@ -61,6 +62,7 @@ config MACH_SMDK2413
select MACH_S3C2413 select MACH_S3C2413
select MACH_SMDK select MACH_SMDK
select S3C_DEV_USB_HOST select S3C_DEV_USB_HOST
select S3C_DEV_NAND
help help
Say Y here if you are using an SMDK2413 Say Y here if you are using an SMDK2413
@ -84,6 +86,7 @@ config MACH_VSTMS
bool "VMSTMS" bool "VMSTMS"
select CPU_S3C2412 select CPU_S3C2412
select S3C_DEV_USB_HOST select S3C_DEV_USB_HOST
select S3C_DEV_NAND
help help
Say Y here if you are using an VSTMS board Say Y here if you are using an VSTMS board

View File

@ -48,6 +48,7 @@ config MACH_OSIRIS
select S3C2440_XTAL_12000000 select S3C2440_XTAL_12000000
select S3C2410_IOTIMING if S3C2440_CPUFREQ select S3C2410_IOTIMING if S3C2440_CPUFREQ
select S3C_DEV_USB_HOST select S3C_DEV_USB_HOST
select S3C_DEV_NAND
help help
Say Y here if you are using the Simtec IM2440D20 module, also Say Y here if you are using the Simtec IM2440D20 module, also
known as the Osiris. known as the Osiris.
@ -57,6 +58,7 @@ config MACH_RX3715
select CPU_S3C2440 select CPU_S3C2440
select S3C2440_XTAL_16934400 select S3C2440_XTAL_16934400
select PM_H1940 if PM select PM_H1940 if PM
select S3C_DEV_NAND
help help
Say Y here if you are using the HP iPAQ rx3715. Say Y here if you are using the HP iPAQ rx3715.
@ -66,6 +68,7 @@ config ARCH_S3C2440
select S3C2440_XTAL_16934400 select S3C2440_XTAL_16934400
select MACH_SMDK select MACH_SMDK
select S3C_DEV_USB_HOST select S3C_DEV_USB_HOST
select S3C_DEV_NAND
help help
Say Y here if you are using the SMDK2440. Say Y here if you are using the SMDK2440.
@ -74,6 +77,7 @@ config MACH_NEXCODER_2440
select CPU_S3C2440 select CPU_S3C2440
select S3C2440_XTAL_12000000 select S3C2440_XTAL_12000000
select S3C_DEV_USB_HOST select S3C_DEV_USB_HOST
select S3C_DEV_NAND
help help
Say Y here if you are using the Nex Vision NEXCODER 2440 Light Board Say Y here if you are using the Nex Vision NEXCODER 2440 Light Board
@ -88,6 +92,7 @@ config MACH_AT2440EVB
bool "Avantech AT2440EVB development board" bool "Avantech AT2440EVB development board"
select CPU_S3C2440 select CPU_S3C2440
select S3C_DEV_USB_HOST select S3C_DEV_USB_HOST
select S3C_DEV_NAND
help help
Say Y here if you are using the AT2440EVB development board Say Y here if you are using the AT2440EVB development board
@ -97,6 +102,7 @@ config MACH_MINI2440
select EEPROM_AT24 select EEPROM_AT24
select LEDS_TRIGGER_BACKLIGHT select LEDS_TRIGGER_BACKLIGHT
select SND_S3C24XX_SOC_S3C24XX_UDA134X select SND_S3C24XX_SOC_S3C24XX_UDA134X
select S3C_DEV_NAND
help help
Say Y here to select support for the MINI2440. Is a 10cm x 10cm board Say Y here to select support for the MINI2440. Is a 10cm x 10cm board
available via various sources. It can come with a 3.5" or 7" touch LCD. available via various sources. It can come with a 3.5" or 7" touch LCD.

View File

@ -26,6 +26,7 @@ config MACH_SMDK6400
bool "SMDK6400" bool "SMDK6400"
select CPU_S3C6400 select CPU_S3C6400
select S3C_DEV_HSMMC select S3C_DEV_HSMMC
select S3C_DEV_NAND
select S3C6400_SETUP_SDHCI select S3C6400_SETUP_SDHCI
help help
Machine support for the Samsung SMDK6400 Machine support for the Samsung SMDK6400

View File

@ -102,6 +102,7 @@ config MACH_HMT
bool "Airgoo HMT" bool "Airgoo HMT"
select CPU_S3C6410 select CPU_S3C6410
select S3C_DEV_FB select S3C_DEV_FB
select S3C_DEV_NAND
select S3C_DEV_USB_HOST select S3C_DEV_USB_HOST
select S3C64XX_SETUP_FB_24BPP select S3C64XX_SETUP_FB_24BPP
select HAVE_PWM select HAVE_PWM

View File

@ -345,13 +345,13 @@ int s3c2410_dma_enqueue(unsigned int channel, void *id,
if (!chan) if (!chan)
return -EINVAL; return -EINVAL;
buff = kzalloc(sizeof(struct s3c64xx_dma_buff), GFP_KERNEL); buff = kzalloc(sizeof(struct s3c64xx_dma_buff), GFP_ATOMIC);
if (!buff) { if (!buff) {
printk(KERN_ERR "%s: no memory for buffer\n", __func__); printk(KERN_ERR "%s: no memory for buffer\n", __func__);
return -ENOMEM; return -ENOMEM;
} }
lli = dma_pool_alloc(dma_pool, GFP_KERNEL, &buff->lli_dma); lli = dma_pool_alloc(dma_pool, GFP_ATOMIC, &buff->lli_dma);
if (!lli) { if (!lli) {
printk(KERN_ERR "%s: no memory for lli\n", __func__); printk(KERN_ERR "%s: no memory for lli\n", __func__);
ret = -ENOMEM; ret = -ENOMEM;
@ -697,7 +697,7 @@ static int __init s3c64xx_dma_init(void)
printk(KERN_INFO "%s: Registering DMA channels\n", __func__); printk(KERN_INFO "%s: Registering DMA channels\n", __func__);
dma_pool = dma_pool_create("DMA-LLI", NULL, 32, 16, 0); dma_pool = dma_pool_create("DMA-LLI", NULL, sizeof(struct pl080s_lli), 16, 0);
if (!dma_pool) { if (!dma_pool) {
printk(KERN_ERR "%s: failed to create pool\n", __func__); printk(KERN_ERR "%s: failed to create pool\n", __func__);
return -ENOMEM; return -ENOMEM;

View File

@ -26,7 +26,7 @@ struct s3c64xx_dma_buff {
struct s3c64xx_dma_buff *next; struct s3c64xx_dma_buff *next;
void *pw; void *pw;
struct pl080_lli *lli; struct pl080s_lli *lli;
dma_addr_t lli_dma; dma_addr_t lli_dma;
}; };

View File

@ -194,9 +194,17 @@
#define IRQ_EINT_GROUP(group, no) (IRQ_EINT_GROUP##group##_BASE + (no)) #define IRQ_EINT_GROUP(group, no) (IRQ_EINT_GROUP##group##_BASE + (no))
/* Define a group of interrupts for board-specific use (eg, for MFD
* interrupt controllers). */
#define IRQ_BOARD_START (IRQ_EINT_GROUP9_BASE + IRQ_EINT_GROUP9_NR + 1)
#define IRQ_BOARD_NR 16
#define IRQ_BOARD_END (IRQ_BOARD_START + IRQ_BOARD_NR)
/* Set the default NR_IRQS */ /* Set the default NR_IRQS */
#define NR_IRQS (IRQ_EINT_GROUP9_BASE + IRQ_EINT_GROUP9_NR + 1) #define NR_IRQS (IRQ_BOARD_END + 1)
#endif /* __ASM_PLAT_S3C64XX_IRQS_H */ #endif /* __ASM_PLAT_S3C64XX_IRQS_H */

View File

@ -302,8 +302,8 @@ static int s3c64xx_setrate_clksrc(struct clk *clk, unsigned long rate)
return -EINVAL; return -EINVAL;
val = __raw_readl(reg); val = __raw_readl(reg);
val &= ~(0xf << sclk->shift); val &= ~(0xf << sclk->divider_shift);
val |= (div - 1) << sclk->shift; val |= (div - 1) << sclk->divider_shift;
__raw_writel(val, reg); __raw_writel(val, reg);
return 0; return 0;
@ -328,6 +328,8 @@ static int s3c64xx_setparent_clksrc(struct clk *clk, struct clk *parent)
clksrc |= src_nr << sclk->shift; clksrc |= src_nr << sclk->shift;
__raw_writel(clksrc, S3C_CLK_SRC); __raw_writel(clksrc, S3C_CLK_SRC);
clk->parent = parent;
return 0; return 0;
} }
@ -343,7 +345,7 @@ static unsigned long s3c64xx_roundrate_clksrc(struct clk *clk,
if (rate > parent_rate) if (rate > parent_rate)
rate = parent_rate; rate = parent_rate;
else { else {
div = rate / parent_rate; div = parent_rate / rate;
if (div == 0) if (div == 0)
div = 1; div = 1;