Commit bf1fa6f1 authored by Linus Torvalds's avatar Linus Torvalds

Merge tag 'soc-arm-6.5' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc

Pull ARM SoC updates from Arnd Bergmann:
 "These are mostly minor cleanups and bugfixes that address harmless
  problems.

  The largest branch is a conversion of the omap platform to use GPIO
  descriptors throughout the tree, for any devices that are not fully
  converted to devicetree.

  The Samsung Exynos platform gains back support for the Exynos4212 chip
  that was previously unused and removed but is now used for the Samsung
  Galaxy Tab3"

* tag 'soc-arm-6.5' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (24 commits)
  ARM: omap2: Fix copy/paste bug
  MAINTAINERS: Replace my email address
  Input: ads7846 - fix pointer cast warning
  Input: ads7846 - Fix usage of match data
  ARM: omap2: Fix checkpatch issues
  arm: omap1: replace printk() with pr_err macro
  ARM: omap: Fix checkpatch issues
  ARM: s3c: Switch i2c drivers back to use .probe()
  ARM: versatile: mark mmc_status() static
  ARM: spear: include "pl080.h" for pl080_get_signal() prototype
  ARM: sa1100: address missing prototype warnings
  ARM: pxa: fix missing-prototypes warnings
  ARM: orion5x: fix d2net gpio initialization
  ARM: omap2: fix missing tick_broadcast() prototype
  ARM: omap1: add missing include
  ARM: lpc32xx: add missing include
  ARM: imx: add missing include
  ARM: highbank: add missing include
  ARM: ep93xx: fix missing-prototype warnings
  ARM: davinci: fix davinci_cpufreq_init() declaration
  ...
parents 0873694a c1d57ee6
...@@ -3893,7 +3893,7 @@ S: Supported ...@@ -3893,7 +3893,7 @@ S: Supported
F: drivers/net/ethernet/broadcom/b44.* F: drivers/net/ethernet/broadcom/b44.*
BROADCOM B53/SF2 ETHERNET SWITCH DRIVER BROADCOM B53/SF2 ETHERNET SWITCH DRIVER
M: Florian Fainelli <f.fainelli@gmail.com> M: Florian Fainelli <florian.fainelli@broadcom.com>
L: netdev@vger.kernel.org L: netdev@vger.kernel.org
L: openwrt-devel@lists.openwrt.org (subscribers-only) L: openwrt-devel@lists.openwrt.org (subscribers-only)
S: Supported S: Supported
...@@ -3904,7 +3904,7 @@ F: include/linux/dsa/brcm.h ...@@ -3904,7 +3904,7 @@ F: include/linux/dsa/brcm.h
F: include/linux/platform_data/b53.h F: include/linux/platform_data/b53.h
BROADCOM BCM2711/BCM2835 ARM ARCHITECTURE BROADCOM BCM2711/BCM2835 ARM ARCHITECTURE
M: Florian Fainelli <f.fainelli@gmail.com> M: Florian Fainelli <florian.fainelli@broadcom.com>
R: Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com> R: Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com>
L: linux-rpi-kernel@lists.infradead.org (moderated for non-subscribers) L: linux-rpi-kernel@lists.infradead.org (moderated for non-subscribers)
L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers) L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
...@@ -3918,7 +3918,7 @@ N: bcm283* ...@@ -3918,7 +3918,7 @@ N: bcm283*
N: raspberrypi N: raspberrypi
BROADCOM BCM281XX/BCM11XXX/BCM216XX ARM ARCHITECTURE BROADCOM BCM281XX/BCM11XXX/BCM216XX ARM ARCHITECTURE
M: Florian Fainelli <f.fainelli@gmail.com> M: Florian Fainelli <florian.fainelli@broadcom.com>
M: Ray Jui <rjui@broadcom.com> M: Ray Jui <rjui@broadcom.com>
M: Scott Branden <sbranden@broadcom.com> M: Scott Branden <sbranden@broadcom.com>
R: Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com> R: Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com>
...@@ -3957,7 +3957,7 @@ F: Documentation/devicetree/bindings/pinctrl/brcm,bcm4908-pinctrl.yaml ...@@ -3957,7 +3957,7 @@ F: Documentation/devicetree/bindings/pinctrl/brcm,bcm4908-pinctrl.yaml
F: drivers/pinctrl/bcm/pinctrl-bcm4908.c F: drivers/pinctrl/bcm/pinctrl-bcm4908.c
BROADCOM BCM5301X ARM ARCHITECTURE BROADCOM BCM5301X ARM ARCHITECTURE
M: Florian Fainelli <f.fainelli@gmail.com> M: Florian Fainelli <florian.fainelli@broadcom.com>
M: Hauke Mehrtens <hauke@hauke-m.de> M: Hauke Mehrtens <hauke@hauke-m.de>
M: Rafał Miłecki <zajec5@gmail.com> M: Rafał Miłecki <zajec5@gmail.com>
R: Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com> R: Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com>
...@@ -3970,7 +3970,7 @@ F: arch/arm/boot/dts/broadcom/bcm953012* ...@@ -3970,7 +3970,7 @@ F: arch/arm/boot/dts/broadcom/bcm953012*
F: arch/arm/mach-bcm/bcm_5301x.c F: arch/arm/mach-bcm/bcm_5301x.c
BROADCOM BCM53573 ARM ARCHITECTURE BROADCOM BCM53573 ARM ARCHITECTURE
M: Florian Fainelli <f.fainelli@gmail.com> M: Florian Fainelli <florian.fainelli@broadcom.com>
M: Rafał Miłecki <rafal@milecki.pl> M: Rafał Miłecki <rafal@milecki.pl>
R: Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com> R: Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com>
L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers) L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
...@@ -3985,7 +3985,7 @@ S: Maintained ...@@ -3985,7 +3985,7 @@ S: Maintained
F: drivers/usb/gadget/udc/bcm63xx_udc.* F: drivers/usb/gadget/udc/bcm63xx_udc.*
BROADCOM BCM7XXX ARM ARCHITECTURE BROADCOM BCM7XXX ARM ARCHITECTURE
M: Florian Fainelli <f.fainelli@gmail.com> M: Florian Fainelli <florian.fainelli@broadcom.com>
R: Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com> R: Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com>
L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers) L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
S: Maintained S: Maintained
...@@ -4005,7 +4005,7 @@ BROADCOM BCMBCA ARM ARCHITECTURE ...@@ -4005,7 +4005,7 @@ BROADCOM BCMBCA ARM ARCHITECTURE
M: William Zhang <william.zhang@broadcom.com> M: William Zhang <william.zhang@broadcom.com>
M: Anand Gore <anand.gore@broadcom.com> M: Anand Gore <anand.gore@broadcom.com>
M: Kursad Oney <kursad.oney@broadcom.com> M: Kursad Oney <kursad.oney@broadcom.com>
M: Florian Fainelli <f.fainelli@gmail.com> M: Florian Fainelli <florian.fainelli@broadcom.com>
M: Rafał Miłecki <rafal@milecki.pl> M: Rafał Miłecki <rafal@milecki.pl>
R: Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com> R: Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com>
L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers) L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
...@@ -4030,7 +4030,7 @@ N: bcm[9]?6858 ...@@ -4030,7 +4030,7 @@ N: bcm[9]?6858
N: bcm[9]?6878 N: bcm[9]?6878
BROADCOM BDC DRIVER BROADCOM BDC DRIVER
M: Justin Chen <justinpopo6@gmail.com> M: Justin Chen <justin.chen@broadcom.com>
M: Al Cooper <alcooperx@gmail.com> M: Al Cooper <alcooperx@gmail.com>
R: Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com> R: Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com>
L: linux-usb@vger.kernel.org L: linux-usb@vger.kernel.org
...@@ -4046,7 +4046,7 @@ S: Maintained ...@@ -4046,7 +4046,7 @@ S: Maintained
F: drivers/cpufreq/bmips-cpufreq.c F: drivers/cpufreq/bmips-cpufreq.c
BROADCOM BMIPS MIPS ARCHITECTURE BROADCOM BMIPS MIPS ARCHITECTURE
M: Florian Fainelli <f.fainelli@gmail.com> M: Florian Fainelli <florian.fainelli@broadcom.com>
R: Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com> R: Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com>
L: linux-mips@vger.kernel.org L: linux-mips@vger.kernel.org
S: Maintained S: Maintained
...@@ -4114,14 +4114,14 @@ F: drivers/net/wireless/broadcom/brcm80211/ ...@@ -4114,14 +4114,14 @@ F: drivers/net/wireless/broadcom/brcm80211/
BROADCOM BRCMSTB GPIO DRIVER BROADCOM BRCMSTB GPIO DRIVER
M: Doug Berger <opendmb@gmail.com> M: Doug Berger <opendmb@gmail.com>
M: Florian Fainelli <f.fainelli@gmail.com> M: Florian Fainelli <florian.fainelli@broadcom>
R: Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com> R: Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com>
S: Supported S: Supported
F: Documentation/devicetree/bindings/gpio/brcm,brcmstb-gpio.yaml F: Documentation/devicetree/bindings/gpio/brcm,brcmstb-gpio.yaml
F: drivers/gpio/gpio-brcmstb.c F: drivers/gpio/gpio-brcmstb.c
BROADCOM BRCMSTB I2C DRIVER BROADCOM BRCMSTB I2C DRIVER
M: Kamal Dasu <kdasu.kdev@gmail.com> M: Kamal Dasu <kamal.dasu@broadcom.com>
R: Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com> R: Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com>
L: linux-i2c@vger.kernel.org L: linux-i2c@vger.kernel.org
S: Supported S: Supported
...@@ -4137,7 +4137,7 @@ F: Documentation/devicetree/bindings/serial/brcm,bcm7271-uart.yaml ...@@ -4137,7 +4137,7 @@ F: Documentation/devicetree/bindings/serial/brcm,bcm7271-uart.yaml
F: drivers/tty/serial/8250/8250_bcm7271.c F: drivers/tty/serial/8250/8250_bcm7271.c
BROADCOM BRCMSTB USB EHCI DRIVER BROADCOM BRCMSTB USB EHCI DRIVER
M: Justin Chen <justinpopo6@gmail.com> M: Justin Chen <justin.chen@broadcom.com>
M: Al Cooper <alcooperx@gmail.com> M: Al Cooper <alcooperx@gmail.com>
R: Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com> R: Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com>
L: linux-usb@vger.kernel.org L: linux-usb@vger.kernel.org
...@@ -4154,7 +4154,7 @@ F: Documentation/devicetree/bindings/usb/brcm,usb-pinmap.yaml ...@@ -4154,7 +4154,7 @@ F: Documentation/devicetree/bindings/usb/brcm,usb-pinmap.yaml
F: drivers/usb/misc/brcmstb-usb-pinmap.c F: drivers/usb/misc/brcmstb-usb-pinmap.c
BROADCOM BRCMSTB USB2 and USB3 PHY DRIVER BROADCOM BRCMSTB USB2 and USB3 PHY DRIVER
M: Justin Chen <justinpopo6@gmail.com> M: Justin Chen <justin.chen@broadcom.com>
M: Al Cooper <alcooperx@gmail.com> M: Al Cooper <alcooperx@gmail.com>
R: Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com> R: Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com>
L: linux-kernel@vger.kernel.org L: linux-kernel@vger.kernel.org
...@@ -4173,7 +4173,7 @@ F: drivers/spi/spi-bcm63xx-hsspi.c ...@@ -4173,7 +4173,7 @@ F: drivers/spi/spi-bcm63xx-hsspi.c
F: drivers/spi/spi-bcmbca-hsspi.c F: drivers/spi/spi-bcmbca-hsspi.c
BROADCOM ETHERNET PHY DRIVERS BROADCOM ETHERNET PHY DRIVERS
M: Florian Fainelli <f.fainelli@gmail.com> M: Florian Fainelli <florian.fainelli@broadcom.com>
R: Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com> R: Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com>
L: netdev@vger.kernel.org L: netdev@vger.kernel.org
S: Supported S: Supported
...@@ -4184,7 +4184,7 @@ F: include/linux/brcmphy.h ...@@ -4184,7 +4184,7 @@ F: include/linux/brcmphy.h
BROADCOM GENET ETHERNET DRIVER BROADCOM GENET ETHERNET DRIVER
M: Doug Berger <opendmb@gmail.com> M: Doug Berger <opendmb@gmail.com>
M: Florian Fainelli <f.fainelli@gmail.com> M: Florian Fainelli <florian.fainelli@broadcom.com>
R: Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com> R: Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com>
L: netdev@vger.kernel.org L: netdev@vger.kernel.org
S: Supported S: Supported
...@@ -4268,7 +4268,7 @@ F: drivers/firmware/broadcom/* ...@@ -4268,7 +4268,7 @@ F: drivers/firmware/broadcom/*
BROADCOM PMB (POWER MANAGEMENT BUS) DRIVER BROADCOM PMB (POWER MANAGEMENT BUS) DRIVER
M: Rafał Miłecki <rafal@milecki.pl> M: Rafał Miłecki <rafal@milecki.pl>
M: Florian Fainelli <f.fainelli@gmail.com> M: Florian Fainelli <florian.fainelli@broadcom.com>
R: Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com> R: Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com>
L: linux-pm@vger.kernel.org L: linux-pm@vger.kernel.org
S: Maintained S: Maintained
...@@ -4284,7 +4284,7 @@ F: drivers/bcma/ ...@@ -4284,7 +4284,7 @@ F: drivers/bcma/
F: include/linux/bcma/ F: include/linux/bcma/
BROADCOM SPI DRIVER BROADCOM SPI DRIVER
M: Kamal Dasu <kdasu.kdev@gmail.com> M: Kamal Dasu <kamal.dasu@broadcom.com>
R: Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com> R: Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com>
S: Maintained S: Maintained
F: Documentation/devicetree/bindings/spi/brcm,spi-bcm-qspi.yaml F: Documentation/devicetree/bindings/spi/brcm,spi-bcm-qspi.yaml
...@@ -4318,7 +4318,7 @@ F: drivers/memory/brcmstb_dpfe.c ...@@ -4318,7 +4318,7 @@ F: drivers/memory/brcmstb_dpfe.c
BROADCOM STB NAND FLASH DRIVER BROADCOM STB NAND FLASH DRIVER
M: Brian Norris <computersforpeace@gmail.com> M: Brian Norris <computersforpeace@gmail.com>
M: Kamal Dasu <kdasu.kdev@gmail.com> M: Kamal Dasu <kamal.dasu@broadcom.com>
R: Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com> R: Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com>
L: linux-mtd@lists.infradead.org L: linux-mtd@lists.infradead.org
S: Maintained S: Maintained
...@@ -4328,7 +4328,7 @@ F: include/linux/platform_data/brcmnand.h ...@@ -4328,7 +4328,7 @@ F: include/linux/platform_data/brcmnand.h
BROADCOM STB PCIE DRIVER BROADCOM STB PCIE DRIVER
M: Jim Quinlan <jim2101024@gmail.com> M: Jim Quinlan <jim2101024@gmail.com>
M: Nicolas Saenz Julienne <nsaenz@kernel.org> M: Nicolas Saenz Julienne <nsaenz@kernel.org>
M: Florian Fainelli <f.fainelli@gmail.com> M: Florian Fainelli <florian.fainelli@broadcom.com>
R: Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com> R: Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com>
L: linux-pci@vger.kernel.org L: linux-pci@vger.kernel.org
S: Maintained S: Maintained
...@@ -4336,7 +4336,7 @@ F: Documentation/devicetree/bindings/pci/brcm,stb-pcie.yaml ...@@ -4336,7 +4336,7 @@ F: Documentation/devicetree/bindings/pci/brcm,stb-pcie.yaml
F: drivers/pci/controller/pcie-brcmstb.c F: drivers/pci/controller/pcie-brcmstb.c
BROADCOM SYSTEMPORT ETHERNET DRIVER BROADCOM SYSTEMPORT ETHERNET DRIVER
M: Florian Fainelli <f.fainelli@gmail.com> M: Florian Fainelli <florian.fainelli@broadcom.com>
R: Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com> R: Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com>
L: netdev@vger.kernel.org L: netdev@vger.kernel.org
S: Supported S: Supported
...@@ -19032,7 +19032,7 @@ K: \bsecure_computing ...@@ -19032,7 +19032,7 @@ K: \bsecure_computing
K: \bTIF_SECCOMP\b K: \bTIF_SECCOMP\b
SECURE DIGITAL HOST CONTROLLER INTERFACE (SDHCI) Broadcom BRCMSTB DRIVER SECURE DIGITAL HOST CONTROLLER INTERFACE (SDHCI) Broadcom BRCMSTB DRIVER
M: Kamal Dasu <kdasu.kdev@gmail.com> M: Kamal Dasu <kamal.dasu@broadcom.com>
M: Al Cooper <alcooperx@gmail.com> M: Al Cooper <alcooperx@gmail.com>
R: Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com> R: Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com>
L: linux-mmc@vger.kernel.org L: linux-mmc@vger.kernel.org
......
...@@ -695,7 +695,7 @@ static u32 sa1111_dma_mask[] = { ...@@ -695,7 +695,7 @@ static u32 sa1111_dma_mask[] = {
/* /*
* Configure the SA1111 shared memory controller. * Configure the SA1111 shared memory controller.
*/ */
void static void
sa1111_configure_smc(struct sa1111 *sachip, int sdram, unsigned int drac, sa1111_configure_smc(struct sa1111 *sachip, int sdram, unsigned int drac,
unsigned int cas_latency) unsigned int cas_latency)
{ {
......
...@@ -11,6 +11,7 @@ ...@@ -11,6 +11,7 @@
#include <linux/etherdevice.h> #include <linux/etherdevice.h>
#include <linux/davinci_emac.h> #include <linux/davinci_emac.h>
#include <linux/dma-mapping.h> #include <linux/dma-mapping.h>
#include <linux/platform_data/davinci-cpufreq.h>
#include <asm/tlb.h> #include <asm/tlb.h>
#include <asm/mach/map.h> #include <asm/mach/map.h>
......
...@@ -55,12 +55,6 @@ extern void davinci_common_init(const struct davinci_soc_info *soc_info); ...@@ -55,12 +55,6 @@ extern void davinci_common_init(const struct davinci_soc_info *soc_info);
extern void davinci_init_ide(void); extern void davinci_init_ide(void);
void davinci_init_late(void); void davinci_init_late(void);
#ifdef CONFIG_CPU_FREQ
int davinci_cpufreq_init(void);
#else
static inline int davinci_cpufreq_init(void) { return 0; }
#endif
#ifdef CONFIG_SUSPEND #ifdef CONFIG_SUSPEND
int davinci_pm_init(void); int davinci_pm_init(void);
#else #else
......
...@@ -9,6 +9,7 @@ ...@@ -9,6 +9,7 @@
#include <linux/io.h> #include <linux/io.h>
#include <asm/mach/time.h> #include <asm/mach/time.h>
#include "soc.h" #include "soc.h"
#include "platform.h"
/************************************************************************* /*************************************************************************
* Timer handling for EP93xx * Timer handling for EP93xx
...@@ -60,7 +61,7 @@ static u64 notrace ep93xx_read_sched_clock(void) ...@@ -60,7 +61,7 @@ static u64 notrace ep93xx_read_sched_clock(void)
return ret; return ret;
} }
u64 ep93xx_clocksource_read(struct clocksource *c) static u64 ep93xx_clocksource_read(struct clocksource *c)
{ {
u64 ret; u64 ret;
......
...@@ -78,6 +78,11 @@ config CPU_EXYNOS4210 ...@@ -78,6 +78,11 @@ config CPU_EXYNOS4210
default y default y
depends on ARCH_EXYNOS4 depends on ARCH_EXYNOS4
config SOC_EXYNOS4212
bool "Samsung Exynos4212"
default y
depends on ARCH_EXYNOS4
config SOC_EXYNOS4412 config SOC_EXYNOS4412
bool "Samsung Exynos4412" bool "Samsung Exynos4412"
default y default y
......
...@@ -15,6 +15,7 @@ ...@@ -15,6 +15,7 @@
#define EXYNOS3_SOC_MASK 0xFFFFF000 #define EXYNOS3_SOC_MASK 0xFFFFF000
#define EXYNOS4210_CPU_ID 0x43210000 #define EXYNOS4210_CPU_ID 0x43210000
#define EXYNOS4212_CPU_ID 0x43220000
#define EXYNOS4412_CPU_ID 0xE4412200 #define EXYNOS4412_CPU_ID 0xE4412200
#define EXYNOS4_CPU_MASK 0xFFFE0000 #define EXYNOS4_CPU_MASK 0xFFFE0000
...@@ -34,6 +35,7 @@ static inline int is_samsung_##name(void) \ ...@@ -34,6 +35,7 @@ static inline int is_samsung_##name(void) \
IS_SAMSUNG_CPU(exynos3250, EXYNOS3250_SOC_ID, EXYNOS3_SOC_MASK) IS_SAMSUNG_CPU(exynos3250, EXYNOS3250_SOC_ID, EXYNOS3_SOC_MASK)
IS_SAMSUNG_CPU(exynos4210, EXYNOS4210_CPU_ID, EXYNOS4_CPU_MASK) IS_SAMSUNG_CPU(exynos4210, EXYNOS4210_CPU_ID, EXYNOS4_CPU_MASK)
IS_SAMSUNG_CPU(exynos4212, EXYNOS4212_CPU_ID, EXYNOS4_CPU_MASK)
IS_SAMSUNG_CPU(exynos4412, EXYNOS4412_CPU_ID, EXYNOS4_CPU_MASK) IS_SAMSUNG_CPU(exynos4412, EXYNOS4412_CPU_ID, EXYNOS4_CPU_MASK)
IS_SAMSUNG_CPU(exynos5250, EXYNOS5250_SOC_ID, EXYNOS5_SOC_MASK) IS_SAMSUNG_CPU(exynos5250, EXYNOS5250_SOC_ID, EXYNOS5_SOC_MASK)
IS_SAMSUNG_CPU(exynos5410, EXYNOS5410_SOC_ID, EXYNOS5_SOC_MASK) IS_SAMSUNG_CPU(exynos5410, EXYNOS5410_SOC_ID, EXYNOS5_SOC_MASK)
...@@ -52,6 +54,12 @@ IS_SAMSUNG_CPU(exynos5800, EXYNOS5800_SOC_ID, EXYNOS5_SOC_MASK) ...@@ -52,6 +54,12 @@ IS_SAMSUNG_CPU(exynos5800, EXYNOS5800_SOC_ID, EXYNOS5_SOC_MASK)
# define soc_is_exynos4210() 0 # define soc_is_exynos4210() 0
#endif #endif
#if defined(CONFIG_SOC_EXYNOS4212)
# define soc_is_exynos4212() is_samsung_exynos4212()
#else
# define soc_is_exynos4212() 0
#endif
#if defined(CONFIG_SOC_EXYNOS4412) #if defined(CONFIG_SOC_EXYNOS4412)
# define soc_is_exynos4412() is_samsung_exynos4412() # define soc_is_exynos4412() is_samsung_exynos4412()
#else #else
......
...@@ -180,6 +180,7 @@ static void __init exynos_dt_machine_init(void) ...@@ -180,6 +180,7 @@ static void __init exynos_dt_machine_init(void)
exynos_cpuidle.dev.platform_data = &cpuidle_coupled_exynos_data; exynos_cpuidle.dev.platform_data = &cpuidle_coupled_exynos_data;
#endif #endif
if (of_machine_is_compatible("samsung,exynos4210") || if (of_machine_is_compatible("samsung,exynos4210") ||
of_machine_is_compatible("samsung,exynos4212") ||
(of_machine_is_compatible("samsung,exynos4412") && (of_machine_is_compatible("samsung,exynos4412") &&
(of_machine_is_compatible("samsung,trats2") || (of_machine_is_compatible("samsung,trats2") ||
of_machine_is_compatible("samsung,midas") || of_machine_is_compatible("samsung,midas") ||
...@@ -194,6 +195,7 @@ static char const *const exynos_dt_compat[] __initconst = { ...@@ -194,6 +195,7 @@ static char const *const exynos_dt_compat[] __initconst = {
"samsung,exynos3250", "samsung,exynos3250",
"samsung,exynos4", "samsung,exynos4",
"samsung,exynos4210", "samsung,exynos4210",
"samsung,exynos4212",
"samsung,exynos4412", "samsung,exynos4412",
"samsung,exynos5", "samsung,exynos5",
"samsung,exynos5250", "samsung,exynos5250",
......
...@@ -63,12 +63,18 @@ static int exynos_cpu_boot(int cpu) ...@@ -63,12 +63,18 @@ static int exynos_cpu_boot(int cpu)
* *
* On Exynos5 devices the call is ignored by trustzone firmware. * On Exynos5 devices the call is ignored by trustzone firmware.
*/ */
if (!soc_is_exynos4210() && !soc_is_exynos4412()) if (!soc_is_exynos4210() && !soc_is_exynos4212() &&
!soc_is_exynos4412())
return 0; return 0;
/* /*
* The second parameter of SMC_CMD_CPU1BOOT command means CPU id. * The second parameter of SMC_CMD_CPU1BOOT command means CPU id.
* But, Exynos4212 has only one secondary CPU so second parameter
* isn't used for informing secure firmware about CPU id.
*/ */
if (soc_is_exynos4212())
cpu = 0;
exynos_smc(SMC_CMD_CPU1BOOT, cpu, 0, 0); exynos_smc(SMC_CMD_CPU1BOOT, cpu, 0, 0);
return 0; return 0;
} }
......
...@@ -161,7 +161,7 @@ void exynos_enter_aftr(void) ...@@ -161,7 +161,7 @@ void exynos_enter_aftr(void)
exynos_pm_central_suspend(); exynos_pm_central_suspend();
if (soc_is_exynos4412()) { if (soc_is_exynos4212() || soc_is_exynos4412()) {
/* Setting SEQ_OPTION register */ /* Setting SEQ_OPTION register */
pmu_raw_writel(S5P_USE_STANDBY_WFI0 | S5P_USE_STANDBY_WFE0, pmu_raw_writel(S5P_USE_STANDBY_WFI0 | S5P_USE_STANDBY_WFE0,
S5P_CENTRAL_SEQ_OPTION); S5P_CENTRAL_SEQ_OPTION);
......
...@@ -231,6 +231,7 @@ static int __init exynos_pmu_irq_init(struct device_node *node, ...@@ -231,6 +231,7 @@ static int __init exynos_pmu_irq_init(struct device_node *node,
EXYNOS_PMU_IRQ(exynos3250_pmu_irq, "samsung,exynos3250-pmu"); EXYNOS_PMU_IRQ(exynos3250_pmu_irq, "samsung,exynos3250-pmu");
EXYNOS_PMU_IRQ(exynos4210_pmu_irq, "samsung,exynos4210-pmu"); EXYNOS_PMU_IRQ(exynos4210_pmu_irq, "samsung,exynos4210-pmu");
EXYNOS_PMU_IRQ(exynos4212_pmu_irq, "samsung,exynos4212-pmu");
EXYNOS_PMU_IRQ(exynos4412_pmu_irq, "samsung,exynos4412-pmu"); EXYNOS_PMU_IRQ(exynos4412_pmu_irq, "samsung,exynos4412-pmu");
EXYNOS_PMU_IRQ(exynos5250_pmu_irq, "samsung,exynos5250-pmu"); EXYNOS_PMU_IRQ(exynos5250_pmu_irq, "samsung,exynos5250-pmu");
EXYNOS_PMU_IRQ(exynos5420_pmu_irq, "samsung,exynos5420-pmu"); EXYNOS_PMU_IRQ(exynos5420_pmu_irq, "samsung,exynos5420-pmu");
...@@ -640,6 +641,9 @@ static const struct of_device_id exynos_pmu_of_device_ids[] __initconst = { ...@@ -640,6 +641,9 @@ static const struct of_device_id exynos_pmu_of_device_ids[] __initconst = {
}, { }, {
.compatible = "samsung,exynos4210-pmu", .compatible = "samsung,exynos4210-pmu",
.data = &exynos4_pm_data, .data = &exynos4_pm_data,
}, {
.compatible = "samsung,exynos4212-pmu",
.data = &exynos4_pm_data,
}, { }, {
.compatible = "samsung,exynos4412-pmu", .compatible = "samsung,exynos4412-pmu",
.data = &exynos4_pm_data, .data = &exynos4_pm_data,
......
...@@ -12,6 +12,8 @@ ...@@ -12,6 +12,8 @@
#include <uapi/linux/psci.h> #include <uapi/linux/psci.h>
#include "core.h"
#define HIGHBANK_SUSPEND_PARAM \ #define HIGHBANK_SUSPEND_PARAM \
((0 << PSCI_0_2_POWER_STATE_ID_SHIFT) | \ ((0 << PSCI_0_2_POWER_STATE_ID_SHIFT) | \
(1 << PSCI_0_2_POWER_STATE_AFFL_SHIFT) | \ (1 << PSCI_0_2_POWER_STATE_AFFL_SHIFT) | \
......
...@@ -6,6 +6,7 @@ ...@@ -6,6 +6,7 @@
#include <linux/kernel.h> #include <linux/kernel.h>
#include <linux/suspend.h> #include <linux/suspend.h>
#include <linux/io.h> #include <linux/io.h>
#include "common.h"
static int imx25_suspend_enter(suspend_state_t state) static int imx25_suspend_enter(suspend_state_t state)
{ {
......
...@@ -15,6 +15,7 @@ ...@@ -15,6 +15,7 @@
#include <linux/serial_8250.h> #include <linux/serial_8250.h>
#include <linux/clk.h> #include <linux/clk.h>
#include <linux/io.h> #include <linux/io.h>
#include <linux/soc/nxp/lpc32xx-misc.h>
#include "lpc32xx.h" #include "lpc32xx.h"
#include "common.h" #include "common.h"
......
...@@ -632,7 +632,7 @@ static int __init omap_pm_init(void) ...@@ -632,7 +632,7 @@ static int __init omap_pm_init(void)
error = sysfs_create_file(power_kobj, &sleep_while_idle_attr.attr); error = sysfs_create_file(power_kobj, &sleep_while_idle_attr.attr);
if (error) if (error)
printk(KERN_ERR "sysfs_create_file failed: %d\n", error); pr_err("sysfs_create_file failed: %d\n", error);
if (cpu_is_omap16xx()) { if (cpu_is_omap16xx()) {
/* configure LOW_PWR pin */ /* configure LOW_PWR pin */
......
...@@ -20,6 +20,7 @@ ...@@ -20,6 +20,7 @@
#include <asm/mach-types.h> #include <asm/mach-types.h>
#include "common.h"
#include "serial.h" #include "serial.h"
#include "mux.h" #include "mux.h"
#include "pm.h" #include "pm.h"
......
...@@ -23,7 +23,7 @@ ...@@ -23,7 +23,7 @@
#define OMAP1_SRAM_PA 0x20000000 #define OMAP1_SRAM_PA 0x20000000
#define SRAM_BOOTLOADER_SZ 0x80 #define SRAM_BOOTLOADER_SZ 0x80
#define ROUND_DOWN(value,boundary) ((value) & (~((boundary)-1))) #define ROUND_DOWN(value, boundary) ((value) & (~((boundary) - 1)))
static void __iomem *omap_sram_base; static void __iomem *omap_sram_base;
static unsigned long omap_sram_start; static unsigned long omap_sram_start;
......
...@@ -13,6 +13,7 @@ ...@@ -13,6 +13,7 @@
#include <linux/of_platform.h> #include <linux/of_platform.h>
#include <linux/irqdomain.h> #include <linux/irqdomain.h>
#include <linux/clocksource.h> #include <linux/clocksource.h>
#include <linux/clockchips.h>
#include <asm/setup.h> #include <asm/setup.h>
#include <asm/mach/arch.h> #include <asm/mach/arch.h>
......
...@@ -158,7 +158,7 @@ static struct gpiod_lookup_table nokia810_mmc_gpio_table = { ...@@ -158,7 +158,7 @@ static struct gpiod_lookup_table nokia810_mmc_gpio_table = {
"vsd", 1, GPIO_ACTIVE_HIGH), "vsd", 1, GPIO_ACTIVE_HIGH),
/* Slot index 1, VIO power, GPIO 9 */ /* Slot index 1, VIO power, GPIO 9 */
GPIO_LOOKUP_IDX("gpio-0-15", 9, GPIO_LOOKUP_IDX("gpio-0-15", 9,
"vsd", 1, GPIO_ACTIVE_HIGH), "vio", 1, GPIO_ACTIVE_HIGH),
{ } { }
}, },
}; };
......
...@@ -374,6 +374,7 @@ static void irq_restore_context(void) ...@@ -374,6 +374,7 @@ static void irq_restore_context(void)
static void irq_save_secure_context(void) static void irq_save_secure_context(void)
{ {
u32 ret; u32 ret;
ret = omap_secure_dispatcher(OMAP4_HAL_SAVEGIC_INDEX, ret = omap_secure_dispatcher(OMAP4_HAL_SAVEGIC_INDEX,
FLAG_START_CRITICAL, FLAG_START_CRITICAL,
0, 0, 0, 0, 0); 0, 0, 0, 0, 0);
......
...@@ -1851,7 +1851,7 @@ static struct omap_hwmod_ocp_if omap3xxx_l4_core__dss_rfbi = { ...@@ -1851,7 +1851,7 @@ static struct omap_hwmod_ocp_if omap3xxx_l4_core__dss_rfbi = {
.fw = { .fw = {
.omap2 = { .omap2 = {
.l4_fw_region = OMAP3_L4_CORE_FW_DSS_RFBI_REGION, .l4_fw_region = OMAP3_L4_CORE_FW_DSS_RFBI_REGION,
.l4_prot_group = OMAP3_L4_CORE_FW_DSS_PROT_GROUP , .l4_prot_group = OMAP3_L4_CORE_FW_DSS_PROT_GROUP,
.flags = OMAP_FIREWALL_L4, .flags = OMAP_FIREWALL_L4,
}, },
}, },
...@@ -2172,7 +2172,7 @@ static struct omap_hwmod am35xx_emac_hwmod = { ...@@ -2172,7 +2172,7 @@ static struct omap_hwmod am35xx_emac_hwmod = {
/* /*
* According to Mark Greer, the MPU will not return from WFI * According to Mark Greer, the MPU will not return from WFI
* when the EMAC signals an interrupt. * when the EMAC signals an interrupt.
* http://www.spinics.net/lists/arm-kernel/msg174734.html * https://lore.kernel.org/all/1336770778-23044-3-git-send-email-mgreer@animalcreek.com/
*/ */
.flags = (HWMOD_NO_IDLEST | HWMOD_BLOCK_WFI), .flags = (HWMOD_NO_IDLEST | HWMOD_BLOCK_WFI),
}; };
...@@ -2346,13 +2346,12 @@ static struct omap_hwmod_ocp_if *omap36xx_sham_hwmod_ocp_ifs[] __initdata = { ...@@ -2346,13 +2346,12 @@ static struct omap_hwmod_ocp_if *omap36xx_sham_hwmod_ocp_ifs[] __initdata = {
NULL NULL
}; };
/* /*
* Apparently the SHA/MD5 and AES accelerator IP blocks are * Apparently the SHA/MD5 and AES accelerator IP blocks are
* only present on some AM35xx chips, and no one knows which * only present on some AM35xx chips, and no one knows which
* ones. See * ones.
* http://www.spinics.net/lists/arm-kernel/msg215466.html So * See https://lore.kernel.org/all/20130108203853.GB1876@animalcreek.com/
* if you need these IP blocks on an AM35xx, try uncommenting * So if you need these IP blocks on an AM35xx, try uncommenting
* the following lines. * the following lines.
*/ */
static struct omap_hwmod_ocp_if *am35xx_sham_hwmod_ocp_ifs[] __initdata = { static struct omap_hwmod_ocp_if *am35xx_sham_hwmod_ocp_ifs[] __initdata = {
......
// SPDX-License-Identifier: GPL-2.0-only // SPDX-License-Identifier: GPL-2.0-only
/* /*
* linux/arch/arm/mach-omap2/sdrc2xxx.c
*
* SDRAM timing related functions for OMAP2xxx * SDRAM timing related functions for OMAP2xxx
* *
* Copyright (C) 2005, 2008 Texas Instruments Inc. * Copyright (C) 2005, 2008 Texas Instruments Inc.
......
...@@ -45,7 +45,7 @@ ...@@ -45,7 +45,7 @@
#define GP_DEVICE 0x300 #define GP_DEVICE 0x300
#define ROUND_DOWN(value,boundary) ((value) & (~((boundary)-1))) #define ROUND_DOWN(value, boundary) ((value) & (~((boundary) - 1)))
static unsigned long omap_sram_start; static unsigned long omap_sram_start;
static unsigned long omap_sram_size; static unsigned long omap_sram_size;
...@@ -118,7 +118,7 @@ static void omap_sram_reset(void) ...@@ -118,7 +118,7 @@ static void omap_sram_reset(void)
*/ */
static int is_sram_locked(void) static int is_sram_locked(void)
{ {
if (OMAP2_DEVICE_TYPE_GP == omap_type()) { if (omap_type() == OMAP2_DEVICE_TYPE_GP) {
/* RAMFW: R/W access to all initiators for all qualifier sets */ /* RAMFW: R/W access to all initiators for all qualifier sets */
if (cpu_is_omap242x()) { if (cpu_is_omap242x()) {
writel_relaxed(0xFF, OMAP24XX_VA_REQINFOPERM0); /* all q-vects */ writel_relaxed(0xFF, OMAP24XX_VA_REQINFOPERM0); /* all q-vects */
......
...@@ -26,5 +26,6 @@ void ti81xx_restart(enum reboot_mode mode, const char *cmd) ...@@ -26,5 +26,6 @@ void ti81xx_restart(enum reboot_mode mode, const char *cmd)
{ {
omap2_prm_set_mod_reg_bits(TI81XX_GLOBAL_RST_COLD, 0, omap2_prm_set_mod_reg_bits(TI81XX_GLOBAL_RST_COLD, 0,
TI81XX_PRM_DEVICE_RSTCTRL); TI81XX_PRM_DEVICE_RSTCTRL);
while (1); while (1)
;
} }
...@@ -60,6 +60,9 @@ static void __init orion5x_dt_init(void) ...@@ -60,6 +60,9 @@ static void __init orion5x_dt_init(void)
if (of_machine_is_compatible("maxtor,shared-storage-2")) if (of_machine_is_compatible("maxtor,shared-storage-2"))
mss2_init(); mss2_init();
if (of_machine_is_compatible("lacie,d2-network"))
d2net_init();
of_platform_default_populate(NULL, orion5x_auxdata_lookup, NULL); of_platform_default_populate(NULL, orion5x_auxdata_lookup, NULL);
} }
......
...@@ -73,6 +73,12 @@ extern void mss2_init(void); ...@@ -73,6 +73,12 @@ extern void mss2_init(void);
static inline void mss2_init(void) {} static inline void mss2_init(void) {}
#endif #endif
#ifdef CONFIG_MACH_D2NET_DT
void d2net_init(void);
#else
static inline void d2net_init(void) {}
#endif
/***************************************************************************** /*****************************************************************************
* Helpers to access Orion registers * Helpers to access Orion registers
****************************************************************************/ ****************************************************************************/
......
...@@ -27,7 +27,6 @@ extern void __init pxa25x_map_io(void); ...@@ -27,7 +27,6 @@ extern void __init pxa25x_map_io(void);
extern void __init pxa26x_init_irq(void); extern void __init pxa26x_init_irq(void);
#define pxa27x_handle_irq ichp_handle_irq #define pxa27x_handle_irq ichp_handle_irq
extern unsigned pxa27x_get_clk_frequency_khz(int);
extern void __init pxa27x_init_irq(void); extern void __init pxa27x_init_irq(void);
extern void __init pxa27x_map_io(void); extern void __init pxa27x_map_io(void);
...@@ -52,18 +51,4 @@ extern void pxa2xx_clear_reset_status(unsigned int); ...@@ -52,18 +51,4 @@ extern void pxa2xx_clear_reset_status(unsigned int);
static inline void pxa2xx_clear_reset_status(unsigned int mask) {} static inline void pxa2xx_clear_reset_status(unsigned int mask) {}
#endif #endif
/*
* Once fully converted to the clock framework, all these functions should be
* removed, and replaced with a clk_get(NULL, "core").
*/
#ifdef CONFIG_PXA25x
extern unsigned pxa25x_get_clk_frequency_khz(int);
#else
#define pxa25x_get_clk_frequency_khz(x) (0)
#endif
#ifdef CONFIG_PXA27x
#else
#define pxa27x_get_clk_frequency_khz(x) (0)
#endif
...@@ -20,6 +20,7 @@ ...@@ -20,6 +20,7 @@
#include "pxa2xx-regs.h" #include "pxa2xx-regs.h"
#include "mfp-pxa2xx.h" #include "mfp-pxa2xx.h"
#include "mfp-pxa27x.h"
#include "generic.h" #include "generic.h"
......
...@@ -27,6 +27,7 @@ ...@@ -27,6 +27,7 @@
#include <linux/irqchip.h> #include <linux/irqchip.h>
#include <linux/platform_data/mmp_dma.h> #include <linux/platform_data/mmp_dma.h>
#include <linux/soc/pxa/cpu.h> #include <linux/soc/pxa/cpu.h>
#include <linux/soc/pxa/smemc.h>
#include <asm/mach/map.h> #include <asm/mach/map.h>
#include <asm/suspend.h> #include <asm/suspend.h>
......
...@@ -24,6 +24,7 @@ ...@@ -24,6 +24,7 @@
#include <linux/platform_data/i2c-pxa.h> #include <linux/platform_data/i2c-pxa.h>
#include <linux/platform_data/mmp_dma.h> #include <linux/platform_data/mmp_dma.h>
#include <linux/soc/pxa/cpu.h> #include <linux/soc/pxa/cpu.h>
#include <linux/soc/pxa/smemc.h>
#include <asm/mach/map.h> #include <asm/mach/map.h>
#include <asm/irq.h> #include <asm/irq.h>
...@@ -31,7 +32,9 @@ ...@@ -31,7 +32,9 @@
#include "irqs.h" #include "irqs.h"
#include "pxa27x.h" #include "pxa27x.h"
#include "reset.h" #include "reset.h"
#include <linux/platform_data/pxa2xx_udc.h>
#include <linux/platform_data/usb-ohci-pxa27x.h> #include <linux/platform_data/usb-ohci-pxa27x.h>
#include <linux/platform_data/asoc-pxa.h>
#include "pm.h" #include "pm.h"
#include "addr-map.h" #include "addr-map.h"
#include "smemc.h" #include "smemc.h"
......
...@@ -10,6 +10,7 @@ ...@@ -10,6 +10,7 @@
#include "regs-ost.h" #include "regs-ost.h"
#include "reset.h" #include "reset.h"
#include "smemc.h" #include "smemc.h"
#include "generic.h"
static void do_hw_reset(void); static void do_hw_reset(void);
......
...@@ -166,7 +166,7 @@ static bool spitz_charger_wakeup(void) ...@@ -166,7 +166,7 @@ static bool spitz_charger_wakeup(void)
gpio_get_value(SPITZ_GPIO_SYNC); gpio_get_value(SPITZ_GPIO_SYNC);
} }
unsigned long spitzpm_read_devdata(int type) static unsigned long spitzpm_read_devdata(int type)
{ {
switch (type) { switch (type) {
case SHARPSL_STATUS_ACIN: case SHARPSL_STATUS_ACIN:
......
...@@ -69,11 +69,6 @@ config S3C64XX_SETUP_I2C1 ...@@ -69,11 +69,6 @@ config S3C64XX_SETUP_I2C1
help help
Common setup code for i2c bus 1. Common setup code for i2c bus 1.
config S3C64XX_SETUP_IDE
bool
help
Common setup code for S3C64XX IDE.
config S3C64XX_SETUP_FB_24BPP config S3C64XX_SETUP_FB_24BPP
bool bool
help help
...@@ -110,7 +105,6 @@ config MACH_WLF_CRAGG_6410 ...@@ -110,7 +105,6 @@ config MACH_WLF_CRAGG_6410
select S3C64XX_DEV_SPI0 select S3C64XX_DEV_SPI0
select S3C64XX_SETUP_FB_24BPP select S3C64XX_SETUP_FB_24BPP
select S3C64XX_SETUP_I2C1 select S3C64XX_SETUP_I2C1
select S3C64XX_SETUP_IDE
select S3C64XX_SETUP_KEYPAD select S3C64XX_SETUP_KEYPAD
select S3C64XX_SETUP_SDHCI select S3C64XX_SETUP_SDHCI
select S3C64XX_SETUP_SPI select S3C64XX_SETUP_SPI
......
...@@ -418,7 +418,7 @@ static struct i2c_driver wlf_gf_module_driver = { ...@@ -418,7 +418,7 @@ static struct i2c_driver wlf_gf_module_driver = {
.driver = { .driver = {
.name = "wlf-gf-module" .name = "wlf-gf-module"
}, },
.probe_new = wlf_gf_module_probe, .probe = wlf_gf_module_probe,
.id_table = wlf_gf_module_id, .id_table = wlf_gf_module_id,
}; };
......
...@@ -710,7 +710,7 @@ static void __init assabet_map_io(void) ...@@ -710,7 +710,7 @@ static void __init assabet_map_io(void)
sa1100_register_uart(2, 3); sa1100_register_uart(2, 3);
} }
void __init assabet_init_irq(void) static void __init assabet_init_irq(void)
{ {
u32 def_val; u32 def_val;
......
...@@ -33,6 +33,8 @@ ...@@ -33,6 +33,8 @@
#include <asm/suspend.h> #include <asm/suspend.h>
#include <asm/mach/time.h> #include <asm/mach/time.h>
#include "generic.h"
extern int sa1100_finish_suspend(unsigned long); extern int sa1100_finish_suspend(unsigned long);
#define SAVE(x) sleep_save[SLEEP_SAVE_##x] = x #define SAVE(x) sleep_save[SLEEP_SAVE_##x] = x
......
...@@ -16,6 +16,7 @@ ...@@ -16,6 +16,7 @@
#include <linux/spinlock_types.h> #include <linux/spinlock_types.h>
#include "spear.h" #include "spear.h"
#include "misc_regs.h" #include "misc_regs.h"
#include "pl080.h"
static spinlock_t lock = __SPIN_LOCK_UNLOCKED(x); static spinlock_t lock = __SPIN_LOCK_UNLOCKED(x);
......
...@@ -53,7 +53,7 @@ ...@@ -53,7 +53,7 @@
static void __iomem *versatile_sys_base; static void __iomem *versatile_sys_base;
unsigned int mmc_status(struct device *dev) static unsigned int mmc_status(struct device *dev)
{ {
struct amba_device *adev = container_of(dev, struct amba_device, dev); struct amba_device *adev = container_of(dev, struct amba_device, dev);
u32 mask; u32 mask;
......
...@@ -11,10 +11,12 @@ ...@@ -11,10 +11,12 @@
*/ */
#include <linux/clk-provider.h> #include <linux/clk-provider.h>
#include <linux/clk.h> #include <linux/clk.h>
#include <linux/clk/pxa.h>
#include <linux/clkdev.h> #include <linux/clkdev.h>
#include <linux/io.h> #include <linux/io.h>
#include <linux/of.h> #include <linux/of.h>
#include <linux/soc/pxa/smemc.h> #include <linux/soc/pxa/smemc.h>
#include <linux/soc/pxa/cpu.h>
#include <dt-bindings/clock/pxa-clock.h> #include <dt-bindings/clock/pxa-clock.h>
#include "clk-pxa.h" #include "clk-pxa.h"
......
...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
#include <linux/clkdev.h> #include <linux/clkdev.h>
#include <linux/of.h> #include <linux/of.h>
#include <linux/soc/pxa/smemc.h> #include <linux/soc/pxa/smemc.h>
#include <linux/clk/pxa.h>
#include <dt-bindings/clock/pxa-clock.h> #include <dt-bindings/clock/pxa-clock.h>
#include "clk-pxa.h" #include "clk-pxa.h"
...@@ -99,7 +100,7 @@ unsigned int pxa27x_get_clk_frequency_khz(int info) ...@@ -99,7 +100,7 @@ unsigned int pxa27x_get_clk_frequency_khz(int info)
return (unsigned int)clks[0] / KHz; return (unsigned int)clks[0] / KHz;
} }
bool pxa27x_is_ppll_disabled(void) static bool pxa27x_is_ppll_disabled(void)
{ {
unsigned long ccsr = readl(clk_regs + CCSR); unsigned long ccsr = readl(clk_regs + CCSR);
......
...@@ -80,6 +80,7 @@ static int max1111_read(struct device *dev, int channel) ...@@ -80,6 +80,7 @@ static int max1111_read(struct device *dev, int channel)
#ifdef CONFIG_SHARPSL_PM #ifdef CONFIG_SHARPSL_PM
static struct max1111_data *the_max1111; static struct max1111_data *the_max1111;
int max1111_read_channel(int channel);
int max1111_read_channel(int channel) int max1111_read_channel(int channel)
{ {
if (!the_max1111 || !the_max1111->spi) if (!the_max1111 || !the_max1111->spi)
......
...@@ -1117,20 +1117,13 @@ MODULE_DEVICE_TABLE(of, ads7846_dt_ids); ...@@ -1117,20 +1117,13 @@ MODULE_DEVICE_TABLE(of, ads7846_dt_ids);
static const struct ads7846_platform_data *ads7846_get_props(struct device *dev) static const struct ads7846_platform_data *ads7846_get_props(struct device *dev)
{ {
struct ads7846_platform_data *pdata; struct ads7846_platform_data *pdata;
const struct platform_device_id *pdev_id;
u32 value; u32 value;
pdev_id = device_get_match_data(dev);
if (!pdev_id) {
dev_err(dev, "Unknown device model\n");
return ERR_PTR(-EINVAL);
}
pdata = devm_kzalloc(dev, sizeof(*pdata), GFP_KERNEL); pdata = devm_kzalloc(dev, sizeof(*pdata), GFP_KERNEL);
if (!pdata) if (!pdata)
return ERR_PTR(-ENOMEM); return ERR_PTR(-ENOMEM);
pdata->model = (unsigned long)pdev_id->driver_data; pdata->model = (uintptr_t)device_get_match_data(dev);
device_property_read_u16(dev, "ti,vref-delay-usecs", device_property_read_u16(dev, "ti,vref-delay-usecs",
&pdata->vref_delay_usecs); &pdata->vref_delay_usecs);
......
...@@ -2472,12 +2472,6 @@ static void pxa_udc_shutdown(struct platform_device *_dev) ...@@ -2472,12 +2472,6 @@ static void pxa_udc_shutdown(struct platform_device *_dev)
udc_disable(udc); udc_disable(udc);
} }
#ifdef CONFIG_PXA27x
extern void pxa27x_clear_otgph(void);
#else
#define pxa27x_clear_otgph() do {} while (0)
#endif
#ifdef CONFIG_PM #ifdef CONFIG_PM
/** /**
* pxa_udc_suspend - Suspend udc device * pxa_udc_suspend - Suspend udc device
......
...@@ -29,6 +29,7 @@ ...@@ -29,6 +29,7 @@
#include <linux/of_platform.h> #include <linux/of_platform.h>
#include <linux/of_gpio.h> #include <linux/of_gpio.h>
#include <linux/platform_data/usb-ohci-pxa27x.h> #include <linux/platform_data/usb-ohci-pxa27x.h>
#include <linux/platform_data/pxa2xx_udc.h>
#include <linux/platform_device.h> #include <linux/platform_device.h>
#include <linux/regulator/consumer.h> #include <linux/regulator/consumer.h>
#include <linux/signal.h> #include <linux/signal.h>
...@@ -263,12 +264,6 @@ static inline void pxa27x_reset_hc(struct pxa27x_ohci *pxa_ohci) ...@@ -263,12 +264,6 @@ static inline void pxa27x_reset_hc(struct pxa27x_ohci *pxa_ohci)
__raw_writel(uhchr & ~UHCHR_FHR, pxa_ohci->mmio_base + UHCHR); __raw_writel(uhchr & ~UHCHR_FHR, pxa_ohci->mmio_base + UHCHR);
} }
#ifdef CONFIG_PXA27x
extern void pxa27x_clear_otgph(void);
#else
#define pxa27x_clear_otgph() do {} while (0)
#endif
static int pxa27x_start_hc(struct pxa27x_ohci *pxa_ohci, struct device *dev) static int pxa27x_start_hc(struct pxa27x_ohci *pxa_ohci, struct device *dev)
{ {
int retval; int retval;
......
...@@ -27,5 +27,6 @@ typedef struct { ...@@ -27,5 +27,6 @@ typedef struct {
} pxa2xx_audio_ops_t; } pxa2xx_audio_ops_t;
extern void pxa_set_ac97_info(pxa2xx_audio_ops_t *ops); extern void pxa_set_ac97_info(pxa2xx_audio_ops_t *ops);
extern void pxa27x_configure_ac97reset(int reset_gpio, bool to_gpio);
#endif #endif
...@@ -16,4 +16,10 @@ struct davinci_cpufreq_config { ...@@ -16,4 +16,10 @@ struct davinci_cpufreq_config {
int (*init)(void); int (*init)(void);
}; };
#ifdef CONFIG_CPU_FREQ
int davinci_cpufreq_init(void);
#else
static inline int davinci_cpufreq_init(void) { return 0; }
#endif
#endif /* _MACH_DAVINCI_CPUFREQ_H */ #endif /* _MACH_DAVINCI_CPUFREQ_H */
...@@ -25,4 +25,10 @@ struct pxa2xx_udc_mach_info { ...@@ -25,4 +25,10 @@ struct pxa2xx_udc_mach_info {
int gpio_pullup; /* high == pullup activated */ int gpio_pullup; /* high == pullup activated */
}; };
#ifdef CONFIG_PXA27x
extern void pxa27x_clear_otgph(void);
#else
#define pxa27x_clear_otgph() do {} while (0)
#endif
#endif #endif
...@@ -10,4 +10,20 @@ int pxa2xx_smemc_get_sdram_rows(void); ...@@ -10,4 +10,20 @@ int pxa2xx_smemc_get_sdram_rows(void);
unsigned int pxa3xx_smemc_get_memclkdiv(void); unsigned int pxa3xx_smemc_get_memclkdiv(void);
void __iomem *pxa_smemc_get_mdrefr(void); void __iomem *pxa_smemc_get_mdrefr(void);
/*
* Once fully converted to the clock framework, all these functions should be
* removed, and replaced with a clk_get(NULL, "core").
*/
#ifdef CONFIG_PXA25x
extern unsigned pxa25x_get_clk_frequency_khz(int);
#else
#define pxa25x_get_clk_frequency_khz(x) (0)
#endif
#ifdef CONFIG_PXA27x
extern unsigned pxa27x_get_clk_frequency_khz(int);
#else
#define pxa27x_get_clk_frequency_khz(x) (0)
#endif
#endif #endif
...@@ -33,8 +33,6 @@ static struct clk *ac97conf_clk; ...@@ -33,8 +33,6 @@ static struct clk *ac97conf_clk;
static int reset_gpio; static int reset_gpio;
static void __iomem *ac97_reg_base; static void __iomem *ac97_reg_base;
extern void pxa27x_configure_ac97reset(int reset_gpio, bool to_gpio);
/* /*
* Beware PXA27x bugs: * Beware PXA27x bugs:
* *
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment