diff options
author | Lucas Stach <l.stach@pengutronix.de> | 2015-11-06 17:25:37 +0100 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2015-11-09 07:32:27 +0100 |
commit | 4641ece1466a3691be5bc7302c89ffa2d4f37de8 (patch) | |
tree | f106f4efc690de9436be8eacf2d0f0a721280349 /arch/arm/boards/solidrun-microsom | |
parent | c28e522b0d49c233571085f7186a48c2d5a80b59 (diff) | |
download | barebox-4641ece1466a3691be5bc7302c89ffa2d4f37de8.tar.gz barebox-4641ece1466a3691be5bc7302c89ffa2d4f37de8.tar.xz |
ARM: microsom: add full set of module variants on Hummingboard
Now that we have a full set of DRAM configuration entries we can
build images for the full set of modules on Hummingboard.
Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'arch/arm/boards/solidrun-microsom')
-rw-r--r-- | arch/arm/boards/solidrun-microsom/board.c | 6 | ||||
-rw-r--r-- | arch/arm/boards/solidrun-microsom/lowlevel.c | 31 |
2 files changed, 35 insertions, 2 deletions
diff --git a/arch/arm/boards/solidrun-microsom/board.c b/arch/arm/boards/solidrun-microsom/board.c index c231c17103..280653f5b8 100644 --- a/arch/arm/boards/solidrun-microsom/board.c +++ b/arch/arm/boards/solidrun-microsom/board.c @@ -63,7 +63,8 @@ static int ar8035_phy_fixup(struct phy_device *dev) static int hummingboard_device_init(void) { - if (!of_machine_is_compatible("solidrun,hummingboard/dl")) + if (!of_machine_is_compatible("solidrun,hummingboard/dl") && + !of_machine_is_compatible("solidrun,hummingboard/q")) return 0; phy_register_fixup_for_uid(0x004dd072, 0xffffffef, ar8035_phy_fixup); @@ -80,7 +81,8 @@ device_initcall(hummingboard_device_init); static int hummingboard_late_init(void) { - if (!of_machine_is_compatible("solidrun,hummingboard/dl")) + if (!of_machine_is_compatible("solidrun,hummingboard/dl") && + !of_machine_is_compatible("solidrun,hummingboard/q")) return 0; imx6_bbu_internal_mmc_register_handler("sdcard", "/dev/mmc1.barebox", diff --git a/arch/arm/boards/solidrun-microsom/lowlevel.c b/arch/arm/boards/solidrun-microsom/lowlevel.c index 703c0aafd1..54f1cdf9f4 100644 --- a/arch/arm/boards/solidrun-microsom/lowlevel.c +++ b/arch/arm/boards/solidrun-microsom/lowlevel.c @@ -5,6 +5,7 @@ #include <asm/barebox-arm.h> extern char __dtb_imx6dl_hummingboard_start[]; +extern char __dtb_imx6q_hummingboard_start[]; ENTRY_FUNCTION(start_hummingboard_microsom_i1, r0, r1, r2) { @@ -15,3 +16,33 @@ ENTRY_FUNCTION(start_hummingboard_microsom_i1, r0, r1, r2) fdt = __dtb_imx6dl_hummingboard_start - get_runtime_offset(); barebox_arm_entry(0x10000000, SZ_512M, fdt); } + +ENTRY_FUNCTION(start_hummingboard_microsom_i2, r0, r1, r2) +{ + void *fdt; + + imx6_cpu_lowlevel_init(); + + fdt = __dtb_imx6dl_hummingboard_start - get_runtime_offset(); + barebox_arm_entry(0x10000000, SZ_1G, fdt); +} + +ENTRY_FUNCTION(start_hummingboard_microsom_i2ex, r0, r1, r2) +{ + void *fdt; + + imx6_cpu_lowlevel_init(); + + fdt = __dtb_imx6q_hummingboard_start - get_runtime_offset(); + barebox_arm_entry(0x10000000, SZ_1G, fdt); +} + +ENTRY_FUNCTION(start_hummingboard_microsom_i4, r0, r1, r2) +{ + void *fdt; + + imx6_cpu_lowlevel_init(); + + fdt = __dtb_imx6q_hummingboard_start - get_runtime_offset(); + barebox_arm_entry(0x10000000, SZ_2G, fdt); +} |