Commit 77079b13 authored by Linus Torvalds's avatar Linus Torvalds

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

Pull ARM SoC fixes from Olof Johansson:
 "Again a set of smaller fixes across several platforms (OMAP, Marvell,
  Allwinner, i.MX, etc).

  A handful of typo fixes and smaller missing contents from device
  trees, with some tweaks to OMAP mach files to deal with CPU feature
  print misformatting, potential NULL ptr dereference and one setup
  issue with UARTs"

* tag 'armsoc-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:
  ipmi/bt-bmc: change compatible node to 'aspeed, ast2400-ibt-bmc'
  ARM: dts: STiH410-b2260: Fix typo in spi0 chipselect definition
  ARM: dts: omap5: board-common: fix wrong SMPS6 (VDD-DDR3) voltage
  ARM: omap3: Add missing memory node in SOM-LV
  arm64: dts: marvell: add unique identifiers for Armada A8k SPI controllers
  arm64: dts: marvell: fix clocksource for CP110 slave SPI0
  arm64: dts: marvell: Fix typo in label name on Armada 37xx
  ASoC: omap-abe-twl6040: fix typo in bindings documentation
  dts: omap5: board-common: enable twl6040 headset jack detection
  dts: omap5: board-common: add phandle to reference Palmas gpadc
  ARM: OMAP2+: avoid NULL pointer dereference
  ARM: OMAP2+: PRM: initialize en_uart4_mask and grpsel_uart4_mask
  ARM: dts: omap3: Fix memory node in Torpedo board
  ARM: AM43XX: Select OMAP_INTERCONNECT in Kconfig
  ARM: OMAP3: Fix formatting of features printed
  ARM: dts: imx53-qsb: Fix regulator constraints
  ARM: dts: sun8i: fix the pinmux for UART1
parents d117b9ac 9883ed44
...@@ -6,7 +6,7 @@ perform in-band IPMI communication with their host. ...@@ -6,7 +6,7 @@ perform in-band IPMI communication with their host.
Required properties: Required properties:
- compatible : should be "aspeed,ast2400-bt-bmc" - compatible : should be "aspeed,ast2400-ibt-bmc"
- reg: physical address and size of the registers - reg: physical address and size of the registers
Optional properties: Optional properties:
...@@ -17,7 +17,7 @@ Optional properties: ...@@ -17,7 +17,7 @@ Optional properties:
Example: Example:
ibt@1e789140 { ibt@1e789140 {
compatible = "aspeed,ast2400-bt-bmc"; compatible = "aspeed,ast2400-ibt-bmc";
reg = <0x1e789140 0x18>; reg = <0x1e789140 0x18>;
interrupts = <8>; interrupts = <8>;
}; };
...@@ -12,7 +12,7 @@ Required properties: ...@@ -12,7 +12,7 @@ Required properties:
Optional properties: Optional properties:
- ti,dmic: phandle for the OMAP dmic node if the machine have it connected - ti,dmic: phandle for the OMAP dmic node if the machine have it connected
- ti,jack_detection: Need to be present if the board capable to detect jack - ti,jack-detection: Need to be present if the board capable to detect jack
insertion, removal. insertion, removal.
Available audio endpoints for the audio-routing table: Available audio endpoints for the audio-routing table:
......
...@@ -64,8 +64,8 @@ ldo2_reg: ldo2 { ...@@ -64,8 +64,8 @@ ldo2_reg: ldo2 {
}; };
ldo3_reg: ldo3 { ldo3_reg: ldo3 {
regulator-min-microvolt = <600000>; regulator-min-microvolt = <1725000>;
regulator-max-microvolt = <1800000>; regulator-max-microvolt = <3300000>;
regulator-always-on; regulator-always-on;
}; };
...@@ -76,8 +76,8 @@ ldo4_reg: ldo4 { ...@@ -76,8 +76,8 @@ ldo4_reg: ldo4 {
}; };
ldo5_reg: ldo5 { ldo5_reg: ldo5 {
regulator-min-microvolt = <1725000>; regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <3300000>; regulator-max-microvolt = <3600000>;
regulator-always-on; regulator-always-on;
}; };
...@@ -100,14 +100,14 @@ ldo8_reg: ldo8 { ...@@ -100,14 +100,14 @@ ldo8_reg: ldo8 {
}; };
ldo9_reg: ldo9 { ldo9_reg: ldo9 {
regulator-min-microvolt = <1200000>; regulator-min-microvolt = <1250000>;
regulator-max-microvolt = <3600000>; regulator-max-microvolt = <3600000>;
regulator-always-on; regulator-always-on;
}; };
ldo10_reg: ldo10 { ldo10_reg: ldo10 {
regulator-min-microvolt = <1250000>; regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <3650000>; regulator-max-microvolt = <3600000>;
regulator-always-on; regulator-always-on;
}; };
}; };
......
...@@ -13,6 +13,11 @@ cpu@0 { ...@@ -13,6 +13,11 @@ cpu@0 {
}; };
}; };
memory@80000000 {
device_type = "memory";
reg = <0x80000000 0>;
};
wl12xx_vmmc: wl12xx_vmmc { wl12xx_vmmc: wl12xx_vmmc {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
regulator-name = "vwl1271"; regulator-name = "vwl1271";
......
...@@ -13,9 +13,9 @@ cpu@0 { ...@@ -13,9 +13,9 @@ cpu@0 {
}; };
}; };
memory@0 { memory@80000000 {
device_type = "memory"; device_type = "memory";
reg = <0 0>; reg = <0x80000000 0>;
}; };
leds { leds {
......
...@@ -124,6 +124,7 @@ sound: sound { ...@@ -124,6 +124,7 @@ sound: sound {
compatible = "ti,abe-twl6040"; compatible = "ti,abe-twl6040";
ti,model = "omap5-uevm"; ti,model = "omap5-uevm";
ti,jack-detection;
ti,mclk-freq = <19200000>; ti,mclk-freq = <19200000>;
ti,mcpdm = <&mcpdm>; ti,mcpdm = <&mcpdm>;
...@@ -415,7 +416,7 @@ rtc { ...@@ -415,7 +416,7 @@ rtc {
ti,backup-battery-charge-high-current; ti,backup-battery-charge-high-current;
}; };
gpadc { gpadc: gpadc {
compatible = "ti,palmas-gpadc"; compatible = "ti,palmas-gpadc";
interrupts = <18 0 interrupts = <18 0
16 0 16 0
...@@ -475,8 +476,8 @@ smps45_reg: smps45 { ...@@ -475,8 +476,8 @@ smps45_reg: smps45 {
smps6_reg: smps6 { smps6_reg: smps6 {
/* VDD_DDR3 - over VDD_SMPS6 */ /* VDD_DDR3 - over VDD_SMPS6 */
regulator-name = "smps6"; regulator-name = "smps6";
regulator-min-microvolt = <1200000>; regulator-min-microvolt = <1350000>;
regulator-max-microvolt = <1200000>; regulator-max-microvolt = <1350000>;
regulator-always-on; regulator-always-on;
regulator-boot-on; regulator-boot-on;
}; };
......
...@@ -74,7 +74,7 @@ uart1: serial@9831000 { ...@@ -74,7 +74,7 @@ uart1: serial@9831000 {
/* Low speed expansion connector */ /* Low speed expansion connector */
spi0: spi@9844000 { spi0: spi@9844000 {
label = "LS-SPI0"; label = "LS-SPI0";
cs-gpio = <&pio30 3 0>; cs-gpios = <&pio30 3 0>;
status = "okay"; status = "okay";
}; };
......
...@@ -282,11 +282,15 @@ uart0_pins_a: uart0@0 { ...@@ -282,11 +282,15 @@ uart0_pins_a: uart0@0 {
uart1_pins_a: uart1@0 { uart1_pins_a: uart1@0 {
allwinner,pins = "PG6", "PG7"; allwinner,pins = "PG6", "PG7";
allwinner,function = "uart1"; allwinner,function = "uart1";
allwinner,drive = <SUN4I_PINCTRL_10_MA>;
allwinner,pull = <SUN4I_PINCTRL_NO_PULL>;
}; };
uart1_pins_cts_rts_a: uart1-cts-rts@0 { uart1_pins_cts_rts_a: uart1-cts-rts@0 {
allwinner,pins = "PG8", "PG9"; allwinner,pins = "PG8", "PG9";
allwinner,function = "uart1"; allwinner,function = "uart1";
allwinner,drive = <SUN4I_PINCTRL_10_MA>;
allwinner,pull = <SUN4I_PINCTRL_NO_PULL>;
}; };
mmc0_pins_a: mmc0@0 { mmc0_pins_a: mmc0@0 {
......
...@@ -71,6 +71,7 @@ config SOC_AM43XX ...@@ -71,6 +71,7 @@ config SOC_AM43XX
select HAVE_ARM_TWD select HAVE_ARM_TWD
select ARM_ERRATA_754322 select ARM_ERRATA_754322
select ARM_ERRATA_775420 select ARM_ERRATA_775420
select OMAP_INTERCONNECT
config SOC_DRA7XX config SOC_DRA7XX
bool "TI DRA7XX" bool "TI DRA7XX"
......
...@@ -205,11 +205,15 @@ void __init omap2xxx_check_revision(void) ...@@ -205,11 +205,15 @@ void __init omap2xxx_check_revision(void)
#define OMAP3_SHOW_FEATURE(feat) \ #define OMAP3_SHOW_FEATURE(feat) \
if (omap3_has_ ##feat()) \ if (omap3_has_ ##feat()) \
printk(#feat" "); n += scnprintf(buf + n, sizeof(buf) - n, #feat " ");
static void __init omap3_cpuinfo(void) static void __init omap3_cpuinfo(void)
{ {
const char *cpu_name; const char *cpu_name;
char buf[64];
int n = 0;
memset(buf, 0, sizeof(buf));
/* /*
* OMAP3430 and OMAP3530 are assumed to be same. * OMAP3430 and OMAP3530 are assumed to be same.
...@@ -241,10 +245,10 @@ static void __init omap3_cpuinfo(void) ...@@ -241,10 +245,10 @@ static void __init omap3_cpuinfo(void)
cpu_name = "OMAP3503"; cpu_name = "OMAP3503";
} }
sprintf(soc_name, "%s", cpu_name); scnprintf(soc_name, sizeof(soc_name), "%s", cpu_name);
/* Print verbose information */ /* Print verbose information */
pr_info("%s %s (", soc_name, soc_rev); n += scnprintf(buf, sizeof(buf) - n, "%s %s (", soc_name, soc_rev);
OMAP3_SHOW_FEATURE(l2cache); OMAP3_SHOW_FEATURE(l2cache);
OMAP3_SHOW_FEATURE(iva); OMAP3_SHOW_FEATURE(iva);
...@@ -252,8 +256,10 @@ static void __init omap3_cpuinfo(void) ...@@ -252,8 +256,10 @@ static void __init omap3_cpuinfo(void)
OMAP3_SHOW_FEATURE(neon); OMAP3_SHOW_FEATURE(neon);
OMAP3_SHOW_FEATURE(isp); OMAP3_SHOW_FEATURE(isp);
OMAP3_SHOW_FEATURE(192mhz_clk); OMAP3_SHOW_FEATURE(192mhz_clk);
if (*(buf + n - 1) == ' ')
printk(")\n"); n--;
n += scnprintf(buf + n, sizeof(buf) - n, ")\n");
pr_info("%s", buf);
} }
#define OMAP3_CHECK_FEATURE(status,feat) \ #define OMAP3_CHECK_FEATURE(status,feat) \
......
...@@ -319,6 +319,9 @@ void __init omap3_prm_init_pm(bool has_uart4, bool has_iva) ...@@ -319,6 +319,9 @@ void __init omap3_prm_init_pm(bool has_uart4, bool has_iva)
if (has_uart4) { if (has_uart4) {
en_uart4_mask = OMAP3630_EN_UART4_MASK; en_uart4_mask = OMAP3630_EN_UART4_MASK;
grpsel_uart4_mask = OMAP3630_GRPSEL_UART4_MASK; grpsel_uart4_mask = OMAP3630_GRPSEL_UART4_MASK;
} else {
en_uart4_mask = 0;
grpsel_uart4_mask = 0;
} }
/* Enable wakeups in PER */ /* Enable wakeups in PER */
......
...@@ -87,6 +87,12 @@ int voltdm_scale(struct voltagedomain *voltdm, ...@@ -87,6 +87,12 @@ int voltdm_scale(struct voltagedomain *voltdm,
return -ENODATA; return -ENODATA;
} }
if (!voltdm->volt_data) {
pr_err("%s: No voltage data defined for vdd_%s\n",
__func__, voltdm->name);
return -ENODATA;
}
/* Adjust voltage to the exact voltage from the OPP table */ /* Adjust voltage to the exact voltage from the OPP table */
for (i = 0; voltdm->volt_data[i].volt_nominal != 0; i++) { for (i = 0; voltdm->volt_data[i].volt_nominal != 0; i++) {
if (voltdm->volt_data[i].volt_nominal >= target_volt) { if (voltdm->volt_data[i].volt_nominal >= target_volt) {
......
...@@ -105,7 +105,7 @@ uart0: serial@12000 { ...@@ -105,7 +105,7 @@ uart0: serial@12000 {
status = "disabled"; status = "disabled";
}; };
nb_perih_clk: nb-periph-clk@13000{ nb_periph_clk: nb-periph-clk@13000 {
compatible = "marvell,armada-3700-periph-clock-nb"; compatible = "marvell,armada-3700-periph-clock-nb";
reg = <0x13000 0x100>; reg = <0x13000 0x100>;
clocks = <&tbg 0>, <&tbg 1>, <&tbg 2>, clocks = <&tbg 0>, <&tbg 1>, <&tbg 2>,
...@@ -113,7 +113,7 @@ nb_perih_clk: nb-periph-clk@13000{ ...@@ -113,7 +113,7 @@ nb_perih_clk: nb-periph-clk@13000{
#clock-cells = <1>; #clock-cells = <1>;
}; };
sb_perih_clk: sb-periph-clk@18000{ sb_periph_clk: sb-periph-clk@18000 {
compatible = "marvell,armada-3700-periph-clock-sb"; compatible = "marvell,armada-3700-periph-clock-sb";
reg = <0x18000 0x100>; reg = <0x18000 0x100>;
clocks = <&tbg 0>, <&tbg 1>, <&tbg 2>, clocks = <&tbg 0>, <&tbg 1>, <&tbg 2>,
......
...@@ -130,8 +130,8 @@ cps_spi0: spi@700600 { ...@@ -130,8 +130,8 @@ cps_spi0: spi@700600 {
reg = <0x700600 0x50>; reg = <0x700600 0x50>;
#address-cells = <0x1>; #address-cells = <0x1>;
#size-cells = <0x0>; #size-cells = <0x0>;
cell-index = <1>; cell-index = <3>;
clocks = <&cps_syscon0 0 3>; clocks = <&cps_syscon0 1 21>;
status = "disabled"; status = "disabled";
}; };
...@@ -140,7 +140,7 @@ cps_spi1: spi@700680 { ...@@ -140,7 +140,7 @@ cps_spi1: spi@700680 {
reg = <0x700680 0x50>; reg = <0x700680 0x50>;
#address-cells = <1>; #address-cells = <1>;
#size-cells = <0>; #size-cells = <0>;
cell-index = <2>; cell-index = <4>;
clocks = <&cps_syscon0 1 21>; clocks = <&cps_syscon0 1 21>;
status = "disabled"; status = "disabled";
}; };
......
...@@ -484,7 +484,7 @@ static int bt_bmc_remove(struct platform_device *pdev) ...@@ -484,7 +484,7 @@ static int bt_bmc_remove(struct platform_device *pdev)
} }
static const struct of_device_id bt_bmc_match[] = { static const struct of_device_id bt_bmc_match[] = {
{ .compatible = "aspeed,ast2400-bt-bmc" }, { .compatible = "aspeed,ast2400-ibt-bmc" },
{ }, { },
}; };
...@@ -502,4 +502,4 @@ module_platform_driver(bt_bmc_driver); ...@@ -502,4 +502,4 @@ module_platform_driver(bt_bmc_driver);
MODULE_DEVICE_TABLE(of, bt_bmc_match); MODULE_DEVICE_TABLE(of, bt_bmc_match);
MODULE_LICENSE("GPL"); MODULE_LICENSE("GPL");
MODULE_AUTHOR("Alistair Popple <alistair@popple.id.au>"); MODULE_AUTHOR("Alistair Popple <alistair@popple.id.au>");
MODULE_DESCRIPTION("Linux device interface to the BT interface"); MODULE_DESCRIPTION("Linux device interface to the IPMI BT interface");
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