Skip to content

Commit

Permalink
Merge tag 'armsoc-cleanups-fixes' of git://git.kernel.org/pub/scm/lin…
Browse files Browse the repository at this point in the history
…ux/kernel/git/arm/arm-soc

Pull ARM SoC cleanups and fixes from Arnd Bergmann:
 "Traditionally we've had two separate branches for cleanups and
  non-critical bug fixes, but both of these got smaller with each
  release and the differences are rather unclear now, so it seems more
  appropriate to have a combined branch.

  The most notable change is for OMAP, which gets a small rework to
  simplify handling of the AUXDATA mechanism used on machines that are
  not completely DT based yet, along with other work that is used as
  preparation for dropping the legacy board files"

* tag 'armsoc-cleanups-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:
  ARM: dts: exynos: Add interrupt line to MAX8997 PMIC on exynos4210-trats
  ARM: dts: exynos: Fix regulator name to avoid forbidden character on exynos4210-trats
  ARM: dts: exynos: Add MFC memory banks for Peach boards
  ARM: OMAP2+: n900 needs MMC slot names for legacy user space
  ARM: OMAP2+: Add more functions to pwm pdata for ir-rx51
  ARM: debug: remove extraneous DEBUG_HI3716_UART option
  ARM: OMAP2+: Simplify auxdata by using the generic match
  of/platform: Allow secondary compatible match in of_dev_lookup
  ARM: davinci: use IRQCHIP_DECLARE for cp_intc
  ARM: davinci: remove unused DA8XX_NUM_UARTS
  ARM: davinci: simplify call to of populate
  ARM: DaVinci USB: removed deprecated properties from MUSB config
  ARM: rockchip: Fix use of plain integer as NULL pointer
  ARM: realview: hide unused 'pmu_device' object
  soc: versatile: dynamically detect RealView HBI numbers
  • Loading branch information
Linus Torvalds committed May 18, 2016
2 parents f61a657 + 2e629eb commit f2b1e0f
Show file tree
Hide file tree
Showing 15 changed files with 143 additions and 80 deletions.
8 changes: 0 additions & 8 deletions arch/arm/Kconfig.debug
Original file line number Diff line number Diff line change
Expand Up @@ -268,14 +268,6 @@ choice
Say Y here if you want kernel low-level debugging support
on HI3620 UART.

config DEBUG_HI3716_UART
bool "Hisilicon Hi3716 Debug UART"
depends on ARCH_HI3xxx
select DEBUG_UART_PL01X
help
Say Y here if you want kernel low-level debugging support
on HI3716 UART.

config DEBUG_HIGHBANK_UART
bool "Kernel low-level debugging messages via Highbank UART"
depends on ARCH_HIGHBANK
Expand Down
4 changes: 3 additions & 1 deletion arch/arm/boot/dts/exynos4210-trats.dts
Original file line number Diff line number Diff line change
Expand Up @@ -298,6 +298,8 @@
compatible = "maxim,max8997-pmic";

reg = <0x66>;
interrupt-parent = <&gpx0>;
interrupts = <7 0>;

max8997,pmic-buck1-uses-gpio-dvs;
max8997,pmic-buck2-uses-gpio-dvs;
Expand Down Expand Up @@ -359,7 +361,7 @@
};

vusbdac_reg: LDO8 {
regulator-name = "VUSB/VDAC_3.3V_C210";
regulator-name = "VUSB+VDAC_3.3V_C210";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
};
Expand Down
5 changes: 5 additions & 0 deletions arch/arm/boot/dts/exynos5420-peach-pit.dts
Original file line number Diff line number Diff line change
Expand Up @@ -696,6 +696,11 @@
status = "okay";
};

&mfc {
samsung,mfc-r = <0x43000000 0x800000>;
samsung,mfc-l = <0x51000000 0x800000>;
};

&mmc_0 {
status = "okay";
num-slots = <1>;
Expand Down
5 changes: 5 additions & 0 deletions arch/arm/boot/dts/exynos5800-peach-pi.dts
Original file line number Diff line number Diff line change
Expand Up @@ -671,6 +671,11 @@
status = "okay";
};

&mfc {
samsung,mfc-r = <0x43000000 0x800000>;
samsung,mfc-l = <0x51000000 0x800000>;
};

&mmc_0 {
status = "okay";
num-slots = <1>;
Expand Down
3 changes: 3 additions & 0 deletions arch/arm/mach-davinci/cp_intc.c
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
#include <linux/export.h>
#include <linux/init.h>
#include <linux/irq.h>
#include <linux/irqchip.h>
#include <linux/irqdomain.h>
#include <linux/io.h>
#include <linux/of.h>
Expand Down Expand Up @@ -210,3 +211,5 @@ void __init cp_intc_init(void)
{
cp_intc_of_init(NULL, NULL);
}

IRQCHIP_DECLARE(cp_intc, "ti,cp-intc", cp_intc_of_init);
17 changes: 1 addition & 16 deletions arch/arm/mach-davinci/da8xx-dt.c
Original file line number Diff line number Diff line change
Expand Up @@ -18,18 +18,6 @@
#include "cp_intc.h"
#include <mach/da8xx.h>

#define DA8XX_NUM_UARTS 3

static const struct of_device_id const da8xx_irq_match[] __initconst = {
{ .compatible = "ti,cp-intc", .data = cp_intc_of_init, },
{ }
};

static void __init da8xx_init_irq(void)
{
of_irq_init(da8xx_irq_match);
}

static struct of_dev_auxdata da850_auxdata_lookup[] __initdata = {
OF_DEV_AUXDATA("ti,davinci-i2c", 0x01c22000, "i2c_davinci.1", NULL),
OF_DEV_AUXDATA("ti,davinci-wdt", 0x01c21000, "davinci-wdt", NULL),
Expand All @@ -54,9 +42,7 @@ static struct of_dev_auxdata da850_auxdata_lookup[] __initdata = {

static void __init da850_init_machine(void)
{
of_platform_populate(NULL, of_default_bus_match_table,
da850_auxdata_lookup, NULL);

of_platform_default_populate(NULL, da850_auxdata_lookup, NULL);
}

static const char *const da850_boards_compat[] __initconst = {
Expand All @@ -68,7 +54,6 @@ static const char *const da850_boards_compat[] __initconst = {

DT_MACHINE_START(DA850_DT, "Generic DA850/OMAP-L138/AM18x")
.map_io = da850_init,
.init_irq = da8xx_init_irq,
.init_time = davinci_timer_init,
.init_machine = da850_init_machine,
.dt_compat = da850_boards_compat,
Expand Down
16 changes: 0 additions & 16 deletions arch/arm/mach-davinci/usb.c
Original file line number Diff line number Diff line change
Expand Up @@ -19,27 +19,11 @@
#define DA8XX_USB1_BASE 0x01e25000

#if IS_ENABLED(CONFIG_USB_MUSB_HDRC)
static struct musb_hdrc_eps_bits musb_eps[] = {
{ "ep1_tx", 8, },
{ "ep1_rx", 8, },
{ "ep2_tx", 8, },
{ "ep2_rx", 8, },
{ "ep3_tx", 5, },
{ "ep3_rx", 5, },
{ "ep4_tx", 5, },
{ "ep4_rx", 5, },
};

static struct musb_hdrc_config musb_config = {
.multipoint = true,
.dyn_fifo = true,
.soft_con = true,
.dma = true,

.num_eps = 5,
.dma_channels = 8,
.ram_bits = 10,
.eps_bits = musb_eps,
};

static struct musb_hdrc_platform_data usb_data = {
Expand Down
35 changes: 33 additions & 2 deletions arch/arm/mach-omap2/board-rx51-peripherals.c
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,8 @@
#include <linux/platform_data/spi-omap2-mcspi.h>
#include <linux/platform_data/mtd-onenand-omap2.h>

#include <plat/dmtimer.h>

#include <asm/system_info.h>

#include "common.h"
Expand All @@ -47,9 +49,8 @@

#include <video/omap-panel-data.h>

#if defined(CONFIG_IR_RX51) || defined(CONFIG_IR_RX51_MODULE)
#include <linux/platform_data/pwm_omap_dmtimer.h>
#include <linux/platform_data/media/ir-rx51.h>
#endif

#include "mux.h"
#include "omap-pm.h"
Expand Down Expand Up @@ -1212,10 +1213,40 @@ static void __init rx51_init_tsc2005(void)
gpio_to_irq(RX51_TSC2005_IRQ_GPIO);
}

#if IS_ENABLED(CONFIG_OMAP_DM_TIMER)
static struct pwm_omap_dmtimer_pdata __maybe_unused pwm_dmtimer_pdata = {
.request_by_node = omap_dm_timer_request_by_node,
.request_specific = omap_dm_timer_request_specific,
.request = omap_dm_timer_request,
.set_source = omap_dm_timer_set_source,
.get_irq = omap_dm_timer_get_irq,
.set_int_enable = omap_dm_timer_set_int_enable,
.set_int_disable = omap_dm_timer_set_int_disable,
.free = omap_dm_timer_free,
.enable = omap_dm_timer_enable,
.disable = omap_dm_timer_disable,
.get_fclk = omap_dm_timer_get_fclk,
.start = omap_dm_timer_start,
.stop = omap_dm_timer_stop,
.set_load = omap_dm_timer_set_load,
.set_match = omap_dm_timer_set_match,
.set_pwm = omap_dm_timer_set_pwm,
.set_prescaler = omap_dm_timer_set_prescaler,
.read_counter = omap_dm_timer_read_counter,
.write_counter = omap_dm_timer_write_counter,
.read_status = omap_dm_timer_read_status,
.write_status = omap_dm_timer_write_status,
};
#endif

#if defined(CONFIG_IR_RX51) || defined(CONFIG_IR_RX51_MODULE)
static struct lirc_rx51_platform_data rx51_lirc_data = {
.set_max_mpu_wakeup_lat = omap_pm_set_max_mpu_wakeup_lat,
.pwm_timer = 9, /* Use GPT 9 for CIR */
#if IS_ENABLED(CONFIG_OMAP_DM_TIMER)
.dmtimer = &pwm_dmtimer_pdata,
#endif

};

static struct platform_device rx51_lirc_device = {
Expand Down
57 changes: 41 additions & 16 deletions arch/arm/mach-omap2/pdata-quirks.c
Original file line number Diff line number Diff line change
Expand Up @@ -21,20 +21,25 @@
#include <linux/regulator/fixed.h>

#include <linux/platform_data/pinctrl-single.h>
#include <linux/platform_data/hsmmc-omap.h>
#include <linux/platform_data/iommu-omap.h>
#include <linux/platform_data/wkup_m3.h>
#include <linux/platform_data/pwm_omap_dmtimer.h>
#include <linux/platform_data/media/ir-rx51.h>
#include <plat/dmtimer.h>

#include "common.h"
#include "common-board-devices.h"
#include "dss-common.h"
#include "control.h"
#include "omap_device.h"
#include "omap-pm.h"
#include "omap-secure.h"
#include "soc.h"
#include "hsmmc.h"

static struct omap_hsmmc_platform_data __maybe_unused mmc_pdata[2];

struct pdata_init {
const char *compatible;
void (*fn)(void);
Expand Down Expand Up @@ -268,9 +273,13 @@ static struct platform_device omap3_rom_rng_device = {
},
};

static struct platform_device rx51_lirc_device;

static void __init nokia_n900_legacy_init(void)
{
hsmmc2_internal_input_clk();
mmc_pdata[0].name = "external";
mmc_pdata[1].name = "internal";

if (omap_type() == OMAP2_DEVICE_TYPE_SEC) {
if (IS_ENABLED(CONFIG_ARM_ERRATA_430973)) {
Expand All @@ -286,6 +295,8 @@ static void __init nokia_n900_legacy_init(void)
platform_device_register(&omap3_rom_rng_device);

}

platform_device_register(&rx51_lirc_device);
}

static void __init omap3_tao3530_legacy_init(void)
Expand Down Expand Up @@ -453,8 +464,14 @@ void omap_auxdata_legacy_init(struct device *dev)

/* Dual mode timer PWM callbacks platdata */
#if IS_ENABLED(CONFIG_OMAP_DM_TIMER)
struct pwm_omap_dmtimer_pdata pwm_dmtimer_pdata = {
static struct pwm_omap_dmtimer_pdata pwm_dmtimer_pdata = {
.request_by_node = omap_dm_timer_request_by_node,
.request_specific = omap_dm_timer_request_specific,
.request = omap_dm_timer_request,
.set_source = omap_dm_timer_set_source,
.get_irq = omap_dm_timer_get_irq,
.set_int_enable = omap_dm_timer_set_int_enable,
.set_int_disable = omap_dm_timer_set_int_disable,
.free = omap_dm_timer_free,
.enable = omap_dm_timer_enable,
.disable = omap_dm_timer_disable,
Expand All @@ -465,10 +482,29 @@ struct pwm_omap_dmtimer_pdata pwm_dmtimer_pdata = {
.set_match = omap_dm_timer_set_match,
.set_pwm = omap_dm_timer_set_pwm,
.set_prescaler = omap_dm_timer_set_prescaler,
.read_counter = omap_dm_timer_read_counter,
.write_counter = omap_dm_timer_write_counter,
.read_status = omap_dm_timer_read_status,
.write_status = omap_dm_timer_write_status,
};
#endif

static struct lirc_rx51_platform_data __maybe_unused rx51_lirc_data = {
.set_max_mpu_wakeup_lat = omap_pm_set_max_mpu_wakeup_lat,
.pwm_timer = 9, /* Use GPT 9 for CIR */
#if IS_ENABLED(CONFIG_OMAP_DM_TIMER)
.dmtimer = &pwm_dmtimer_pdata,
#endif
};

static struct platform_device __maybe_unused rx51_lirc_device = {
.name = "lirc_rx51",
.id = -1,
.dev = {
.platform_data = &rx51_lirc_data,
},
};

/*
* Few boards still need auxdata populated before we populate
* the dev entries in of_platform_populate().
Expand All @@ -492,11 +528,10 @@ static struct of_dev_auxdata omap_auxdata_lookup[] __initdata = {
OF_DEV_AUXDATA("tlv320aic3x", 0x18, "2-0018", &n810_aic33_data),
#endif
#ifdef CONFIG_ARCH_OMAP3
OF_DEV_AUXDATA("ti,omap3-padconf", 0x48002030, "48002030.pinmux", &pcs_pdata),
OF_DEV_AUXDATA("ti,omap3-padconf", 0x480025a0, "480025a0.pinmux", &pcs_pdata),
OF_DEV_AUXDATA("ti,omap3-padconf", 0x48002a00, "48002a00.pinmux", &pcs_pdata),
OF_DEV_AUXDATA("ti,omap2-iommu", 0x5d000000, "5d000000.mmu",
&omap3_iommu_pdata),
OF_DEV_AUXDATA("ti,omap3-hsmmc", 0x4809c000, "4809c000.mmc", &mmc_pdata[0]),
OF_DEV_AUXDATA("ti,omap3-hsmmc", 0x480b4000, "480b4000.mmc", &mmc_pdata[1]),
/* Only on am3517 */
OF_DEV_AUXDATA("ti,davinci_mdio", 0x5c030000, "davinci_mdio.0", NULL),
OF_DEV_AUXDATA("ti,am3517-emac", 0x5c000000, "davinci_emac.0",
Expand All @@ -506,19 +541,7 @@ static struct of_dev_auxdata omap_auxdata_lookup[] __initdata = {
OF_DEV_AUXDATA("ti,am3352-wkup-m3", 0x44d00000, "44d00000.wkup_m3",
&wkup_m3_data),
#endif
#ifdef CONFIG_ARCH_OMAP4
OF_DEV_AUXDATA("ti,omap4-padconf", 0x4a100040, "4a100040.pinmux", &pcs_pdata),
OF_DEV_AUXDATA("ti,omap4-padconf", 0x4a31e040, "4a31e040.pinmux", &pcs_pdata),
#endif
#ifdef CONFIG_SOC_OMAP5
OF_DEV_AUXDATA("ti,omap5-padconf", 0x4a002840, "4a002840.pinmux", &pcs_pdata),
OF_DEV_AUXDATA("ti,omap5-padconf", 0x4ae0c840, "4ae0c840.pinmux", &pcs_pdata),
#endif
#ifdef CONFIG_SOC_DRA7XX
OF_DEV_AUXDATA("ti,dra7-padconf", 0x4a003400, "4a003400.pinmux", &pcs_pdata),
#endif
#ifdef CONFIG_SOC_AM43XX
OF_DEV_AUXDATA("ti,am437-padconf", 0x44e10800, "44e10800.pinmux", &pcs_pdata),
OF_DEV_AUXDATA("ti,am4372-wkup-m3", 0x44d00000, "44d00000.wkup_m3",
&wkup_m3_data),
#endif
Expand All @@ -531,6 +554,8 @@ static struct of_dev_auxdata omap_auxdata_lookup[] __initdata = {
OF_DEV_AUXDATA("ti,omap4-iommu", 0x55082000, "55082000.mmu",
&omap4_iommu_pdata),
#endif
/* Common auxdata */
OF_DEV_AUXDATA("pinctrl-single", 0, NULL, &pcs_pdata),
{ /* sentinel */ },
};

Expand Down
2 changes: 2 additions & 0 deletions arch/arm/mach-realview/realview_pbx.c
Original file line number Diff line number Diff line change
Expand Up @@ -248,6 +248,7 @@ static struct resource realview_pbx_isp1761_resources[] = {
},
};

#ifdef CONFIG_CACHE_L2X0
static struct resource pmu_resources[] = {
[0] = {
.start = IRQ_PBX_PMU_CPU0,
Expand Down Expand Up @@ -277,6 +278,7 @@ static struct platform_device pmu_device = {
.num_resources = ARRAY_SIZE(pmu_resources),
.resource = pmu_resources,
};
#endif

static void __init gic_init_irq(void)
{
Expand Down
2 changes: 1 addition & 1 deletion arch/arm/mach-rockchip/platsmp.c
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ static struct reset_control *rockchip_get_core_reset(int cpu)
if (dev)
np = dev->of_node;
else
np = of_get_cpu_node(cpu, 0);
np = of_get_cpu_node(cpu, NULL);

return of_reset_control_get(np, NULL);
}
Expand Down
Loading

0 comments on commit f2b1e0f

Please sign in to comment.