* 's5p-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung: ARM: S3C2410: remove the now empty mach-s3c2410/irq.c ARM: S3C24XX: Move s3c24xx_irq_syscore_ops to plat-s3c24xx/irq.c ARM: S3C24xx: Fix missing struct for s3c2410_dma_chan ARM: SAMSUNG: Remove unused onenand plat functions ARM: EXYNOS4: Remove compiler warning on exynos4_pwm4_resume ARM: S5P: Fix compilation error for exynos4_defconfig ARM: S5P: Should be S3C_VA_USB_HSPHY instead of S5P_VA_XX ARM: S5P64X0: Fix SPI platform device name ARM: S5PV210: Fix possible null pointer dereference
Unified · Split
| @@ -91,6 +91,11 @@ config EXYNOS4_SETUP_FIMC · 90 unmodified lines | ||
| 91 | 91 | help |
| 92 | 92 | Common setup code for the camera interfaces. |
| 93 | 93 | |
| 94 | +config EXYNOS4_SETUP_USB_PHY | |
| 95 | + bool | |
| 96 | + help | |
| 97 | + Common setup code for USB PHY controller | |
| 98 | + | |
| 94 | 99 | # machine support |
| 95 | 100 | |
| 96 | 101 | menu "EXYNOS4 Machines" |
| @@ -176,6 +181,7 @@ config MACH_NURI · 79 unmodified lines | ||
| 176 | 181 | select EXYNOS4_SETUP_I2C3 |
| 177 | 182 | select EXYNOS4_SETUP_I2C5 |
| 178 | 183 | select EXYNOS4_SETUP_SDHCI |
| 184 | + select EXYNOS4_SETUP_USB_PHY | |
| 179 | 185 | select SAMSUNG_DEV_PWM |
| 180 | 186 | help |
| 181 | 187 | Machine support for Samsung Mobile NURI Board. |
| @@ -56,4 +56,4 @@ obj-$(CONFIG_EXYNOS4_SETUP_KEYPAD) += setup-keypad.o · 55 unmodified lines | ||
| 56 | 56 | obj-$(CONFIG_EXYNOS4_SETUP_SDHCI) += setup-sdhci.o |
| 57 | 57 | obj-$(CONFIG_EXYNOS4_SETUP_SDHCI_GPIO) += setup-sdhci-gpio.o |
| 58 | 58 | |
| 59 | −obj-$(CONFIG_USB_SUPPORT) += usb-phy.o | |
| 59 | +obj-$(CONFIG_EXYNOS4_SETUP_USB_PHY) += setup-usb-phy.o | |
| @@ -98,7 +98,7 @@ static struct map_desc exynos4_iodesc[] __initdata = { · 97 unmodified lines | ||
| 98 | 98 | .length = SZ_4K, |
| 99 | 99 | .type = MT_DEVICE, |
| 100 | 100 | }, { |
| 101 | − .virtual = (unsigned long)S5P_VA_USB_HSPHY, | |
| 101 | + .virtual = (unsigned long)S3C_VA_USB_HSPHY, | |
| 102 | 102 | .pfn = __phys_to_pfn(EXYNOS4_PA_HSPHY), |
| 103 | 103 | .length = SZ_4K, |
| 104 | 104 | .type = MT_DEVICE, |
| @@ -11,7 +11,7 @@ · 10 unmodified lines | ||
| 11 | 11 | #ifndef __PLAT_S5P_REGS_USB_PHY_H |
| 12 | 12 | #define __PLAT_S5P_REGS_USB_PHY_H |
| 13 | 13 | |
| 14 | −#define EXYNOS4_HSOTG_PHYREG(x) ((x) + S5P_VA_USB_HSPHY) | |
| 14 | +#define EXYNOS4_HSOTG_PHYREG(x) ((x) + S3C_VA_USB_HSPHY) | |
| 15 | 15 | |
| 16 | 16 | #define EXYNOS4_PHYPWR EXYNOS4_HSOTG_PHYREG(0x00) |
| 17 | 17 | #define PHY1_HSIC_NORMAL_MASK (0xf << 9) |
File renamed without changes.
| @@ -206,6 +206,7 @@ static cycle_t exynos4_pwm4_read(struct clocksource *cs) · 205 unmodified lines | ||
| 206 | 206 | return (cycle_t) ~__raw_readl(S3C_TIMERREG(0x40)); |
| 207 | 207 | } |
| 208 | 208 | |
| 209 | +#ifdef CONFIG_PM | |
| 209 | 210 | static void exynos4_pwm4_resume(struct clocksource *cs) |
| 210 | 211 | { |
| 211 | 212 | unsigned long pclk; |
| @@ -218,6 +219,7 @@ static void exynos4_pwm4_resume(struct clocksource *cs) · 6 unmodified lines | ||
| 218 | 219 | exynos4_pwm_init(4, ~0); |
| 219 | 220 | exynos4_pwm_start(4, 1); |
| 220 | 221 | } |
| 222 | +#endif | |
| 221 | 223 | |
| 222 | 224 | struct clocksource pwm_clocksource = { |
| 223 | 225 | .name = "pwm_timer4", |
| @@ -10,7 +10,6 @@ obj-n := · 9 unmodified lines | ||
| 10 | 10 | obj- := |
| 11 | 11 | |
| 12 | 12 | obj-$(CONFIG_CPU_S3C2410) += s3c2410.o |
| 13 | −obj-$(CONFIG_CPU_S3C2410) += irq.o | |
| 14 | 13 | obj-$(CONFIG_CPU_S3C2410_DMA) += dma.o |
| 15 | 14 | obj-$(CONFIG_CPU_S3C2410_DMA) += dma.o |
| 16 | 15 | obj-$(CONFIG_S3C2410_PM) += pm.o sleep.o |
| @@ -1,34 +0,0 @@ | ||
| 1 | −/* linux/arch/arm/mach-s3c2410/irq.c | |
| 2 | − * | |
| 3 | − * Copyright (c) 2006 Simtec Electronics | |
| 4 | − * Ben Dooks <ben@simtec.co.uk> | |
| 5 | − * | |
| 6 | − * This program is free software; you can redistribute it and/or modify | |
| 7 | − * it under the terms of the GNU General Public License as published by | |
| 8 | − * the Free Software Foundation; either version 2 of the License, or | |
| 9 | − * (at your option) any later version. | |
| 10 | − * | |
| 11 | − * This program is distributed in the hope that it will be useful, | |
| 12 | − * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
| 13 | − * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
| 14 | − * GNU General Public License for more details. | |
| 15 | − * | |
| 16 | − * You should have received a copy of the GNU General Public License | |
| 17 | − * along with this program; if not, write to the Free Software | |
| 18 | − * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
| 19 | − * | |
| 20 | −*/ | |
| 21 | − | |
| 22 | −#include <linux/init.h> | |
| 23 | −#include <linux/module.h> | |
| 24 | −#include <linux/interrupt.h> | |
| 25 | −#include <linux/ioport.h> | |
| 26 | −#include <linux/syscore_ops.h> | |
| 27 | − | |
| 28 | −#include <plat/cpu.h> | |
| 29 | −#include <plat/pm.h> | |
| 30 | − | |
| 31 | −struct syscore_ops s3c24xx_irq_syscore_ops = { | |
| 32 | − .suspend = s3c24xx_irq_suspend, | |
| 33 | − .resume = s3c24xx_irq_resume, | |
| 34 | −}; | |
| @@ -101,12 +101,14 @@ static void s5pv210_set_refresh(enum s5pv210_dmc_port ch, unsigned long freq) · 100 unmodified lines | ||
| 101 | 101 | unsigned long tmp, tmp1; |
| 102 | 102 | void __iomem *reg = NULL; |
| 103 | 103 | |
| 104 | − if (ch == DMC0) | |
| 104 | + if (ch == DMC0) { | |
| 105 | 105 | reg = (S5P_VA_DMC0 + 0x30); |
| 106 | − else if (ch == DMC1) | |
| 106 | + } else if (ch == DMC1) { | |
| 107 | 107 | reg = (S5P_VA_DMC1 + 0x30); |
| 108 | − else | |
| 108 | + } else { | |
| 109 | 109 | printk(KERN_ERR "Cannot find DMC port\n"); |
| 110 | + return; | |
| 111 | + } | |
| 110 | 112 | |
| 111 | 113 | /* Find current DRAM frequency */ |
| 112 | 114 | tmp = s5pv210_dram_conf[ch].freq; |
| @@ -1199,7 +1199,7 @@ EXPORT_SYMBOL(s3c2410_dma_getposition); · 1198 unmodified lines | ||
| 1199 | 1199 | |
| 1200 | 1200 | #ifdef CONFIG_PM |
| 1201 | 1201 | |
| 1202 | −static void s3c2410_dma_suspend_chan(s3c2410_dma_chan *cp) | |
| 1202 | +static void s3c2410_dma_suspend_chan(struct s3c2410_dma_chan *cp) | |
| 1203 | 1203 | { |
| 1204 | 1204 | printk(KERN_DEBUG "suspending dma channel %d\n", cp->number); |
| 1205 | 1205 | |
| @@ -23,6 +23,7 @@ · 22 unmodified lines | ||
| 23 | 23 | #include <linux/interrupt.h> |
| 24 | 24 | #include <linux/ioport.h> |
| 25 | 25 | #include <linux/sysdev.h> |
| 26 | +#include <linux/syscore_ops.h> | |
| 26 | 27 | |
| 27 | 28 | #include <asm/irq.h> |
| 28 | 29 | #include <asm/mach/irq.h> |
| @@ -668,3 +669,8 @@ void __init s3c24xx_init_irq(void) · 639 unmodified lines | ||
| 668 | 669 | |
| 669 | 670 | irqdbf("s3c2410: registered interrupt handlers\n"); |
| 670 | 671 | } |
| 672 | + | |
| 673 | +struct syscore_ops s3c24xx_irq_syscore_ops = { | |
| 674 | + .suspend = s3c24xx_irq_suspend, | |
| 675 | + .resume = s3c24xx_irq_resume, | |
| 676 | +}; | |
| @@ -15,8 +15,6 @@ · 14 unmodified lines | ||
| 15 | 15 | |
| 16 | 16 | #include <linux/kernel.h> |
| 17 | 17 | #include <linux/platform_device.h> |
| 18 | −#include <linux/mtd/mtd.h> | |
| 19 | −#include <linux/mtd/onenand.h> | |
| 20 | 18 | |
| 21 | 19 | #include <mach/irqs.h> |
| 22 | 20 | #include <mach/map.h> |
| @@ -45,13 +43,3 @@ struct platform_device s5p_device_onenand = { · 22 unmodified lines | ||
| 45 | 43 | .num_resources = ARRAY_SIZE(s5p_onenand_resources), |
| 46 | 44 | .resource = s5p_onenand_resources, |
| 47 | 45 | }; |
| 48 | − | |
| 49 | −void s5p_onenand_set_platdata(struct onenand_platform_data *pdata) | |
| 50 | −{ | |
| 51 | − struct onenand_platform_data *pd; | |
| 52 | − | |
| 53 | − pd = kmemdup(pdata, sizeof(struct onenand_platform_data), GFP_KERNEL); | |
| 54 | − if (!pd) | |
| 55 | − printk(KERN_ERR "%s: no memory for platform data\n", __func__); | |
| 56 | − s5p_device_onenand.dev.platform_data = pd; | |
| 57 | −} | |
| @@ -39,7 +39,7 @@ · 38 unmodified lines | ||
| 39 | 39 | #define S5P_VA_TWD S5P_VA_COREPERI(0x600) |
| 40 | 40 | #define S5P_VA_GIC_DIST S5P_VA_COREPERI(0x1000) |
| 41 | 41 | |
| 42 | −#define S5P_VA_USB_HSPHY S3C_ADDR(0x02900000) | |
| 42 | +#define S3C_VA_USB_HSPHY S3C_ADDR(0x02900000) | |
| 43 | 43 | |
| 44 | 44 | #define VA_VIC(x) (S3C_VA_IRQ + ((x) * 0x10000)) |
| 45 | 45 | #define VA_VIC0 VA_VIC(0) |
| @@ -13,8 +13,6 @@ · 12 unmodified lines | ||
| 13 | 13 | |
| 14 | 14 | #include <linux/kernel.h> |
| 15 | 15 | #include <linux/platform_device.h> |
| 16 | −#include <linux/mtd/mtd.h> | |
| 17 | −#include <linux/mtd/onenand.h> | |
| 18 | 16 | |
| 19 | 17 | #include <mach/irqs.h> |
| 20 | 18 | #include <mach/map.h> |
| @@ -43,13 +41,3 @@ struct platform_device s3c_device_onenand = { · 22 unmodified lines | ||
| 43 | 41 | .num_resources = ARRAY_SIZE(s3c_onenand_resources), |
| 44 | 42 | .resource = s3c_onenand_resources, |
| 45 | 43 | }; |
| 46 | − | |
| 47 | −void s3c_onenand_set_platdata(struct onenand_platform_data *pdata) | |
| 48 | −{ | |
| 49 | − struct onenand_platform_data *pd; | |
| 50 | − | |
| 51 | − pd = kmemdup(pdata, sizeof(struct onenand_platform_data), GFP_KERNEL); | |
| 52 | − if (!pd) | |
| 53 | − printk(KERN_ERR "%s: no memory for platform data\n", __func__); | |
| 54 | − s3c_device_onenand.dev.platform_data = pd; | |
| 55 | −} | |
| @@ -75,10 +75,8 @@ extern struct platform_device s5pc100_device_spi1; · 74 unmodified lines | ||
| 75 | 75 | extern struct platform_device s5pc100_device_spi2; |
| 76 | 76 | extern struct platform_device s5pv210_device_spi0; |
| 77 | 77 | extern struct platform_device s5pv210_device_spi1; |
| 78 | −extern struct platform_device s5p6440_device_spi0; | |
| 79 | −extern struct platform_device s5p6440_device_spi1; | |
| 80 | −extern struct platform_device s5p6450_device_spi0; | |
| 81 | −extern struct platform_device s5p6450_device_spi1; | |
| 78 | +extern struct platform_device s5p64x0_device_spi0; | |
| 79 | +extern struct platform_device s5p64x0_device_spi1; | |
| 82 | 80 | |
| 83 | 81 | extern struct platform_device s3c_device_hwmon; |
| 84 | 82 | |