Commit 72673429 authored by Linus Torvalds's avatar Linus Torvalds

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

Pull ARM SoC fixes from Olof Johansson:
 "A collection of fixes for ARM platforms.  Most are fixes for DTS
  files, mostly from DT conversion on OMAP which is still finding a few
  issues here and there.

  There's a couple of small stale code removal patches that we usually
  queue for the next release instead, but they seemed harmless enough to
  bring in now.

  Also, a fix for backlight on some PXA platforms, and a cache
  configuration fix for Tegra, etc"

* tag 'fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (25 commits)
  MAINTAINERS: add additional ARM BCM281xx/BCM11xxx maintainer
  ARM: tegra: only run PL310 init on systems with one
  ARM: tegra: Add head numbers to display controllers
  ARM: imx6: build pm-imx6q.c independently of CONFIG_PM
  ARM: tegra: fix RTC0 alias for Cardhu
  ARM: dove: dt: revert PMU interrupt controller node
  Documentation: dt: OMAP: Update Overo/Tobi
  ARM: dts: Add support for both OMAP35xx and OMAP36xx Overo/Tobi
  ARM: dts: omap3-tobi: Use the correct vendor prefix
  ARM: dts: omap3-tobi: Fix boot with OMAP36xx-based Overo
  ARM: OMAP2+: Remove legacy macros for zoom platforms
  ARM: OMAP2+: Remove MACH_NOKIA_N800
  ARM: dts: N900: add missing compatible property
  ARM: dts: N9/N950: fix boot hang with 3.14-rc1
  ARM: OMAP1: nokia770: enable tahvo-usb
  ARM: OMAP2+: gpmc: fix: DT ONENAND child nodes not probed when MTD_ONENAND is built as module
  ARM: OMAP2+: gpmc: fix: DT NAND child nodes not probed when MTD_NAND is built as module
  ARM: dts: omap3-gta04: Fix mmc1 properties.
  ARM: dts: omap3-gta04: Fix 'aux' gpio key flags.
  ARM: OMAP2+: add missing ARCH_HAS_OPP
  ...
parents 24c85258 a3db2bba
...@@ -91,7 +91,7 @@ Boards: ...@@ -91,7 +91,7 @@ Boards:
compatible = "ti,omap3-beagle", "ti,omap3" compatible = "ti,omap3-beagle", "ti,omap3"
- OMAP3 Tobi with Overo : Commercial expansion board with daughter board - OMAP3 Tobi with Overo : Commercial expansion board with daughter board
compatible = "ti,omap3-tobi", "ti,omap3-overo", "ti,omap3" compatible = "gumstix,omap3-overo-tobi", "gumstix,omap3-overo", "ti,omap3"
- OMAP4 SDP : Software Development Board - OMAP4 SDP : Software Development Board
compatible = "ti,omap4-sdp", "ti,omap4430" compatible = "ti,omap4-sdp", "ti,omap4430"
......
...@@ -1860,6 +1860,7 @@ F: drivers/net/ethernet/broadcom/bnx2x/ ...@@ -1860,6 +1860,7 @@ F: drivers/net/ethernet/broadcom/bnx2x/
BROADCOM BCM281XX/BCM11XXX ARM ARCHITECTURE BROADCOM BCM281XX/BCM11XXX ARM ARCHITECTURE
M: Christian Daudt <bcm@fixthebug.org> M: Christian Daudt <bcm@fixthebug.org>
M: Matt Porter <mporter@linaro.org>
L: bcm-kernel-feedback-list@broadcom.com L: bcm-kernel-feedback-list@broadcom.com
T: git git://git.github.com/broadcom/bcm11351 T: git git://git.github.com/broadcom/bcm11351
S: Maintained S: Maintained
......
...@@ -209,7 +209,8 @@ dtb-$(CONFIG_ARCH_OMAP2PLUS) += omap2420-h4.dtb \ ...@@ -209,7 +209,8 @@ dtb-$(CONFIG_ARCH_OMAP2PLUS) += omap2420-h4.dtb \
omap3-n900.dtb \ omap3-n900.dtb \
omap3-n9.dtb \ omap3-n9.dtb \
omap3-n950.dtb \ omap3-n950.dtb \
omap3-tobi.dtb \ omap3-overo-tobi.dtb \
omap3-overo-storm-tobi.dtb \
omap3-gta04.dtb \ omap3-gta04.dtb \
omap3-igep0020.dtb \ omap3-igep0020.dtb \
omap3-igep0030.dtb \ omap3-igep0030.dtb \
......
...@@ -121,7 +121,7 @@ sound { ...@@ -121,7 +121,7 @@ sound {
ti,model = "AM335x-EVMSK"; ti,model = "AM335x-EVMSK";
ti,audio-codec = <&tlv320aic3106>; ti,audio-codec = <&tlv320aic3106>;
ti,mcasp-controller = <&mcasp1>; ti,mcasp-controller = <&mcasp1>;
ti,codec-clock-rate = <24576000>; ti,codec-clock-rate = <24000000>;
ti,audio-routing = ti,audio-routing =
"Headphone Jack", "HPLOUT", "Headphone Jack", "HPLOUT",
"Headphone Jack", "HPROUT"; "Headphone Jack", "HPROUT";
...@@ -256,6 +256,12 @@ davinci_mdio_sleep: davinci_mdio_sleep { ...@@ -256,6 +256,12 @@ davinci_mdio_sleep: davinci_mdio_sleep {
>; >;
}; };
mmc1_pins: pinmux_mmc1_pins {
pinctrl-single,pins = <
0x160 (PIN_INPUT | MUX_MODE7) /* spi0_cs1.gpio0_6 */
>;
};
mcasp1_pins: mcasp1_pins { mcasp1_pins: mcasp1_pins {
pinctrl-single,pins = < pinctrl-single,pins = <
0x10c (PIN_INPUT_PULLDOWN | MUX_MODE4) /* mii1_crs.mcasp1_aclkx */ 0x10c (PIN_INPUT_PULLDOWN | MUX_MODE4) /* mii1_crs.mcasp1_aclkx */
...@@ -456,6 +462,9 @@ &mmc1 { ...@@ -456,6 +462,9 @@ &mmc1 {
status = "okay"; status = "okay";
vmmc-supply = <&vmmc_reg>; vmmc-supply = <&vmmc_reg>;
bus-width = <4>; bus-width = <4>;
pinctrl-names = "default";
pinctrl-0 = <&mmc1_pins>;
cd-gpios = <&gpio0 6 GPIO_ACTIVE_HIGH>;
}; };
&sham { &sham {
......
...@@ -23,6 +23,7 @@ aliases { ...@@ -23,6 +23,7 @@ aliases {
gpio0 = &gpio0; gpio0 = &gpio0;
gpio1 = &gpio1; gpio1 = &gpio1;
gpio2 = &gpio2; gpio2 = &gpio2;
eth3 = &eth3;
}; };
cpus { cpus {
...@@ -291,7 +292,7 @@ gpio2: gpio@18180 { ...@@ -291,7 +292,7 @@ gpio2: gpio@18180 {
interrupts = <91>; interrupts = <91>;
}; };
ethernet@34000 { eth3: ethernet@34000 {
compatible = "marvell,armada-370-neta"; compatible = "marvell,armada-370-neta";
reg = <0x34000 0x4000>; reg = <0x34000 0x4000>;
interrupts = <14>; interrupts = <14>;
......
...@@ -379,15 +379,6 @@ gate_clk: clock-gating-ctrl@d0038 { ...@@ -379,15 +379,6 @@ gate_clk: clock-gating-ctrl@d0038 {
#clock-cells = <1>; #clock-cells = <1>;
}; };
pmu_intc: pmu-interrupt-ctrl@d0050 {
compatible = "marvell,dove-pmu-intc";
interrupt-controller;
#interrupt-cells = <1>;
reg = <0xd0050 0x8>;
interrupts = <33>;
marvell,#interrupts = <7>;
};
pinctrl: pin-ctrl@d0200 { pinctrl: pin-ctrl@d0200 {
compatible = "marvell,dove-pinctrl"; compatible = "marvell,dove-pinctrl";
reg = <0xd0200 0x10>; reg = <0xd0200 0x10>;
...@@ -610,8 +601,6 @@ gpio1: gpio-ctrl@d0420 { ...@@ -610,8 +601,6 @@ gpio1: gpio-ctrl@d0420 {
rtc: real-time-clock@d8500 { rtc: real-time-clock@d8500 {
compatible = "marvell,orion-rtc"; compatible = "marvell,orion-rtc";
reg = <0xd8500 0x20>; reg = <0xd8500 0x20>;
interrupt-parent = <&pmu_intc>;
interrupts = <5>;
}; };
gpio2: gpio-ctrl@e8400 { gpio2: gpio-ctrl@e8400 {
......
...@@ -32,7 +32,7 @@ gpio-keys { ...@@ -32,7 +32,7 @@ gpio-keys {
aux-button { aux-button {
label = "aux"; label = "aux";
linux,code = <169>; linux,code = <169>;
gpios = <&gpio1 7 GPIO_ACTIVE_LOW>; gpios = <&gpio1 7 GPIO_ACTIVE_HIGH>;
gpio-key,wakeup; gpio-key,wakeup;
}; };
}; };
...@@ -92,6 +92,8 @@ &i2c2 { ...@@ -92,6 +92,8 @@ &i2c2 {
bmp085@77 { bmp085@77 {
compatible = "bosch,bmp085"; compatible = "bosch,bmp085";
reg = <0x77>; reg = <0x77>;
interrupt-parent = <&gpio4>;
interrupts = <17 IRQ_TYPE_EDGE_RISING>;
}; };
/* leds */ /* leds */
...@@ -141,8 +143,8 @@ &mmc1 { ...@@ -141,8 +143,8 @@ &mmc1 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&mmc1_pins>; pinctrl-0 = <&mmc1_pins>;
vmmc-supply = <&vmmc1>; vmmc-supply = <&vmmc1>;
vmmc_aux-supply = <&vsim>;
bus-width = <4>; bus-width = <4>;
ti,non-removable;
}; };
&mmc2 { &mmc2 {
......
...@@ -14,5 +14,5 @@ ...@@ -14,5 +14,5 @@
/ { / {
model = "Nokia N9"; model = "Nokia N9";
compatible = "nokia,omap3-n9", "ti,omap3"; compatible = "nokia,omap3-n9", "ti,omap36xx", "ti,omap3";
}; };
/* /*
* Copyright (C) 2013 Pavel Machek <pavel@ucw.cz> * Copyright (C) 2013 Pavel Machek <pavel@ucw.cz>
* Copyright 2013 Aaro Koskinen <aaro.koskinen@iki.fi> * Copyright (C) 2013-2014 Aaro Koskinen <aaro.koskinen@iki.fi>
* *
* This program is free software; you can redistribute it and/or modify * This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 (or later) as * it under the terms of the GNU General Public License version 2 (or later) as
...@@ -13,7 +13,7 @@ ...@@ -13,7 +13,7 @@
/ { / {
model = "Nokia N900"; model = "Nokia N900";
compatible = "nokia,omap3-n900", "ti,omap3"; compatible = "nokia,omap3-n900", "ti,omap3430", "ti,omap3";
cpus { cpus {
cpu@0 { cpu@0 {
......
...@@ -14,5 +14,5 @@ ...@@ -14,5 +14,5 @@
/ { / {
model = "Nokia N950"; model = "Nokia N950";
compatible = "nokia,omap3-n950", "ti,omap3"; compatible = "nokia,omap3-n950", "ti,omap36xx", "ti,omap3";
}; };
/*
* Copyright (C) 2012 Florian Vaussard, EPFL Mobots group
*
* 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.
*/
/*
* Tobi expansion board is manufactured by Gumstix Inc.
*/
/dts-v1/;
#include "omap36xx.dtsi"
#include "omap3-overo-tobi-common.dtsi"
/ {
model = "OMAP36xx/AM37xx/DM37xx Gumstix Overo on Tobi";
compatible = "gumstix,omap3-overo-tobi", "gumstix,omap3-overo", "ti,omap36xx", "ti,omap3";
};
...@@ -13,9 +13,6 @@ ...@@ -13,9 +13,6 @@
#include "omap3-overo.dtsi" #include "omap3-overo.dtsi"
/ { / {
model = "TI OMAP3 Gumstix Overo on Tobi";
compatible = "ti,omap3-tobi", "ti,omap3-overo", "ti,omap3";
leds { leds {
compatible = "gpio-leds"; compatible = "gpio-leds";
heartbeat { heartbeat {
......
/*
* Copyright (C) 2012 Florian Vaussard, EPFL Mobots group
*
* 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.
*/
/*
* Tobi expansion board is manufactured by Gumstix Inc.
*/
/dts-v1/;
#include "omap34xx.dtsi"
#include "omap3-overo-tobi-common.dtsi"
/ {
model = "OMAP35xx Gumstix Overo on Tobi";
compatible = "gumstix,omap3-overo-tobi", "gumstix,omap3-overo", "ti,omap3430", "ti,omap3";
};
...@@ -9,9 +9,6 @@ ...@@ -9,9 +9,6 @@
/* /*
* The Gumstix Overo must be combined with an expansion board. * The Gumstix Overo must be combined with an expansion board.
*/ */
/dts-v1/;
#include "omap34xx.dtsi"
/ { / {
pwmleds { pwmleds {
......
...@@ -57,6 +57,8 @@ dc@54200000 { ...@@ -57,6 +57,8 @@ dc@54200000 {
resets = <&tegra_car 27>; resets = <&tegra_car 27>;
reset-names = "dc"; reset-names = "dc";
nvidia,head = <0>;
rgb { rgb {
status = "disabled"; status = "disabled";
}; };
...@@ -72,6 +74,8 @@ dc@54240000 { ...@@ -72,6 +74,8 @@ dc@54240000 {
resets = <&tegra_car 26>; resets = <&tegra_car 26>;
reset-names = "dc"; reset-names = "dc";
nvidia,head = <1>;
rgb { rgb {
status = "disabled"; status = "disabled";
}; };
......
...@@ -94,6 +94,8 @@ dc@54200000 { ...@@ -94,6 +94,8 @@ dc@54200000 {
resets = <&tegra_car 27>; resets = <&tegra_car 27>;
reset-names = "dc"; reset-names = "dc";
nvidia,head = <0>;
rgb { rgb {
status = "disabled"; status = "disabled";
}; };
...@@ -109,6 +111,8 @@ dc@54240000 { ...@@ -109,6 +111,8 @@ dc@54240000 {
resets = <&tegra_car 26>; resets = <&tegra_car 26>;
reset-names = "dc"; reset-names = "dc";
nvidia,head = <1>;
rgb { rgb {
status = "disabled"; status = "disabled";
}; };
......
...@@ -28,7 +28,7 @@ / { ...@@ -28,7 +28,7 @@ / {
compatible = "nvidia,cardhu", "nvidia,tegra30"; compatible = "nvidia,cardhu", "nvidia,tegra30";
aliases { aliases {
rtc0 = "/i2c@7000d000/tps6586x@34"; rtc0 = "/i2c@7000d000/tps65911@2d";
rtc1 = "/rtc@7000e000"; rtc1 = "/rtc@7000e000";
}; };
......
...@@ -170,6 +170,8 @@ dc@54200000 { ...@@ -170,6 +170,8 @@ dc@54200000 {
resets = <&tegra_car 27>; resets = <&tegra_car 27>;
reset-names = "dc"; reset-names = "dc";
nvidia,head = <0>;
rgb { rgb {
status = "disabled"; status = "disabled";
}; };
...@@ -185,6 +187,8 @@ dc@54240000 { ...@@ -185,6 +187,8 @@ dc@54240000 {
resets = <&tegra_car 26>; resets = <&tegra_car 26>;
reset-names = "dc"; reset-names = "dc";
nvidia,head = <1>;
rgb { rgb {
status = "disabled"; status = "disabled";
}; };
......
...@@ -101,11 +101,9 @@ obj-$(CONFIG_HOTPLUG_CPU) += hotplug.o ...@@ -101,11 +101,9 @@ obj-$(CONFIG_HOTPLUG_CPU) += hotplug.o
obj-$(CONFIG_SOC_IMX6Q) += clk-imx6q.o mach-imx6q.o obj-$(CONFIG_SOC_IMX6Q) += clk-imx6q.o mach-imx6q.o
obj-$(CONFIG_SOC_IMX6SL) += clk-imx6sl.o mach-imx6sl.o obj-$(CONFIG_SOC_IMX6SL) += clk-imx6sl.o mach-imx6sl.o
ifeq ($(CONFIG_PM),y)
obj-$(CONFIG_SOC_IMX6Q) += pm-imx6q.o headsmp.o obj-$(CONFIG_SOC_IMX6Q) += pm-imx6q.o headsmp.o
# i.MX6SL reuses i.MX6Q code # i.MX6SL reuses i.MX6Q code
obj-$(CONFIG_SOC_IMX6SL) += pm-imx6q.o headsmp.o obj-$(CONFIG_SOC_IMX6SL) += pm-imx6q.o headsmp.o
endif
# i.MX5 based machines # i.MX5 based machines
obj-$(CONFIG_MACH_MX51_BABBAGE) += mach-mx51_babbage.o obj-$(CONFIG_MACH_MX51_BABBAGE) += mach-mx51_babbage.o
......
...@@ -144,13 +144,11 @@ void imx6q_set_chicken_bit(void); ...@@ -144,13 +144,11 @@ void imx6q_set_chicken_bit(void);
void imx_cpu_die(unsigned int cpu); void imx_cpu_die(unsigned int cpu);
int imx_cpu_kill(unsigned int cpu); int imx_cpu_kill(unsigned int cpu);
#ifdef CONFIG_PM
void imx6q_pm_init(void); void imx6q_pm_init(void);
void imx6q_pm_set_ccm_base(void __iomem *base); void imx6q_pm_set_ccm_base(void __iomem *base);
#ifdef CONFIG_PM
void imx5_pm_init(void); void imx5_pm_init(void);
#else #else
static inline void imx6q_pm_init(void) {}
static inline void imx6q_pm_set_ccm_base(void __iomem *base) {}
static inline void imx5_pm_init(void) {} static inline void imx5_pm_init(void) {}
#endif #endif
......
...@@ -156,6 +156,7 @@ static struct omap_usb_config nokia770_usb_config __initdata = { ...@@ -156,6 +156,7 @@ static struct omap_usb_config nokia770_usb_config __initdata = {
.register_dev = 1, .register_dev = 1,
.hmc_mode = 16, .hmc_mode = 16,
.pins[0] = 6, .pins[0] = 6,
.extcon = "tahvo-usb",
}; };
#if defined(CONFIG_MMC_OMAP) || defined(CONFIG_MMC_OMAP_MODULE) #if defined(CONFIG_MMC_OMAP) || defined(CONFIG_MMC_OMAP_MODULE)
......
...@@ -50,6 +50,7 @@ config SOC_OMAP5 ...@@ -50,6 +50,7 @@ config SOC_OMAP5
bool "TI OMAP5" bool "TI OMAP5"
depends on ARCH_MULTI_V7 depends on ARCH_MULTI_V7
select ARCH_OMAP2PLUS select ARCH_OMAP2PLUS
select ARCH_HAS_OPP
select ARM_CPU_SUSPEND if PM select ARM_CPU_SUSPEND if PM
select ARM_GIC select ARM_GIC
select CPU_V7 select CPU_V7
...@@ -63,6 +64,7 @@ config SOC_AM33XX ...@@ -63,6 +64,7 @@ config SOC_AM33XX
bool "TI AM33XX" bool "TI AM33XX"
depends on ARCH_MULTI_V7 depends on ARCH_MULTI_V7
select ARCH_OMAP2PLUS select ARCH_OMAP2PLUS
select ARCH_HAS_OPP
select ARM_CPU_SUSPEND if PM select ARM_CPU_SUSPEND if PM
select CPU_V7 select CPU_V7
select MULTI_IRQ_HANDLER select MULTI_IRQ_HANDLER
...@@ -72,6 +74,7 @@ config SOC_AM43XX ...@@ -72,6 +74,7 @@ config SOC_AM43XX
depends on ARCH_MULTI_V7 depends on ARCH_MULTI_V7
select CPU_V7 select CPU_V7
select ARCH_OMAP2PLUS select ARCH_OMAP2PLUS
select ARCH_HAS_OPP
select MULTI_IRQ_HANDLER select MULTI_IRQ_HANDLER
select ARM_GIC select ARM_GIC
select MACH_OMAP_GENERIC select MACH_OMAP_GENERIC
...@@ -80,6 +83,7 @@ config SOC_DRA7XX ...@@ -80,6 +83,7 @@ config SOC_DRA7XX
bool "TI DRA7XX" bool "TI DRA7XX"
depends on ARCH_MULTI_V7 depends on ARCH_MULTI_V7
select ARCH_OMAP2PLUS select ARCH_OMAP2PLUS
select ARCH_HAS_OPP
select ARM_CPU_SUSPEND if PM select ARM_CPU_SUSPEND if PM
select ARM_GIC select ARM_GIC
select CPU_V7 select CPU_V7
...@@ -268,9 +272,6 @@ config MACH_OMAP_3430SDP ...@@ -268,9 +272,6 @@ config MACH_OMAP_3430SDP
default y default y
select OMAP_PACKAGE_CBB select OMAP_PACKAGE_CBB
config MACH_NOKIA_N800
bool
config MACH_NOKIA_N810 config MACH_NOKIA_N810
bool bool
...@@ -281,7 +282,6 @@ config MACH_NOKIA_N8X0 ...@@ -281,7 +282,6 @@ config MACH_NOKIA_N8X0
bool "Nokia N800/N810" bool "Nokia N800/N810"
depends on SOC_OMAP2420 depends on SOC_OMAP2420
default y default y
select MACH_NOKIA_N800
select MACH_NOKIA_N810 select MACH_NOKIA_N810
select MACH_NOKIA_N810_WIMAX select MACH_NOKIA_N810_WIMAX
select OMAP_PACKAGE_ZAC select OMAP_PACKAGE_ZAC
......
...@@ -1339,7 +1339,7 @@ static void __maybe_unused gpmc_read_timings_dt(struct device_node *np, ...@@ -1339,7 +1339,7 @@ static void __maybe_unused gpmc_read_timings_dt(struct device_node *np,
of_property_read_bool(np, "gpmc,time-para-granularity"); of_property_read_bool(np, "gpmc,time-para-granularity");
} }
#ifdef CONFIG_MTD_NAND #if IS_ENABLED(CONFIG_MTD_NAND)
static const char * const nand_xfer_types[] = { static const char * const nand_xfer_types[] = {
[NAND_OMAP_PREFETCH_POLLED] = "prefetch-polled", [NAND_OMAP_PREFETCH_POLLED] = "prefetch-polled",
...@@ -1429,7 +1429,7 @@ static int gpmc_probe_nand_child(struct platform_device *pdev, ...@@ -1429,7 +1429,7 @@ static int gpmc_probe_nand_child(struct platform_device *pdev,
} }
#endif #endif
#ifdef CONFIG_MTD_ONENAND #if IS_ENABLED(CONFIG_MTD_ONENAND)
static int gpmc_probe_onenand_child(struct platform_device *pdev, static int gpmc_probe_onenand_child(struct platform_device *pdev,
struct device_node *child) struct device_node *child)
{ {
......
...@@ -179,15 +179,6 @@ static struct map_desc omap34xx_io_desc[] __initdata = { ...@@ -179,15 +179,6 @@ static struct map_desc omap34xx_io_desc[] __initdata = {
.length = L4_EMU_34XX_SIZE, .length = L4_EMU_34XX_SIZE,
.type = MT_DEVICE .type = MT_DEVICE
}, },
#if defined(CONFIG_DEBUG_LL) && \
(defined(CONFIG_MACH_OMAP_ZOOM2) || defined(CONFIG_MACH_OMAP_ZOOM3))
{
.virtual = ZOOM_UART_VIRT,
.pfn = __phys_to_pfn(ZOOM_UART_BASE),
.length = SZ_1M,
.type = MT_DEVICE
},
#endif
}; };
#endif #endif
......
...@@ -38,6 +38,7 @@ ...@@ -38,6 +38,7 @@
#include <linux/mtd/physmap.h> #include <linux/mtd/physmap.h>
#include <linux/usb/gpio_vbus.h> #include <linux/usb/gpio_vbus.h>
#include <linux/reboot.h> #include <linux/reboot.h>
#include <linux/regulator/fixed.h>
#include <linux/regulator/max1586.h> #include <linux/regulator/max1586.h>
#include <linux/slab.h> #include <linux/slab.h>
#include <linux/i2c/pxa-i2c.h> #include <linux/i2c/pxa-i2c.h>
...@@ -714,6 +715,10 @@ static struct gpio global_gpios[] = { ...@@ -714,6 +715,10 @@ static struct gpio global_gpios[] = {
{ GPIO56_MT9M111_nOE, GPIOF_OUT_INIT_LOW, "Camera nOE" }, { GPIO56_MT9M111_nOE, GPIOF_OUT_INIT_LOW, "Camera nOE" },
}; };
static struct regulator_consumer_supply fixed_5v0_consumers[] = {
REGULATOR_SUPPLY("power", "pwm-backlight"),
};
static void __init mioa701_machine_init(void) static void __init mioa701_machine_init(void)
{ {
int rc; int rc;
...@@ -753,6 +758,10 @@ static void __init mioa701_machine_init(void) ...@@ -753,6 +758,10 @@ static void __init mioa701_machine_init(void)
pxa_set_i2c_info(&i2c_pdata); pxa_set_i2c_info(&i2c_pdata);
pxa27x_set_i2c_power_info(NULL); pxa27x_set_i2c_power_info(NULL);
pxa_set_camera_info(&mioa701_pxacamera_platform_data); pxa_set_camera_info(&mioa701_pxacamera_platform_data);
regulator_register_always_on(0, "fixed-5.0V", fixed_5v0_consumers,
ARRAY_SIZE(fixed_5v0_consumers),
5000000);
} }
static void mioa701_machine_exit(void) static void mioa701_machine_exit(void)
......
...@@ -73,10 +73,20 @@ u32 tegra_uart_config[3] = { ...@@ -73,10 +73,20 @@ u32 tegra_uart_config[3] = {
static void __init tegra_init_cache(void) static void __init tegra_init_cache(void)
{ {
#ifdef CONFIG_CACHE_L2X0 #ifdef CONFIG_CACHE_L2X0
static const struct of_device_id pl310_ids[] __initconst = {
{ .compatible = "arm,pl310-cache", },
{}
};
struct device_node *np;
int ret; int ret;
void __iomem *p = IO_ADDRESS(TEGRA_ARM_PERIF_BASE) + 0x3000; void __iomem *p = IO_ADDRESS(TEGRA_ARM_PERIF_BASE) + 0x3000;
u32 aux_ctrl, cache_type; u32 aux_ctrl, cache_type;
np = of_find_matching_node(NULL, pl310_ids);
if (!np)
return;
cache_type = readl(p + L2X0_CACHE_TYPE); cache_type = readl(p + L2X0_CACHE_TYPE);
aux_ctrl = (cache_type & 0x700) << (17-8); aux_ctrl = (cache_type & 0x700) << (17-8);
aux_ctrl |= 0x7C400001; aux_ctrl |= 0x7C400001;
......
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