summaryrefslogtreecommitdiffstats
path: root/arch/arm/boards/freescale-mx6-sabrelite
diff options
context:
space:
mode:
authorLucas Stach <dev@lynxeye.de>2014-01-13 01:17:28 +0100
committerSascha Hauer <s.hauer@pengutronix.de>2014-01-23 08:15:41 +0100
commitc06522e88ecbaceeb864c6895140fa8735580fd6 (patch)
tree1fd2700c9c4b9b89b51a81a1aecd7b57567c7881 /arch/arm/boards/freescale-mx6-sabrelite
parenta1cb05072a653a8b14887299bb15de7e5b427235 (diff)
downloadbarebox-c06522e88ecbaceeb864c6895140fa8735580fd6.tar.gz
barebox-c06522e88ecbaceeb864c6895140fa8735580fd6.tar.xz
ARM: imx6: add support for DL variant of SabreLite Board
Signed-off-by: Lucas Stach <dev@lynxeye.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'arch/arm/boards/freescale-mx6-sabrelite')
-rw-r--r--arch/arm/boards/freescale-mx6-sabrelite/board.c9
-rw-r--r--arch/arm/boards/freescale-mx6-sabrelite/lowlevel.c15
2 files changed, 20 insertions, 4 deletions
diff --git a/arch/arm/boards/freescale-mx6-sabrelite/board.c b/arch/arm/boards/freescale-mx6-sabrelite/board.c
index badfd9e69c..2d79c36dda 100644
--- a/arch/arm/boards/freescale-mx6-sabrelite/board.c
+++ b/arch/arm/boards/freescale-mx6-sabrelite/board.c
@@ -116,7 +116,8 @@ static void sabrelite_ehci_init(void)
static int sabrelite_devices_init(void)
{
- if (!of_machine_is_compatible("fsl,imx6q-sabrelite"))
+ if (!of_machine_is_compatible("fsl,imx6q-sabrelite") &&
+ !of_machine_is_compatible("fsl,imx6dl-sabrelite"))
return 0;
sabrelite_ehci_init();
@@ -132,7 +133,8 @@ device_initcall(sabrelite_devices_init);
static int sabrelite_coredevices_init(void)
{
- if (!of_machine_is_compatible("fsl,imx6q-sabrelite"))
+ if (!of_machine_is_compatible("fsl,imx6q-sabrelite") &&
+ !of_machine_is_compatible("fsl,imx6dl-sabrelite"))
return 0;
phy_register_fixup_for_uid(PHY_ID_KSZ9021, MICREL_PHY_ID_MASK,
@@ -143,7 +145,8 @@ coredevice_initcall(sabrelite_coredevices_init);
static int sabrelite_postcore_init(void)
{
- if (!of_machine_is_compatible("fsl,imx6q-sabrelite"))
+ if (!of_machine_is_compatible("fsl,imx6q-sabrelite") &&
+ !of_machine_is_compatible("fsl,imx6dl-sabrelite"))
return 0;
imx6_init_lowlevel();
diff --git a/arch/arm/boards/freescale-mx6-sabrelite/lowlevel.c b/arch/arm/boards/freescale-mx6-sabrelite/lowlevel.c
index b36a39c23e..14a7f322f7 100644
--- a/arch/arm/boards/freescale-mx6-sabrelite/lowlevel.c
+++ b/arch/arm/boards/freescale-mx6-sabrelite/lowlevel.c
@@ -5,7 +5,7 @@
extern char __dtb_imx6q_sabrelite_start[];
-ENTRY_FUNCTION(start_imx6_sabrelite, r0, r1, r2)
+ENTRY_FUNCTION(start_imx6q_sabrelite, r0, r1, r2)
{
uint32_t fdt;
@@ -15,3 +15,16 @@ ENTRY_FUNCTION(start_imx6_sabrelite, r0, r1, r2)
barebox_arm_entry(0x10000000, SZ_1G, fdt);
}
+
+extern char __dtb_imx6dl_sabrelite_start[];
+
+ENTRY_FUNCTION(start_imx6dl_sabrelite, r0, r1, r2)
+{
+ uint32_t fdt;
+
+ arm_cpu_lowlevel_init();
+
+ fdt = (uint32_t)__dtb_imx6dl_sabrelite_start - get_runtime_offset();
+
+ barebox_arm_entry(0x10000000, SZ_1G, fdt);
+}