2012-08-28 17:57:52 +08:00
|
|
|
/*
|
|
|
|
* Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
|
|
|
|
*
|
|
|
|
* Modified from mach-omap/omap2/board-generic.c
|
|
|
|
*
|
|
|
|
* 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.
|
|
|
|
*/
|
|
|
|
#include <linux/io.h>
|
|
|
|
#include <linux/of_irq.h>
|
|
|
|
#include <linux/of_platform.h>
|
|
|
|
#include <linux/irqdomain.h>
|
|
|
|
|
|
|
|
#include <asm/mach/arch.h>
|
|
|
|
|
|
|
|
#include <mach/common.h>
|
2015-01-30 17:45:33 +08:00
|
|
|
#include "cp_intc.h"
|
2012-08-28 17:57:52 +08:00
|
|
|
#include <mach/da8xx.h>
|
|
|
|
|
2013-04-10 17:27:13 +08:00
|
|
|
static struct of_dev_auxdata da850_auxdata_lookup[] __initdata = {
|
2013-02-06 17:36:22 +08:00
|
|
|
OF_DEV_AUXDATA("ti,davinci-i2c", 0x01c22000, "i2c_davinci.1", NULL),
|
2016-04-01 23:42:05 +08:00
|
|
|
OF_DEV_AUXDATA("ti,davinci-i2c", 0x01e28000, "i2c_davinci.2", NULL),
|
2013-11-27 21:31:53 +08:00
|
|
|
OF_DEV_AUXDATA("ti,davinci-wdt", 0x01c21000, "davinci-wdt", NULL),
|
2013-03-28 21:12:02 +08:00
|
|
|
OF_DEV_AUXDATA("ti,da830-mmc", 0x01c40000, "da830-mmc.0", NULL),
|
2016-11-01 04:04:24 +08:00
|
|
|
OF_DEV_AUXDATA("ti,da850-ehrpwm", 0x01f00000, "ehrpwm.0", NULL),
|
|
|
|
OF_DEV_AUXDATA("ti,da850-ehrpwm", 0x01f02000, "ehrpwm.1", NULL),
|
|
|
|
OF_DEV_AUXDATA("ti,da850-ecap", 0x01f06000, "ecap.0", NULL),
|
|
|
|
OF_DEV_AUXDATA("ti,da850-ecap", 0x01f07000, "ecap.1", NULL),
|
|
|
|
OF_DEV_AUXDATA("ti,da850-ecap", 0x01f08000, "ecap.2", NULL),
|
2016-04-17 01:00:18 +08:00
|
|
|
OF_DEV_AUXDATA("ti,da830-spi", 0x01c41000, "spi_davinci.0", NULL),
|
2013-04-03 22:09:09 +08:00
|
|
|
OF_DEV_AUXDATA("ti,da830-spi", 0x01f0e000, "spi_davinci.1", NULL),
|
2013-06-19 17:15:38 +08:00
|
|
|
OF_DEV_AUXDATA("ns16550a", 0x01c42000, "serial8250.0", NULL),
|
|
|
|
OF_DEV_AUXDATA("ns16550a", 0x01d0c000, "serial8250.1", NULL),
|
|
|
|
OF_DEV_AUXDATA("ns16550a", 0x01d0d000, "serial8250.2", NULL),
|
2013-08-15 14:01:35 +08:00
|
|
|
OF_DEV_AUXDATA("ti,davinci_mdio", 0x01e24000, "davinci_mdio.0", NULL),
|
2013-08-16 22:11:02 +08:00
|
|
|
OF_DEV_AUXDATA("ti,davinci-dm6467-emac", 0x01e20000, "davinci_emac.1",
|
|
|
|
NULL),
|
2014-08-01 14:13:25 +08:00
|
|
|
OF_DEV_AUXDATA("ti,da830-mcasp-audio", 0x01d00000, "davinci-mcasp.0", NULL),
|
2016-08-20 00:47:36 +08:00
|
|
|
OF_DEV_AUXDATA("ti,da850-aemif", 0x68000000, "ti-aemif", NULL),
|
2016-10-05 21:05:31 +08:00
|
|
|
OF_DEV_AUXDATA("ti,da850-tilcdc", 0x01e13000, "da8xx_lcdc.0", NULL),
|
2016-11-04 00:03:06 +08:00
|
|
|
OF_DEV_AUXDATA("ti,da830-ohci", 0x01e25000, "ohci-da8xx", NULL),
|
2016-10-27 08:18:16 +08:00
|
|
|
OF_DEV_AUXDATA("ti,da830-musb", 0x01e00000, "musb-da8xx", NULL),
|
2016-11-01 04:47:19 +08:00
|
|
|
OF_DEV_AUXDATA("ti,da830-usb-phy", 0x01c1417c, "da8xx-usb-phy", NULL),
|
2017-01-30 18:02:00 +08:00
|
|
|
OF_DEV_AUXDATA("ti,da850-ahci", 0x01e18000, "ahci_da850", NULL),
|
2013-02-06 17:36:22 +08:00
|
|
|
{}
|
|
|
|
};
|
|
|
|
|
2012-08-28 17:57:52 +08:00
|
|
|
#ifdef CONFIG_ARCH_DAVINCI_DA850
|
|
|
|
|
|
|
|
static void __init da850_init_machine(void)
|
|
|
|
{
|
2016-11-01 04:47:21 +08:00
|
|
|
int ret;
|
|
|
|
|
|
|
|
ret = da8xx_register_usb20_phy_clk(false);
|
|
|
|
if (ret)
|
|
|
|
pr_warn("%s: registering USB 2.0 PHY clock failed: %d",
|
|
|
|
__func__, ret);
|
|
|
|
ret = da8xx_register_usb11_phy_clk(false);
|
|
|
|
if (ret)
|
|
|
|
pr_warn("%s: registering USB 1.1 PHY clock failed: %d",
|
|
|
|
__func__, ret);
|
|
|
|
|
2016-03-01 06:33:24 +08:00
|
|
|
of_platform_default_populate(NULL, da850_auxdata_lookup, NULL);
|
2016-11-16 03:54:21 +08:00
|
|
|
davinci_pm_init();
|
2017-01-10 04:55:29 +08:00
|
|
|
pdata_quirks_init();
|
2012-08-28 17:57:52 +08:00
|
|
|
}
|
|
|
|
|
2015-07-28 06:27:52 +08:00
|
|
|
static const char *const da850_boards_compat[] __initconst = {
|
2012-05-30 18:19:03 +08:00
|
|
|
"enbw,cmc",
|
ARM: dts: da850: Add basic DTS for the LCDK
The LCDK is the successor to the late Hawkboard.
Among the differences are the flash (16bits vs 8bits) and some pins
(MMC, LEDs, buttons, some external connectors), however the main
components remain the same (eth. phy, audio codec, video decoder and
DAC) except for the main PMIC, different and hard-wired on the LCDK (the
LDOs and DCDCs are always on).
A DT-only boot with this addition gives functional UART, reboot via
watchdog, RTC, ethernet and MMC (I added the CD GPIO for the MMC
although davinci_mmc doesn't call the OF facilities of mmc core).
Cc: Sekhar Nori <nsekhar@ti.com>
Tested-by: Kevin Hilman <khilman@baylibre.com>
Signed-off-by: Karl Beldan <kbeldan@baylibre.com>
Signed-off-by: Sekhar Nori <nsekhar@ti.com>
2016-08-06 04:29:49 +08:00
|
|
|
"ti,da850-lcdk",
|
2012-08-30 01:55:27 +08:00
|
|
|
"ti,da850-evm",
|
2012-08-28 17:57:52 +08:00
|
|
|
"ti,da850",
|
|
|
|
NULL,
|
|
|
|
};
|
|
|
|
|
|
|
|
DT_MACHINE_START(DA850_DT, "Generic DA850/OMAP-L138/AM18x")
|
|
|
|
.map_io = da850_init,
|
2012-11-09 03:40:59 +08:00
|
|
|
.init_time = davinci_timer_init,
|
2012-08-28 17:57:52 +08:00
|
|
|
.init_machine = da850_init_machine,
|
|
|
|
.dt_compat = da850_boards_compat,
|
|
|
|
.init_late = davinci_init_late,
|
|
|
|
.restart = da8xx_restart,
|
|
|
|
MACHINE_END
|
|
|
|
|
|
|
|
#endif
|