Commit e264ae28 authored by Arnd Bergmann's avatar Arnd Bergmann
Browse files

Merge tag 'davinci-for-v4.10/cleanup-2' of...

Merge tag 'davinci-for-v4.10/cleanup-2' of git://git.kernel.org/pub/scm/linux/kernel/git/nsekhar/linux-davinci into next/soc

Pull DaVinci cleanup for v4.10 from Sekhar Nori:

mach-davinci cleanup to make it easy to add PM support
for DT-boot.

* tag 'davinci-for-v4.10/cleanup-2' of git://git.kernel.org/pub/scm/linux/kernel/git/nsekhar/linux-davinci:
  ARM: davinci: PM: fix build when da850 not compiled in
  ARM: davinci: PM: cleanup: remove references to pdata
  ARM: davinci: PM: rework init, remove platform device
parents e70a13e7 f7715b29
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -36,5 +36,7 @@ obj-$(CONFIG_MACH_OMAPL138_HAWKBOARD) += board-omapl138-hawk.o

# Power Management
obj-$(CONFIG_CPU_IDLE)			+= cpuidle.o
obj-$(CONFIG_SUSPEND)			+= pm.o sleep.o
obj-$(CONFIG_HAVE_CLK)			+= pm_domain.o
ifeq ($(CONFIG_SUSPEND),y)
obj-$(CONFIG_ARCH_DAVINCI_DA850)	+= pm.o sleep.o
endif
+1 −16
Original line number Diff line number Diff line
@@ -196,18 +196,6 @@ static struct platform_device da850_evm_norflash_device = {
	.resource	= da850_evm_norflash_resource,
};

static struct davinci_pm_config da850_pm_pdata = {
	.sleepcount = 128,
};

static struct platform_device da850_pm_device = {
	.name           = "pm-davinci",
	.dev = {
		.platform_data	= &da850_pm_pdata,
	},
	.id             = -1,
};

/* DA850/OMAP-L138 EVM includes a 512 MByte large-page NAND flash
 * (128K blocks). It may be used instead of the (default) SPI flash
 * to boot, using TI's tools to install the secondary boot loader
@@ -1457,10 +1445,7 @@ static __init void da850_evm_init(void)
	if (ret)
		pr_warn("%s: cpuidle registration failed: %d\n", __func__, ret);

	ret = da850_register_pm(&da850_pm_device);
	if (ret)
		pr_warn("%s: suspend registration failed: %d\n", __func__, ret);

	davinci_pm_init();
	da850_vpif_init();

	ret = spi_register_board_info(da850evm_spi_info,
+1 −15
Original line number Diff line number Diff line
@@ -498,18 +498,6 @@ static void __init mityomapl138_config_emac(void)
		pr_warn("emac registration failed: %d\n", ret);
}

static struct davinci_pm_config da850_pm_pdata = {
	.sleepcount = 128,
};

static struct platform_device da850_pm_device = {
	.name	= "pm-davinci",
	.dev = {
		.platform_data  = &da850_pm_pdata,
	},
	.id	= -1,
};

static void __init mityomapl138_init(void)
{
	int ret;
@@ -559,9 +547,7 @@ static void __init mityomapl138_init(void)
	if (ret)
		pr_warn("cpuidle registration failed: %d\n", ret);

	ret = da850_register_pm(&da850_pm_device);
	if (ret)
		pr_warn("suspend registration failed: %d\n", ret);
	davinci_pm_init();
}

#ifdef CONFIG_SERIAL_8250_CONSOLE
+0 −1
Original line number Diff line number Diff line
@@ -118,6 +118,5 @@ err:
void __init davinci_init_late(void)
{
	davinci_cpufreq_init();
	davinci_pm_init();
	davinci_clk_disable_unused();
}
+0 −38
Original line number Diff line number Diff line
@@ -1172,44 +1172,6 @@ static int da850_round_armrate(struct clk *clk, unsigned long rate)
}
#endif

int __init da850_register_pm(struct platform_device *pdev)
{
	int ret;
	struct davinci_pm_config *pdata = pdev->dev.platform_data;

	ret = davinci_cfg_reg(DA850_RTC_ALARM);
	if (ret)
		return ret;

	pdata->ddr2_ctlr_base = da8xx_get_mem_ctlr();
	pdata->deepsleep_reg = DA8XX_SYSCFG1_VIRT(DA8XX_DEEPSLEEP_REG);
	pdata->ddrpsc_num = DA8XX_LPSC1_EMIF3C;

	pdata->cpupll_reg_base = ioremap(DA8XX_PLL0_BASE, SZ_4K);
	if (!pdata->cpupll_reg_base)
		return -ENOMEM;

	pdata->ddrpll_reg_base = ioremap(DA850_PLL1_BASE, SZ_4K);
	if (!pdata->ddrpll_reg_base) {
		ret = -ENOMEM;
		goto no_ddrpll_mem;
	}

	pdata->ddrpsc_reg_base = ioremap(DA8XX_PSC1_BASE, SZ_4K);
	if (!pdata->ddrpsc_reg_base) {
		ret = -ENOMEM;
		goto no_ddrpsc_mem;
	}

	return platform_device_register(pdev);

no_ddrpsc_mem:
	iounmap(pdata->ddrpll_reg_base);
no_ddrpll_mem:
	iounmap(pdata->cpupll_reg_base);
	return ret;
}

/* VPIF resource, platform data */
static u64 da850_vpif_dma_mask = DMA_BIT_MASK(32);

Loading