* [PATCH 2/8] ARM: i.MX53 loco: Switch to imximage
2013-06-23 21:05 [PATCH 1/8] ARM: i.MX53 SMD: Switch to imximage Sascha Hauer
@ 2013-06-23 21:05 ` Sascha Hauer
2013-06-23 21:05 ` [PATCH 3/8] ARM: i.MX6 sabrelite: " Sascha Hauer
` (5 subsequent siblings)
6 siblings, 0 replies; 8+ messages in thread
From: Sascha Hauer @ 2013-06-23 21:05 UTC (permalink / raw)
To: barebox
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
---
arch/arm/boards/freescale-mx53-loco/Makefile | 4 +-
arch/arm/boards/freescale-mx53-loco/board.c | 7 ++-
arch/arm/boards/freescale-mx53-loco/dcd-data.h | 54 ----------------------
| 54 ++++++++++++++++++++++
| 52 ---------------------
arch/arm/mach-imx/Kconfig | 1 +
6 files changed, 60 insertions(+), 112 deletions(-)
delete mode 100644 arch/arm/boards/freescale-mx53-loco/dcd-data.h
create mode 100644 arch/arm/boards/freescale-mx53-loco/flash-header.imxcfg
delete mode 100644 arch/arm/boards/freescale-mx53-loco/flash_header.c
diff --git a/arch/arm/boards/freescale-mx53-loco/Makefile b/arch/arm/boards/freescale-mx53-loco/Makefile
index d44f697..f1baae2 100644
--- a/arch/arm/boards/freescale-mx53-loco/Makefile
+++ b/arch/arm/boards/freescale-mx53-loco/Makefile
@@ -1,3 +1,3 @@
-obj-y += board.o
-lwl-y += flash_header.o
+obj-y += board.o flash-header.o
+extra-y += flash-header.S flash-header.dcd
lwl-y += lowlevel.o
diff --git a/arch/arm/boards/freescale-mx53-loco/board.c b/arch/arm/boards/freescale-mx53-loco/board.c
index e041de6..82ff2d1 100644
--- a/arch/arm/boards/freescale-mx53-loco/board.c
+++ b/arch/arm/boards/freescale-mx53-loco/board.c
@@ -170,9 +170,7 @@ static void loco_ehci_init(void)
add_generic_usb_ehci_device(1, MX53_OTG_BASE_ADDR + 0x200, NULL);
}
-#define DCD_NAME static struct imx_dcd_v2_entry dcd_entry
-
-#include "dcd-data.h"
+extern char flash_header_start[], flash_header_end[];
static int loco_devices_init(void)
{
@@ -194,7 +192,8 @@ static int loco_devices_init(void)
armlinux_set_architecture(MACH_TYPE_MX53_LOCO);
imx53_bbu_internal_mmc_register_handler("mmc", "/dev/disk0",
- BBU_HANDLER_FLAG_DEFAULT, dcd_entry, sizeof(dcd_entry), 0);
+ BBU_HANDLER_FLAG_DEFAULT, (void *)flash_header_start,
+ flash_header_end - flash_header_start, 0);
return 0;
}
diff --git a/arch/arm/boards/freescale-mx53-loco/dcd-data.h b/arch/arm/boards/freescale-mx53-loco/dcd-data.h
deleted file mode 100644
index 9f95fb4..0000000
--- a/arch/arm/boards/freescale-mx53-loco/dcd-data.h
+++ /dev/null
@@ -1,54 +0,0 @@
-
-DCD_NAME[] = {
- { .addr = cpu_to_be32(0x53fa8554), .val = cpu_to_be32(0x00300000), },
- { .addr = cpu_to_be32(0x53fa8558), .val = cpu_to_be32(0x00300040), },
- { .addr = cpu_to_be32(0x53fa8560), .val = cpu_to_be32(0x00300000), },
- { .addr = cpu_to_be32(0x53fa8564), .val = cpu_to_be32(0x00300040), },
- { .addr = cpu_to_be32(0x53fa8568), .val = cpu_to_be32(0x00300040), },
- { .addr = cpu_to_be32(0x53fa8570), .val = cpu_to_be32(0x00300000), },
- { .addr = cpu_to_be32(0x53fa8574), .val = cpu_to_be32(0x00300000), },
- { .addr = cpu_to_be32(0x53fa8578), .val = cpu_to_be32(0x00300000), },
- { .addr = cpu_to_be32(0x53fa857c), .val = cpu_to_be32(0x00300040), },
- { .addr = cpu_to_be32(0x53fa8580), .val = cpu_to_be32(0x00300040), },
- { .addr = cpu_to_be32(0x53fa8584), .val = cpu_to_be32(0x00300000), },
- { .addr = cpu_to_be32(0x53fa8588), .val = cpu_to_be32(0x00300000), },
- { .addr = cpu_to_be32(0x53fa8590), .val = cpu_to_be32(0x00300040), },
- { .addr = cpu_to_be32(0x53fa8594), .val = cpu_to_be32(0x00300000), },
- { .addr = cpu_to_be32(0x53fa86f0), .val = cpu_to_be32(0x00300000), },
- { .addr = cpu_to_be32(0x53fa86f4), .val = cpu_to_be32(0x00000000), },
- { .addr = cpu_to_be32(0x53fa86fc), .val = cpu_to_be32(0x00000000), },
- { .addr = cpu_to_be32(0x53fa8714), .val = cpu_to_be32(0x00000000), },
- { .addr = cpu_to_be32(0x53fa8718), .val = cpu_to_be32(0x00300000), },
- { .addr = cpu_to_be32(0x53fa871c), .val = cpu_to_be32(0x00300000), },
- { .addr = cpu_to_be32(0x53fa8720), .val = cpu_to_be32(0x00300000), },
- { .addr = cpu_to_be32(0x53fa8724), .val = cpu_to_be32(0x04000000), },
- { .addr = cpu_to_be32(0x53fa8728), .val = cpu_to_be32(0x00300000), },
- { .addr = cpu_to_be32(0x53fa872c), .val = cpu_to_be32(0x00300000), },
- { .addr = cpu_to_be32(0x63fd9088), .val = cpu_to_be32(0x35343535), },
- { .addr = cpu_to_be32(0x63fd9090), .val = cpu_to_be32(0x4d444c44), },
- { .addr = cpu_to_be32(0x63fd907c), .val = cpu_to_be32(0x01370138), },
- { .addr = cpu_to_be32(0x63fd9080), .val = cpu_to_be32(0x013b013c), },
- { .addr = cpu_to_be32(0x63fd9018), .val = cpu_to_be32(0x00011740), },
- { .addr = cpu_to_be32(0x63fd9000), .val = cpu_to_be32(0xc3190000), },
- { .addr = cpu_to_be32(0x63fd900c), .val = cpu_to_be32(0x9f5152e3), },
- { .addr = cpu_to_be32(0x63fd9010), .val = cpu_to_be32(0xb68e8a63), },
- { .addr = cpu_to_be32(0x63fd9014), .val = cpu_to_be32(0x01ff00db), },
- { .addr = cpu_to_be32(0x63fd902c), .val = cpu_to_be32(0x000026d2), },
- { .addr = cpu_to_be32(0x63fd9030), .val = cpu_to_be32(0x009f0e21), },
- { .addr = cpu_to_be32(0x63fd9008), .val = cpu_to_be32(0x12273030), },
- { .addr = cpu_to_be32(0x63fd9004), .val = cpu_to_be32(0x0002002d), },
- { .addr = cpu_to_be32(0x63fd901c), .val = cpu_to_be32(0x00008032), },
- { .addr = cpu_to_be32(0x63fd901c), .val = cpu_to_be32(0x00008033), },
- { .addr = cpu_to_be32(0x63fd901c), .val = cpu_to_be32(0x00028031), },
- { .addr = cpu_to_be32(0x63fd901c), .val = cpu_to_be32(0x052080b0), },
- { .addr = cpu_to_be32(0x63fd901c), .val = cpu_to_be32(0x04008040), },
- { .addr = cpu_to_be32(0x63fd901c), .val = cpu_to_be32(0x0000803a), },
- { .addr = cpu_to_be32(0x63fd901c), .val = cpu_to_be32(0x0000803b), },
- { .addr = cpu_to_be32(0x63fd901c), .val = cpu_to_be32(0x00028039), },
- { .addr = cpu_to_be32(0x63fd901c), .val = cpu_to_be32(0x05208138), },
- { .addr = cpu_to_be32(0x63fd901c), .val = cpu_to_be32(0x04008048), },
- { .addr = cpu_to_be32(0x63fd9020), .val = cpu_to_be32(0x00005800), },
- { .addr = cpu_to_be32(0x63fd9040), .val = cpu_to_be32(0x04b80003), },
- { .addr = cpu_to_be32(0x63fd9058), .val = cpu_to_be32(0x00022227), },
- { .addr = cpu_to_be32(0x63fd901c), .val = cpu_to_be32(0x00000000), },
-};
diff --git a/arch/arm/boards/freescale-mx53-loco/flash-header.imxcfg b/arch/arm/boards/freescale-mx53-loco/flash-header.imxcfg
new file mode 100644
index 0000000..95bcd19
--- /dev/null
+++ b/arch/arm/boards/freescale-mx53-loco/flash-header.imxcfg
@@ -0,0 +1,54 @@
+loadaddr 0x70000000
+soc imx53
+dcdofs 0x400
+wm 32 0x53fa8554 0x00300000
+wm 32 0x53fa8558 0x00300040
+wm 32 0x53fa8560 0x00300000
+wm 32 0x53fa8564 0x00300040
+wm 32 0x53fa8568 0x00300040
+wm 32 0x53fa8570 0x00300000
+wm 32 0x53fa8574 0x00300000
+wm 32 0x53fa8578 0x00300000
+wm 32 0x53fa857c 0x00300040
+wm 32 0x53fa8580 0x00300040
+wm 32 0x53fa8584 0x00300000
+wm 32 0x53fa8588 0x00300000
+wm 32 0x53fa8590 0x00300040
+wm 32 0x53fa8594 0x00300000
+wm 32 0x53fa86f0 0x00300000
+wm 32 0x53fa86f4 0x00000000
+wm 32 0x53fa86fc 0x00000000
+wm 32 0x53fa8714 0x00000000
+wm 32 0x53fa8718 0x00300000
+wm 32 0x53fa871c 0x00300000
+wm 32 0x53fa8720 0x00300000
+wm 32 0x53fa8724 0x04000000
+wm 32 0x53fa8728 0x00300000
+wm 32 0x53fa872c 0x00300000
+wm 32 0x63fd9088 0x35343535
+wm 32 0x63fd9090 0x4d444c44
+wm 32 0x63fd907c 0x01370138
+wm 32 0x63fd9080 0x013b013c
+wm 32 0x63fd9018 0x00011740
+wm 32 0x63fd9000 0xc3190000
+wm 32 0x63fd900c 0x9f5152e3
+wm 32 0x63fd9010 0xb68e8a63
+wm 32 0x63fd9014 0x01ff00db
+wm 32 0x63fd902c 0x000026d2
+wm 32 0x63fd9030 0x009f0e21
+wm 32 0x63fd9008 0x12273030
+wm 32 0x63fd9004 0x0002002d
+wm 32 0x63fd901c 0x00008032
+wm 32 0x63fd901c 0x00008033
+wm 32 0x63fd901c 0x00028031
+wm 32 0x63fd901c 0x052080b0
+wm 32 0x63fd901c 0x04008040
+wm 32 0x63fd901c 0x0000803a
+wm 32 0x63fd901c 0x0000803b
+wm 32 0x63fd901c 0x00028039
+wm 32 0x63fd901c 0x05208138
+wm 32 0x63fd901c 0x04008048
+wm 32 0x63fd9020 0x00005800
+wm 32 0x63fd9040 0x04b80003
+wm 32 0x63fd9058 0x00022227
+wm 32 0x63fd901c 0x00000000
diff --git a/arch/arm/boards/freescale-mx53-loco/flash_header.c b/arch/arm/boards/freescale-mx53-loco/flash_header.c
deleted file mode 100644
index dc1162b..0000000
--- a/arch/arm/boards/freescale-mx53-loco/flash_header.c
+++ /dev/null
@@ -1,52 +0,0 @@
-/*
- * Copyright (C) 2011 Marc Kleine-Budde <mkl@pengutronix.de>
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License as
- * published by the Free Software Foundation; either version 2 of
- * the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- */
-
-#include <common.h>
-#include <asm/byteorder.h>
-#include <mach/imx-flash-header.h>
-#include <asm/barebox-arm-head.h>
-
-void __naked __flash_header_start go(void)
-{
- barebox_arm_head();
-}
-
-#define DCD_NAME struct imx_dcd_v2_entry __dcd_entry_section dcd_entry
-
-#include "dcd-data.h"
-
-#define APP_DEST 0x70000000
-
-struct imx_flash_header_v2 __flash_header_section flash_header = {
- .header.tag = IVT_HEADER_TAG,
- .header.length = cpu_to_be16(32),
- .header.version = IVT_VERSION,
-
- .entry = APP_DEST + 0x1000,
- .dcd_ptr = APP_DEST + 0x400 + offsetof(struct imx_flash_header_v2, dcd),
- .boot_data_ptr = APP_DEST + 0x400 + offsetof(struct imx_flash_header_v2, boot_data),
- .self = APP_DEST + 0x400,
-
- .boot_data.start = APP_DEST,
- .boot_data.size = DCD_BAREBOX_SIZE,
-
- .dcd.header.tag = DCD_HEADER_TAG,
- .dcd.header.length = cpu_to_be16(sizeof(struct imx_dcd) + sizeof(dcd_entry)),
- .dcd.header.version = DCD_VERSION,
-
- .dcd.command.tag = DCD_COMMAND_WRITE_TAG,
- .dcd.command.length = cpu_to_be16(sizeof(struct imx_dcd_command) + sizeof(dcd_entry)),
- .dcd.command.param = DCD_COMMAND_WRITE_PARAM,
-};
diff --git a/arch/arm/mach-imx/Kconfig b/arch/arm/mach-imx/Kconfig
index b7282bb..1269a08 100644
--- a/arch/arm/mach-imx/Kconfig
+++ b/arch/arm/mach-imx/Kconfig
@@ -474,6 +474,7 @@ choice
config MACH_FREESCALE_MX53_LOCO
select HAVE_DEFAULT_ENVIRONMENT_NEW
+ select ARCH_IMX_INTERNAL_BOOT_USE_IMXIMAGE
bool "Freescale i.MX53 LOCO"
config MACH_FREESCALE_MX53_SMD
--
1.8.3.1
_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH 3/8] ARM: i.MX6 sabrelite: Switch to imximage
2013-06-23 21:05 [PATCH 1/8] ARM: i.MX53 SMD: Switch to imximage Sascha Hauer
2013-06-23 21:05 ` [PATCH 2/8] ARM: i.MX53 loco: " Sascha Hauer
@ 2013-06-23 21:05 ` Sascha Hauer
2013-06-23 21:05 ` [PATCH 4/8] ARM: i.MX6 sabresd: " Sascha Hauer
` (4 subsequent siblings)
6 siblings, 0 replies; 8+ messages in thread
From: Sascha Hauer @ 2013-06-23 21:05 UTC (permalink / raw)
To: barebox
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
---
arch/arm/boards/freescale-mx6-sabrelite/Makefile | 1 -
| 128 +++++++++++++++
| 178 ---------------------
arch/arm/mach-imx/Kconfig | 1 +
4 files changed, 129 insertions(+), 179 deletions(-)
create mode 100644 arch/arm/boards/freescale-mx6-sabrelite/flash-header.imxcfg
delete mode 100644 arch/arm/boards/freescale-mx6-sabrelite/flash_header.c
diff --git a/arch/arm/boards/freescale-mx6-sabrelite/Makefile b/arch/arm/boards/freescale-mx6-sabrelite/Makefile
index d44f697..01c7a25 100644
--- a/arch/arm/boards/freescale-mx6-sabrelite/Makefile
+++ b/arch/arm/boards/freescale-mx6-sabrelite/Makefile
@@ -1,3 +1,2 @@
obj-y += board.o
-lwl-y += flash_header.o
lwl-y += lowlevel.o
--git a/arch/arm/boards/freescale-mx6-sabrelite/flash-header.imxcfg b/arch/arm/boards/freescale-mx6-sabrelite/flash-header.imxcfg
new file mode 100644
index 0000000..21f217c
--- /dev/null
+++ b/arch/arm/boards/freescale-mx6-sabrelite/flash-header.imxcfg
@@ -0,0 +1,128 @@
+loadaddr 0x10000000
+soc imx6
+dcdofs 0x400
+wm 32 0x20e05a8 0x00000030
+wm 32 0x20e05b0 0x00000030
+wm 32 0x20e0524 0x00000030
+wm 32 0x20e051c 0x00000030
+
+wm 32 0x20e0518 0x00000030
+wm 32 0x20e050c 0x00000030
+wm 32 0x20e05b8 0x00000030
+wm 32 0x20e05c0 0x00000030
+
+wm 32 0x20e05ac 0x00020030
+wm 32 0x20e05b4 0x00020030
+wm 32 0x20e0528 0x00020030
+wm 32 0x20e0520 0x00020030
+
+wm 32 0x20e0514 0x00020030
+wm 32 0x20e0510 0x00020030
+wm 32 0x20e05bc 0x00020030
+wm 32 0x20e05c4 0x00020030
+
+wm 32 0x20e056c 0x00020030
+wm 32 0x20e0578 0x00020030
+wm 32 0x20e0588 0x00020030
+wm 32 0x20e0594 0x00020030
+
+wm 32 0x20e057c 0x00020030
+wm 32 0x20e0590 0x00003000
+wm 32 0x20e0598 0x00003000
+wm 32 0x20e058c 0x00000000
+
+wm 32 0x20e059c 0x00003030
+wm 32 0x20e05a0 0x00003030
+wm 32 0x20e0784 0x00000030
+wm 32 0x20e0788 0x00000030
+
+wm 32 0x20e0794 0x00000030
+wm 32 0x20e079c 0x00000030
+wm 32 0x20e07a0 0x00000030
+wm 32 0x20e07a4 0x00000030
+
+wm 32 0x20e07a8 0x00000030
+wm 32 0x20e0748 0x00000030
+wm 32 0x20e074c 0x00000030
+wm 32 0x20e0750 0x00020000
+
+wm 32 0x20e0758 0x00000000
+wm 32 0x20e0774 0x00020000
+wm 32 0x20e078c 0x00000030
+wm 32 0x20e0798 0x000C0000
+
+wm 32 0x21b081c 0x33333333
+wm 32 0x21b0820 0x33333333
+wm 32 0x21b0824 0x33333333
+wm 32 0x21b0828 0x33333333
+
+wm 32 0x21b481c 0x33333333
+wm 32 0x21b4820 0x33333333
+wm 32 0x21b4824 0x33333333
+wm 32 0x21b4828 0x33333333
+
+wm 32 0x21b0018 0x00081740
+
+wm 32 0x21b001c 0x00008000
+wm 32 0x21b000c 0x555A7975
+wm 32 0x21b0010 0xFF538E64
+wm 32 0x21b0014 0x01FF00DB
+wm 32 0x21b002c 0x000026D2
+
+wm 32 0x21b0030 0x005B0E21
+wm 32 0x21b0008 0x09444040
+wm 32 0x21b0004 0x00025576
+wm 32 0x21b0040 0x00000027
+wm 32 0x21b0000 0x831A0000
+
+wm 32 0x21b001c 0x04088032
+wm 32 0x21b001c 0x0408803A
+wm 32 0x21b001c 0x00008033
+wm 32 0x21b001c 0x0000803B
+wm 32 0x21b001c 0x00428031
+wm 32 0x21b001c 0x00428039
+wm 32 0x21b001c 0x09408030
+wm 32 0x21b001c 0x09408038
+
+wm 32 0x21b001c 0x04008040
+wm 32 0x21b001c 0x04008048
+wm 32 0x21b0800 0xA1380003
+wm 32 0x21b4800 0xA1380003
+wm 32 0x21b0020 0x00005800
+wm 32 0x21b0818 0x00022227
+wm 32 0x21b4818 0x00022227
+
+wm 32 0x21b083c 0x434B0350
+wm 32 0x21b0840 0x034C0359
+wm 32 0x21b483c 0x434B0350
+wm 32 0x21b4840 0x03650348
+wm 32 0x21b0848 0x4436383B
+wm 32 0x21b4848 0x39393341
+wm 32 0x21b0850 0x35373933
+wm 32 0x21b4850 0x48254A36
+
+wm 32 0x21b080c 0x001F001F
+wm 32 0x21b0810 0x001F001F
+
+wm 32 0x21b480c 0x00440044
+wm 32 0x21b4810 0x00440044
+
+wm 32 0x21b08b8 0x00000800
+wm 32 0x21b48b8 0x00000800
+
+wm 32 0x21b001c 0x00000000
+wm 32 0x21b0404 0x00011006
+
+wm 32 0x020c4068 0x00c03f3f
+wm 32 0x020c406c 0x0030fc03
+wm 32 0x020c4070 0x0fffc000
+wm 32 0x020c4074 0x3ff00000
+wm 32 0x020c4078 0x00fff300
+wm 32 0x020c407c 0x0f0000c3
+wm 32 0x020c4080 0x000003ff
+
+# enable AXI cache for VDOA/VPU/IPU
+wm 32 0x20e0010 0xf00000cf
+# set IPU AXI-id0 Qos=0xf(bypass) AXI-id1 Qos=0x7
+wm 32 0x20e0018 0x007f007f
+wm 32 0x20e001c 0x007f007f
diff --git a/arch/arm/boards/freescale-mx6-sabrelite/flash_header.c b/arch/arm/boards/freescale-mx6-sabrelite/flash_header.c
deleted file mode 100644
index 61d482b..0000000
--- a/arch/arm/boards/freescale-mx6-sabrelite/flash_header.c
+++ /dev/null
@@ -1,178 +0,0 @@
-/*
- * Copyright (C) 2011 Marc Kleine-Budde <mkl@pengutronix.de>
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License as
- * published by the Free Software Foundation; either version 2 of
- * the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- */
-
-#include <common.h>
-#include <asm/byteorder.h>
-#include <mach/imx-flash-header.h>
-#include <mach/imx6-regs.h>
-#include <asm/barebox-arm-head.h>
-
-void __naked __flash_header_start go(void)
-{
- barebox_arm_head();
-}
-
-#define DCD(a, v) { .addr = cpu_to_be32(a), .val = cpu_to_be32(v), }
-
-struct imx_dcd_v2_entry __dcd_entry_section dcd_entry[] = {
- DCD(MX6_IOMUXC_BASE_ADDR + 0x5a8, 0x00000030),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x5b0, 0x00000030),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x524, 0x00000030),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x51c, 0x00000030),
-
- DCD(MX6_IOMUXC_BASE_ADDR + 0x518, 0x00000030),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x50c, 0x00000030),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x5b8, 0x00000030),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x5c0, 0x00000030),
-
- DCD(MX6_IOMUXC_BASE_ADDR + 0x5ac, 0x00020030),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x5b4, 0x00020030),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x528, 0x00020030),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x520, 0x00020030),
-
- DCD(MX6_IOMUXC_BASE_ADDR + 0x514, 0x00020030),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x510, 0x00020030),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x5bc, 0x00020030),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x5c4, 0x00020030),
-
- DCD(MX6_IOMUXC_BASE_ADDR + 0x56c, 0x00020030),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x578, 0x00020030),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x588, 0x00020030),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x594, 0x00020030),
-
- DCD(MX6_IOMUXC_BASE_ADDR + 0x57c, 0x00020030),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x590, 0x00003000),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x598, 0x00003000),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x58c, 0x00000000),
-
- DCD(MX6_IOMUXC_BASE_ADDR + 0x59c, 0x00003030),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x5a0, 0x00003030),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x784, 0x00000030),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x788, 0x00000030),
-
- DCD(MX6_IOMUXC_BASE_ADDR + 0x794, 0x00000030),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x79c, 0x00000030),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x7a0, 0x00000030),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x7a4, 0x00000030),
-
- DCD(MX6_IOMUXC_BASE_ADDR + 0x7a8, 0x00000030),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x748, 0x00000030),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x74c, 0x00000030),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x750, 0x00020000),
-
- DCD(MX6_IOMUXC_BASE_ADDR + 0x758, 0x00000000),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x774, 0x00020000),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x78c, 0x00000030),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x798, 0x000C0000),
-
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x81c, 0x33333333),
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x820, 0x33333333),
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x824, 0x33333333),
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x828, 0x33333333),
-
- DCD(MX6_MMDC_P1_BASE_ADDR + 0x81c, 0x33333333),
- DCD(MX6_MMDC_P1_BASE_ADDR + 0x820, 0x33333333),
- DCD(MX6_MMDC_P1_BASE_ADDR + 0x824, 0x33333333),
- DCD(MX6_MMDC_P1_BASE_ADDR + 0x828, 0x33333333),
-
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x018, 0x00081740),
-
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x01c, 0x00008000),
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x00c, 0x555A7975),
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x010, 0xFF538E64),
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x014, 0x01FF00DB),
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x02c, 0x000026D2),
-
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x030, 0x005B0E21),
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x008, 0x09444040),
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x004, 0x00025576),
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x040, 0x00000027),
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x000, 0x831A0000),
-
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x01c, 0x04088032),
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x01c, 0x0408803A),
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x01c, 0x00008033),
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x01c, 0x0000803B),
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x01c, 0x00428031),
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x01c, 0x00428039),
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x01c, 0x09408030),
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x01c, 0x09408038),
-
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x01c, 0x04008040),
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x01c, 0x04008048),
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x800, 0xA1380003),
- DCD(MX6_MMDC_P1_BASE_ADDR + 0x800, 0xA1380003),
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x020, 0x00005800),
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x818, 0x00022227),
- DCD(MX6_MMDC_P1_BASE_ADDR + 0x818, 0x00022227),
-
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x83c, 0x434B0350),
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x840, 0x034C0359),
- DCD(MX6_MMDC_P1_BASE_ADDR + 0x83c, 0x434B0350),
- DCD(MX6_MMDC_P1_BASE_ADDR + 0x840, 0x03650348),
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x848, 0x4436383B),
- DCD(MX6_MMDC_P1_BASE_ADDR + 0x848, 0x39393341),
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x850, 0x35373933),
- DCD(MX6_MMDC_P1_BASE_ADDR + 0x850, 0x48254A36),
-
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x80c, 0x001F001F),
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x810, 0x001F001F),
-
- DCD(MX6_MMDC_P1_BASE_ADDR + 0x80c, 0x00440044),
- DCD(MX6_MMDC_P1_BASE_ADDR + 0x810, 0x00440044),
-
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x8b8, 0x00000800),
- DCD(MX6_MMDC_P1_BASE_ADDR + 0x8b8, 0x00000800),
-
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x01c, 0x00000000),
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x404, 0x00011006),
-
- DCD(MX6_CCM_BASE_ADDR + 0x068, 0x00c03f3f),
- DCD(MX6_CCM_BASE_ADDR + 0x06c, 0x0030fc03),
- DCD(MX6_CCM_BASE_ADDR + 0x070, 0x0fffc000),
- DCD(MX6_CCM_BASE_ADDR + 0x074, 0x3ff00000),
- DCD(MX6_CCM_BASE_ADDR + 0x078, 0x00fff300),
- DCD(MX6_CCM_BASE_ADDR + 0x07c, 0x0f0000c3),
- DCD(MX6_CCM_BASE_ADDR + 0x080, 0x000003ff),
-
- /* enable AXI cache for VDOA/VPU/IPU */
- DCD(MX6_IOMUXC_BASE_ADDR + 0x010, 0xf00000cf),
- /* set IPU AXI-id0 Qos=0xf(bypass) AXI-id1 Qos=0x7 */
- DCD(MX6_IOMUXC_BASE_ADDR + 0x018, 0x007f007f),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x01c, 0x007f007f),
-};
-
-#define APP_DEST CONFIG_TEXT_BASE
-
-struct imx_flash_header_v2 __flash_header_section flash_header = {
- .header.tag = IVT_HEADER_TAG,
- .header.length = cpu_to_be16(32),
- .header.version = IVT_VERSION,
- .entry = (u32)_stext,
- .dcd_ptr = APP_DEST + FLASH_HEADER_OFFSET + offsetof(struct imx_flash_header_v2, dcd),
- .boot_data_ptr = APP_DEST + FLASH_HEADER_OFFSET + offsetof(struct imx_flash_header_v2, boot_data),
- .self = APP_DEST + FLASH_HEADER_OFFSET,
-
- .boot_data.start = APP_DEST,
- .boot_data.size = barebox_image_size,
-
- .dcd.header.tag = DCD_HEADER_TAG,
- .dcd.header.length = cpu_to_be16(sizeof(struct imx_dcd) + sizeof(dcd_entry)),
- .dcd.header.version = DCD_VERSION,
-
- .dcd.command.tag = DCD_COMMAND_WRITE_TAG,
- .dcd.command.length = cpu_to_be16(sizeof(struct imx_dcd_command) + sizeof(dcd_entry)),
- .dcd.command.param = DCD_COMMAND_WRITE_PARAM,
-};
diff --git a/arch/arm/mach-imx/Kconfig b/arch/arm/mach-imx/Kconfig
index 1269a08..11fd095 100644
--- a/arch/arm/mach-imx/Kconfig
+++ b/arch/arm/mach-imx/Kconfig
@@ -522,6 +522,7 @@ config MACH_MX6Q_ARM2
config MACH_SABRELITE
select HAVE_DEFAULT_ENVIRONMENT_NEW
+ select ARCH_IMX_INTERNAL_BOOT_USE_IMXIMAGE
bool "Freescale i.MX6 Sabre Lite"
config MACH_SABRESD
--
1.8.3.1
_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH 4/8] ARM: i.MX6 sabresd: Switch to imximage
2013-06-23 21:05 [PATCH 1/8] ARM: i.MX53 SMD: Switch to imximage Sascha Hauer
2013-06-23 21:05 ` [PATCH 2/8] ARM: i.MX53 loco: " Sascha Hauer
2013-06-23 21:05 ` [PATCH 3/8] ARM: i.MX6 sabrelite: " Sascha Hauer
@ 2013-06-23 21:05 ` Sascha Hauer
2013-06-23 21:05 ` [PATCH 5/8] ARM: i.MX51 Efika SB: " Sascha Hauer
` (3 subsequent siblings)
6 siblings, 0 replies; 8+ messages in thread
From: Sascha Hauer @ 2013-06-23 21:05 UTC (permalink / raw)
To: barebox
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
---
arch/arm/boards/freescale-mx6-sabresd/Makefile | 1 -
| 128 +++++++++++++++
| 178 ---------------------
arch/arm/mach-imx/Kconfig | 1 +
4 files changed, 129 insertions(+), 179 deletions(-)
create mode 100644 arch/arm/boards/freescale-mx6-sabresd/flash-header.imxcfg
delete mode 100644 arch/arm/boards/freescale-mx6-sabresd/flash_header.c
diff --git a/arch/arm/boards/freescale-mx6-sabresd/Makefile b/arch/arm/boards/freescale-mx6-sabresd/Makefile
index d44f697..01c7a25 100644
--- a/arch/arm/boards/freescale-mx6-sabresd/Makefile
+++ b/arch/arm/boards/freescale-mx6-sabresd/Makefile
@@ -1,3 +1,2 @@
obj-y += board.o
-lwl-y += flash_header.o
lwl-y += lowlevel.o
--git a/arch/arm/boards/freescale-mx6-sabresd/flash-header.imxcfg b/arch/arm/boards/freescale-mx6-sabresd/flash-header.imxcfg
new file mode 100644
index 0000000..21f217c
--- /dev/null
+++ b/arch/arm/boards/freescale-mx6-sabresd/flash-header.imxcfg
@@ -0,0 +1,128 @@
+loadaddr 0x10000000
+soc imx6
+dcdofs 0x400
+wm 32 0x20e05a8 0x00000030
+wm 32 0x20e05b0 0x00000030
+wm 32 0x20e0524 0x00000030
+wm 32 0x20e051c 0x00000030
+
+wm 32 0x20e0518 0x00000030
+wm 32 0x20e050c 0x00000030
+wm 32 0x20e05b8 0x00000030
+wm 32 0x20e05c0 0x00000030
+
+wm 32 0x20e05ac 0x00020030
+wm 32 0x20e05b4 0x00020030
+wm 32 0x20e0528 0x00020030
+wm 32 0x20e0520 0x00020030
+
+wm 32 0x20e0514 0x00020030
+wm 32 0x20e0510 0x00020030
+wm 32 0x20e05bc 0x00020030
+wm 32 0x20e05c4 0x00020030
+
+wm 32 0x20e056c 0x00020030
+wm 32 0x20e0578 0x00020030
+wm 32 0x20e0588 0x00020030
+wm 32 0x20e0594 0x00020030
+
+wm 32 0x20e057c 0x00020030
+wm 32 0x20e0590 0x00003000
+wm 32 0x20e0598 0x00003000
+wm 32 0x20e058c 0x00000000
+
+wm 32 0x20e059c 0x00003030
+wm 32 0x20e05a0 0x00003030
+wm 32 0x20e0784 0x00000030
+wm 32 0x20e0788 0x00000030
+
+wm 32 0x20e0794 0x00000030
+wm 32 0x20e079c 0x00000030
+wm 32 0x20e07a0 0x00000030
+wm 32 0x20e07a4 0x00000030
+
+wm 32 0x20e07a8 0x00000030
+wm 32 0x20e0748 0x00000030
+wm 32 0x20e074c 0x00000030
+wm 32 0x20e0750 0x00020000
+
+wm 32 0x20e0758 0x00000000
+wm 32 0x20e0774 0x00020000
+wm 32 0x20e078c 0x00000030
+wm 32 0x20e0798 0x000C0000
+
+wm 32 0x21b081c 0x33333333
+wm 32 0x21b0820 0x33333333
+wm 32 0x21b0824 0x33333333
+wm 32 0x21b0828 0x33333333
+
+wm 32 0x21b481c 0x33333333
+wm 32 0x21b4820 0x33333333
+wm 32 0x21b4824 0x33333333
+wm 32 0x21b4828 0x33333333
+
+wm 32 0x21b0018 0x00081740
+
+wm 32 0x21b001c 0x00008000
+wm 32 0x21b000c 0x555A7975
+wm 32 0x21b0010 0xFF538E64
+wm 32 0x21b0014 0x01FF00DB
+wm 32 0x21b002c 0x000026D2
+
+wm 32 0x21b0030 0x005B0E21
+wm 32 0x21b0008 0x09444040
+wm 32 0x21b0004 0x00025576
+wm 32 0x21b0040 0x00000027
+wm 32 0x21b0000 0x831A0000
+
+wm 32 0x21b001c 0x04088032
+wm 32 0x21b001c 0x0408803A
+wm 32 0x21b001c 0x00008033
+wm 32 0x21b001c 0x0000803B
+wm 32 0x21b001c 0x00428031
+wm 32 0x21b001c 0x00428039
+wm 32 0x21b001c 0x09408030
+wm 32 0x21b001c 0x09408038
+
+wm 32 0x21b001c 0x04008040
+wm 32 0x21b001c 0x04008048
+wm 32 0x21b0800 0xA1380003
+wm 32 0x21b4800 0xA1380003
+wm 32 0x21b0020 0x00005800
+wm 32 0x21b0818 0x00022227
+wm 32 0x21b4818 0x00022227
+
+wm 32 0x21b083c 0x434B0350
+wm 32 0x21b0840 0x034C0359
+wm 32 0x21b483c 0x434B0350
+wm 32 0x21b4840 0x03650348
+wm 32 0x21b0848 0x4436383B
+wm 32 0x21b4848 0x39393341
+wm 32 0x21b0850 0x35373933
+wm 32 0x21b4850 0x48254A36
+
+wm 32 0x21b080c 0x001F001F
+wm 32 0x21b0810 0x001F001F
+
+wm 32 0x21b480c 0x00440044
+wm 32 0x21b4810 0x00440044
+
+wm 32 0x21b08b8 0x00000800
+wm 32 0x21b48b8 0x00000800
+
+wm 32 0x21b001c 0x00000000
+wm 32 0x21b0404 0x00011006
+
+wm 32 0x020c4068 0x00c03f3f
+wm 32 0x020c406c 0x0030fc03
+wm 32 0x020c4070 0x0fffc000
+wm 32 0x020c4074 0x3ff00000
+wm 32 0x020c4078 0x00fff300
+wm 32 0x020c407c 0x0f0000c3
+wm 32 0x020c4080 0x000003ff
+
+# enable AXI cache for VDOA/VPU/IPU
+wm 32 0x20e0010 0xf00000cf
+# set IPU AXI-id0 Qos=0xf(bypass) AXI-id1 Qos=0x7
+wm 32 0x20e0018 0x007f007f
+wm 32 0x20e001c 0x007f007f
diff --git a/arch/arm/boards/freescale-mx6-sabresd/flash_header.c b/arch/arm/boards/freescale-mx6-sabresd/flash_header.c
deleted file mode 100644
index 61d482b..0000000
--- a/arch/arm/boards/freescale-mx6-sabresd/flash_header.c
+++ /dev/null
@@ -1,178 +0,0 @@
-/*
- * Copyright (C) 2011 Marc Kleine-Budde <mkl@pengutronix.de>
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License as
- * published by the Free Software Foundation; either version 2 of
- * the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- */
-
-#include <common.h>
-#include <asm/byteorder.h>
-#include <mach/imx-flash-header.h>
-#include <mach/imx6-regs.h>
-#include <asm/barebox-arm-head.h>
-
-void __naked __flash_header_start go(void)
-{
- barebox_arm_head();
-}
-
-#define DCD(a, v) { .addr = cpu_to_be32(a), .val = cpu_to_be32(v), }
-
-struct imx_dcd_v2_entry __dcd_entry_section dcd_entry[] = {
- DCD(MX6_IOMUXC_BASE_ADDR + 0x5a8, 0x00000030),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x5b0, 0x00000030),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x524, 0x00000030),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x51c, 0x00000030),
-
- DCD(MX6_IOMUXC_BASE_ADDR + 0x518, 0x00000030),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x50c, 0x00000030),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x5b8, 0x00000030),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x5c0, 0x00000030),
-
- DCD(MX6_IOMUXC_BASE_ADDR + 0x5ac, 0x00020030),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x5b4, 0x00020030),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x528, 0x00020030),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x520, 0x00020030),
-
- DCD(MX6_IOMUXC_BASE_ADDR + 0x514, 0x00020030),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x510, 0x00020030),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x5bc, 0x00020030),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x5c4, 0x00020030),
-
- DCD(MX6_IOMUXC_BASE_ADDR + 0x56c, 0x00020030),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x578, 0x00020030),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x588, 0x00020030),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x594, 0x00020030),
-
- DCD(MX6_IOMUXC_BASE_ADDR + 0x57c, 0x00020030),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x590, 0x00003000),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x598, 0x00003000),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x58c, 0x00000000),
-
- DCD(MX6_IOMUXC_BASE_ADDR + 0x59c, 0x00003030),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x5a0, 0x00003030),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x784, 0x00000030),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x788, 0x00000030),
-
- DCD(MX6_IOMUXC_BASE_ADDR + 0x794, 0x00000030),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x79c, 0x00000030),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x7a0, 0x00000030),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x7a4, 0x00000030),
-
- DCD(MX6_IOMUXC_BASE_ADDR + 0x7a8, 0x00000030),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x748, 0x00000030),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x74c, 0x00000030),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x750, 0x00020000),
-
- DCD(MX6_IOMUXC_BASE_ADDR + 0x758, 0x00000000),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x774, 0x00020000),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x78c, 0x00000030),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x798, 0x000C0000),
-
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x81c, 0x33333333),
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x820, 0x33333333),
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x824, 0x33333333),
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x828, 0x33333333),
-
- DCD(MX6_MMDC_P1_BASE_ADDR + 0x81c, 0x33333333),
- DCD(MX6_MMDC_P1_BASE_ADDR + 0x820, 0x33333333),
- DCD(MX6_MMDC_P1_BASE_ADDR + 0x824, 0x33333333),
- DCD(MX6_MMDC_P1_BASE_ADDR + 0x828, 0x33333333),
-
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x018, 0x00081740),
-
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x01c, 0x00008000),
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x00c, 0x555A7975),
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x010, 0xFF538E64),
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x014, 0x01FF00DB),
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x02c, 0x000026D2),
-
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x030, 0x005B0E21),
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x008, 0x09444040),
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x004, 0x00025576),
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x040, 0x00000027),
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x000, 0x831A0000),
-
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x01c, 0x04088032),
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x01c, 0x0408803A),
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x01c, 0x00008033),
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x01c, 0x0000803B),
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x01c, 0x00428031),
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x01c, 0x00428039),
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x01c, 0x09408030),
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x01c, 0x09408038),
-
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x01c, 0x04008040),
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x01c, 0x04008048),
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x800, 0xA1380003),
- DCD(MX6_MMDC_P1_BASE_ADDR + 0x800, 0xA1380003),
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x020, 0x00005800),
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x818, 0x00022227),
- DCD(MX6_MMDC_P1_BASE_ADDR + 0x818, 0x00022227),
-
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x83c, 0x434B0350),
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x840, 0x034C0359),
- DCD(MX6_MMDC_P1_BASE_ADDR + 0x83c, 0x434B0350),
- DCD(MX6_MMDC_P1_BASE_ADDR + 0x840, 0x03650348),
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x848, 0x4436383B),
- DCD(MX6_MMDC_P1_BASE_ADDR + 0x848, 0x39393341),
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x850, 0x35373933),
- DCD(MX6_MMDC_P1_BASE_ADDR + 0x850, 0x48254A36),
-
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x80c, 0x001F001F),
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x810, 0x001F001F),
-
- DCD(MX6_MMDC_P1_BASE_ADDR + 0x80c, 0x00440044),
- DCD(MX6_MMDC_P1_BASE_ADDR + 0x810, 0x00440044),
-
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x8b8, 0x00000800),
- DCD(MX6_MMDC_P1_BASE_ADDR + 0x8b8, 0x00000800),
-
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x01c, 0x00000000),
- DCD(MX6_MMDC_P0_BASE_ADDR + 0x404, 0x00011006),
-
- DCD(MX6_CCM_BASE_ADDR + 0x068, 0x00c03f3f),
- DCD(MX6_CCM_BASE_ADDR + 0x06c, 0x0030fc03),
- DCD(MX6_CCM_BASE_ADDR + 0x070, 0x0fffc000),
- DCD(MX6_CCM_BASE_ADDR + 0x074, 0x3ff00000),
- DCD(MX6_CCM_BASE_ADDR + 0x078, 0x00fff300),
- DCD(MX6_CCM_BASE_ADDR + 0x07c, 0x0f0000c3),
- DCD(MX6_CCM_BASE_ADDR + 0x080, 0x000003ff),
-
- /* enable AXI cache for VDOA/VPU/IPU */
- DCD(MX6_IOMUXC_BASE_ADDR + 0x010, 0xf00000cf),
- /* set IPU AXI-id0 Qos=0xf(bypass) AXI-id1 Qos=0x7 */
- DCD(MX6_IOMUXC_BASE_ADDR + 0x018, 0x007f007f),
- DCD(MX6_IOMUXC_BASE_ADDR + 0x01c, 0x007f007f),
-};
-
-#define APP_DEST CONFIG_TEXT_BASE
-
-struct imx_flash_header_v2 __flash_header_section flash_header = {
- .header.tag = IVT_HEADER_TAG,
- .header.length = cpu_to_be16(32),
- .header.version = IVT_VERSION,
- .entry = (u32)_stext,
- .dcd_ptr = APP_DEST + FLASH_HEADER_OFFSET + offsetof(struct imx_flash_header_v2, dcd),
- .boot_data_ptr = APP_DEST + FLASH_HEADER_OFFSET + offsetof(struct imx_flash_header_v2, boot_data),
- .self = APP_DEST + FLASH_HEADER_OFFSET,
-
- .boot_data.start = APP_DEST,
- .boot_data.size = barebox_image_size,
-
- .dcd.header.tag = DCD_HEADER_TAG,
- .dcd.header.length = cpu_to_be16(sizeof(struct imx_dcd) + sizeof(dcd_entry)),
- .dcd.header.version = DCD_VERSION,
-
- .dcd.command.tag = DCD_COMMAND_WRITE_TAG,
- .dcd.command.length = cpu_to_be16(sizeof(struct imx_dcd_command) + sizeof(dcd_entry)),
- .dcd.command.param = DCD_COMMAND_WRITE_PARAM,
-};
diff --git a/arch/arm/mach-imx/Kconfig b/arch/arm/mach-imx/Kconfig
index 11fd095..c2d6348 100644
--- a/arch/arm/mach-imx/Kconfig
+++ b/arch/arm/mach-imx/Kconfig
@@ -526,6 +526,7 @@ config MACH_SABRELITE
bool "Freescale i.MX6 Sabre Lite"
config MACH_SABRESD
+ select ARCH_IMX_INTERNAL_BOOT_USE_IMXIMAGE
bool "Freescale i.MX6 SabreSD"
config MACH_REALQ7
--
1.8.3.1
_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH 5/8] ARM: i.MX51 Efika SB: Switch to imximage
2013-06-23 21:05 [PATCH 1/8] ARM: i.MX53 SMD: Switch to imximage Sascha Hauer
` (2 preceding siblings ...)
2013-06-23 21:05 ` [PATCH 4/8] ARM: i.MX6 sabresd: " Sascha Hauer
@ 2013-06-23 21:05 ` Sascha Hauer
2013-06-23 21:05 ` [PATCH 6/8] ARM: i.MX51 ccxmx51: " Sascha Hauer
` (2 subsequent siblings)
6 siblings, 0 replies; 8+ messages in thread
From: Sascha Hauer @ 2013-06-23 21:05 UTC (permalink / raw)
To: barebox
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
---
arch/arm/boards/efika-mx-smartbook/Makefile | 4 +-
arch/arm/boards/efika-mx-smartbook/board.c | 8 ++-
arch/arm/boards/efika-mx-smartbook/dcd-data.h | 56 ---------------------
| 57 ++++++++++++++++++++++
| 29 -----------
arch/arm/mach-imx/Kconfig | 1 +
6 files changed, 63 insertions(+), 92 deletions(-)
delete mode 100644 arch/arm/boards/efika-mx-smartbook/dcd-data.h
create mode 100644 arch/arm/boards/efika-mx-smartbook/flash-header.imxcfg
delete mode 100644 arch/arm/boards/efika-mx-smartbook/flash_header.c
diff --git a/arch/arm/boards/efika-mx-smartbook/Makefile b/arch/arm/boards/efika-mx-smartbook/Makefile
index a2c3104..c21540b 100644
--- a/arch/arm/boards/efika-mx-smartbook/Makefile
+++ b/arch/arm/boards/efika-mx-smartbook/Makefile
@@ -1,3 +1,3 @@
-obj-y += board.o
+obj-y += board.o flash-header.o
lwl-y += lowlevel.o
-lwl-y += flash_header.o
+extra-y += flash-header.S flash-header.dcd
diff --git a/arch/arm/boards/efika-mx-smartbook/board.c b/arch/arm/boards/efika-mx-smartbook/board.c
index e9b6062..f4f60d4 100644
--- a/arch/arm/boards/efika-mx-smartbook/board.c
+++ b/arch/arm/boards/efika-mx-smartbook/board.c
@@ -424,9 +424,7 @@ static struct gpio_led leds[] = {
},
};
-#define DCD_NAME static struct imx_dcd_entry dcd_entry
-
-#include "dcd-data.h"
+extern char flash_header_start[], flash_header_end[];
static int efikamx_devices_init(void)
{
@@ -467,8 +465,8 @@ static int efikamx_devices_init(void)
writew(0x0, MX51_WDOG_BASE_ADDR + 0x8);
imx51_bbu_internal_mmc_register_handler("mmc", "/dev/mmc_left",
- BBU_HANDLER_FLAG_DEFAULT, dcd_entry, sizeof(dcd_entry),
- 0);
+ BBU_HANDLER_FLAG_DEFAULT, (void *)flash_header_start,
+ flash_header_end - flash_header_start, 0);
armlinux_set_bootparams((void *)0x90000100);
armlinux_set_architecture(2370);
diff --git a/arch/arm/boards/efika-mx-smartbook/dcd-data.h b/arch/arm/boards/efika-mx-smartbook/dcd-data.h
deleted file mode 100644
index 6795e19..0000000
--- a/arch/arm/boards/efika-mx-smartbook/dcd-data.h
+++ /dev/null
@@ -1,56 +0,0 @@
-DCD_NAME[] = {
- { .ptr_type = 4, .addr = 0x73fa88a0, .val = 0x00000000, },
- { .ptr_type = 4, .addr = 0x73fa850c, .val = 0x000020c5, },
- { .ptr_type = 4, .addr = 0x73fa8510, .val = 0x000020c5, },
- { .ptr_type = 4, .addr = 0x73fa883c, .val = 0x00000005, },
- { .ptr_type = 4, .addr = 0x73fa8848, .val = 0x00000005, },
- { .ptr_type = 4, .addr = 0x73fa84b8, .val = 0x000000e7, },
- { .ptr_type = 4, .addr = 0x73fa84bc, .val = 0x00000045, },
- { .ptr_type = 4, .addr = 0x73fa84c0, .val = 0x00000045, },
- { .ptr_type = 4, .addr = 0x73fa84c4, .val = 0x00000045, },
- { .ptr_type = 4, .addr = 0x73fa84c8, .val = 0x00000045, },
- { .ptr_type = 4, .addr = 0x73fa8820, .val = 0x00000000, },
- { .ptr_type = 4, .addr = 0x73fa84a4, .val = 0x00000005, },
- { .ptr_type = 4, .addr = 0x73fa84a8, .val = 0x00000005, },
- { .ptr_type = 4, .addr = 0x73fa84ac, .val = 0x000000e5, },
- { .ptr_type = 4, .addr = 0x73fa84b0, .val = 0x000000e5, },
- { .ptr_type = 4, .addr = 0x73fa84b4, .val = 0x000000e5, },
- { .ptr_type = 4, .addr = 0x73fa84cc, .val = 0x000000e5, },
- { .ptr_type = 4, .addr = 0x73fa84d0, .val = 0x000000e4, },
- { .ptr_type = 4, .addr = 0x73fa882c, .val = 0x00000004, },
- { .ptr_type = 4, .addr = 0x73fa88a4, .val = 0x00000004, },
- { .ptr_type = 4, .addr = 0x73fa88ac, .val = 0x00000004, },
- { .ptr_type = 4, .addr = 0x73fa88b8, .val = 0x00000004, },
- { .ptr_type = 4, .addr = 0x83fd9000, .val = 0x82a20000, },
- { .ptr_type = 4, .addr = 0x83fd9008, .val = 0x82a20000, },
- { .ptr_type = 4, .addr = 0x83fd9010, .val = 0xcaaaf6d0, },
- { .ptr_type = 4, .addr = 0x83fd9004, .val = 0x333574aa, },
- { .ptr_type = 4, .addr = 0x83fd900c, .val = 0x333574aa, },
- { .ptr_type = 4, .addr = 0x83fd9014, .val = 0x04008008, },
- { .ptr_type = 4, .addr = 0x83fd9014, .val = 0x0000801a, },
- { .ptr_type = 4, .addr = 0x83fd9014, .val = 0x0000801b, },
- { .ptr_type = 4, .addr = 0x83fd9014, .val = 0x00448019, },
- { .ptr_type = 4, .addr = 0x83fd9014, .val = 0x07328018, },
- { .ptr_type = 4, .addr = 0x83fd9014, .val = 0x04008008, },
- { .ptr_type = 4, .addr = 0x83fd9014, .val = 0x00008010, },
- { .ptr_type = 4, .addr = 0x83fd9014, .val = 0x00008010, },
- { .ptr_type = 4, .addr = 0x83fd9014, .val = 0x06328018, },
- { .ptr_type = 4, .addr = 0x83fd9014, .val = 0x03808019, },
- { .ptr_type = 4, .addr = 0x83fd9014, .val = 0x00008000, },
- { .ptr_type = 4, .addr = 0x83fd9014, .val = 0x0400800c, },
- { .ptr_type = 4, .addr = 0x83fd9014, .val = 0x0000801e, },
- { .ptr_type = 4, .addr = 0x83fd9014, .val = 0x0000801f, },
- { .ptr_type = 4, .addr = 0x83fd9014, .val = 0x0000801d, },
- { .ptr_type = 4, .addr = 0x83fd9014, .val = 0x0732801c, },
- { .ptr_type = 4, .addr = 0x83fd9014, .val = 0x0400800c, },
- { .ptr_type = 4, .addr = 0x83fd9014, .val = 0x00008014, },
- { .ptr_type = 4, .addr = 0x83fd9014, .val = 0x00008014, },
- { .ptr_type = 4, .addr = 0x83fd9014, .val = 0x0632801c, },
- { .ptr_type = 4, .addr = 0x83fd9014, .val = 0x0380801d, },
- { .ptr_type = 4, .addr = 0x83fd9014, .val = 0x00008004, },
- { .ptr_type = 4, .addr = 0x83fd9000, .val = 0xb2a20000, },
- { .ptr_type = 4, .addr = 0x83fd9008, .val = 0xb2a20000, },
- { .ptr_type = 4, .addr = 0x83fd9010, .val = 0x000ad6d0, },
- { .ptr_type = 4, .addr = 0x83fd9034, .val = 0x90000000, },
- { .ptr_type = 4, .addr = 0x83fd9014, .val = 0x00000000, },
-};
diff --git a/arch/arm/boards/efika-mx-smartbook/flash-header.imxcfg b/arch/arm/boards/efika-mx-smartbook/flash-header.imxcfg
new file mode 100644
index 0000000..53875ed
--- /dev/null
+++ b/arch/arm/boards/efika-mx-smartbook/flash-header.imxcfg
@@ -0,0 +1,57 @@
+soc imx51
+loadaddr 0x90000000
+dcdofs 0x400
+wm 32 0x73fa88a0 0x00000000
+wm 32 0x73fa850c 0x000020c5
+wm 32 0x73fa8510 0x000020c5
+wm 32 0x73fa883c 0x00000005
+wm 32 0x73fa8848 0x00000005
+wm 32 0x73fa84b8 0x000000e7
+wm 32 0x73fa84bc 0x00000045
+wm 32 0x73fa84c0 0x00000045
+wm 32 0x73fa84c4 0x00000045
+wm 32 0x73fa84c8 0x00000045
+wm 32 0x73fa8820 0x00000000
+wm 32 0x73fa84a4 0x00000005
+wm 32 0x73fa84a8 0x00000005
+wm 32 0x73fa84ac 0x000000e5
+wm 32 0x73fa84b0 0x000000e5
+wm 32 0x73fa84b4 0x000000e5
+wm 32 0x73fa84cc 0x000000e5
+wm 32 0x73fa84d0 0x000000e4
+wm 32 0x73fa882c 0x00000004
+wm 32 0x73fa88a4 0x00000004
+wm 32 0x73fa88ac 0x00000004
+wm 32 0x73fa88b8 0x00000004
+wm 32 0x83fd9000 0x82a20000
+wm 32 0x83fd9008 0x82a20000
+wm 32 0x83fd9010 0xcaaaf6d0
+wm 32 0x83fd9004 0x333574aa
+wm 32 0x83fd900c 0x333574aa
+wm 32 0x83fd9014 0x04008008
+wm 32 0x83fd9014 0x0000801a
+wm 32 0x83fd9014 0x0000801b
+wm 32 0x83fd9014 0x00448019
+wm 32 0x83fd9014 0x07328018
+wm 32 0x83fd9014 0x04008008
+wm 32 0x83fd9014 0x00008010
+wm 32 0x83fd9014 0x00008010
+wm 32 0x83fd9014 0x06328018
+wm 32 0x83fd9014 0x03808019
+wm 32 0x83fd9014 0x00008000
+wm 32 0x83fd9014 0x0400800c
+wm 32 0x83fd9014 0x0000801e
+wm 32 0x83fd9014 0x0000801f
+wm 32 0x83fd9014 0x0000801d
+wm 32 0x83fd9014 0x0732801c
+wm 32 0x83fd9014 0x0400800c
+wm 32 0x83fd9014 0x00008014
+wm 32 0x83fd9014 0x00008014
+wm 32 0x83fd9014 0x0632801c
+wm 32 0x83fd9014 0x0380801d
+wm 32 0x83fd9014 0x00008004
+wm 32 0x83fd9000 0xb2a20000
+wm 32 0x83fd9008 0xb2a20000
+wm 32 0x83fd9010 0x000ad6d0
+wm 32 0x83fd9034 0x90000000
+wm 32 0x83fd9014 0x00000000
diff --git a/arch/arm/boards/efika-mx-smartbook/flash_header.c b/arch/arm/boards/efika-mx-smartbook/flash_header.c
deleted file mode 100644
index f3f1e4b..0000000
--- a/arch/arm/boards/efika-mx-smartbook/flash_header.c
+++ /dev/null
@@ -1,29 +0,0 @@
-#include <common.h>
-#include <mach/imx-flash-header.h>
-#include <asm/barebox-arm-head.h>
-
-void __naked __flash_header_start go(void)
-{
- barebox_arm_head();
-}
-
-#define DCD_NAME struct imx_dcd_entry __dcd_entry_section dcd_entry
-
-#include "dcd-data.h"
-
-#define APP_DEST 0x90000000
-
-struct imx_flash_header __flash_header_section flash_header = {
- .app_code_jump_vector = APP_DEST + 0x1000,
- .app_code_barker = APP_CODE_BARKER,
- .app_code_csf = 0,
- .dcd_ptr_ptr = APP_DEST + 0x400 + offsetof(struct imx_flash_header, dcd),
- .super_root_key = 0,
- .dcd = APP_DEST + 0x400 + offsetof(struct imx_flash_header, dcd_barker),
- .app_dest = APP_DEST,
- .dcd_barker = DCD_BARKER,
- .dcd_block_len = sizeof (dcd_entry),
-};
-
-unsigned long __image_len_section barebox_len = DCD_BAREBOX_SIZE;
-
diff --git a/arch/arm/mach-imx/Kconfig b/arch/arm/mach-imx/Kconfig
index c2d6348..a6364c7 100644
--- a/arch/arm/mach-imx/Kconfig
+++ b/arch/arm/mach-imx/Kconfig
@@ -457,6 +457,7 @@ config MACH_CCMX51_BASEBOARD
config MACH_EFIKA_MX_SMARTBOOK
bool "Efika MX smartbook"
+ select ARCH_IMX_INTERNAL_BOOT_USE_IMXIMAGE
select HAVE_DEFAULT_ENVIRONMENT_NEW
help
Choose this to compile barebox for the Efika MX Smartbook
--
1.8.3.1
_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH 6/8] ARM: i.MX51 ccxmx51: Switch to imximage
2013-06-23 21:05 [PATCH 1/8] ARM: i.MX53 SMD: Switch to imximage Sascha Hauer
` (3 preceding siblings ...)
2013-06-23 21:05 ` [PATCH 5/8] ARM: i.MX51 Efika SB: " Sascha Hauer
@ 2013-06-23 21:05 ` Sascha Hauer
2013-06-23 21:05 ` [PATCH 7/8] ARM: i.MX51 karo-tx51: " Sascha Hauer
2013-06-23 21:05 ` [PATCH 8/8] ARM: i.MX51 vincell: " Sascha Hauer
6 siblings, 0 replies; 8+ messages in thread
From: Sascha Hauer @ 2013-06-23 21:05 UTC (permalink / raw)
To: barebox
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
---
arch/arm/boards/ccxmx51/Makefile | 1 -
| 60 +++++++++++++++++++++
| 84 -----------------------------
arch/arm/mach-imx/Kconfig | 1 +
4 files changed, 61 insertions(+), 85 deletions(-)
create mode 100644 arch/arm/boards/ccxmx51/flash-header.imxcfg
delete mode 100644 arch/arm/boards/ccxmx51/flash_header.c
diff --git a/arch/arm/boards/ccxmx51/Makefile b/arch/arm/boards/ccxmx51/Makefile
index 422c919..6ba98b1 100644
--- a/arch/arm/boards/ccxmx51/Makefile
+++ b/arch/arm/boards/ccxmx51/Makefile
@@ -1,4 +1,3 @@
obj-y += ccxmx51.o
-lwl-y += flash_header.o
lwl-y += lowlevel.o
obj-$(CONFIG_MACH_CCMX51_BASEBOARD) += ccxmx51js.o
--git a/arch/arm/boards/ccxmx51/flash-header.imxcfg b/arch/arm/boards/ccxmx51/flash-header.imxcfg
new file mode 100644
index 0000000..251c4c1
--- /dev/null
+++ b/arch/arm/boards/ccxmx51/flash-header.imxcfg
@@ -0,0 +1,60 @@
+soc imx51
+loadaddr 0x90000000
+dcdofs 0x400
+wm 32 0x73fa88a0 0x00000200
+wm 32 0x73fa850c 0x000020c5
+wm 32 0x73fa8510 0x000020c5
+wm 32 0x73fa883c 0x00000002
+wm 32 0x73fa8848 0x00000002
+wm 32 0x73fa84b8 0x000000e7
+wm 32 0x73fa84bc 0x00000045
+wm 32 0x73fa84c0 0x00000045
+wm 32 0x73fa84c4 0x00000045
+wm 32 0x73fa84c8 0x00000045
+wm 32 0x73fa8820 0x00000000
+wm 32 0x73fa84a4 0x00000003
+wm 32 0x73fa84a8 0x00000003
+wm 32 0x73fa84ac 0x000000e3
+wm 32 0x73fa84b0 0x000000e3
+wm 32 0x73fa84b4 0x000000e3
+wm 32 0x73fa84cc 0x000000e3
+wm 32 0x73fa84d0 0x000000e2
+wm 32 0x73fa882c 0x00000004
+wm 32 0x73fa88a4 0x00000004
+wm 32 0x73fa88ac 0x00000004
+wm 32 0x73fa88b8 0x00000004
+wm 32 0x83fd9000 0x82a20000
+wm 32 0x83fd9008 0x82a20000
+wm 32 0x83fd9010 0x000ad0d0
+wm 32 0x83fd9004 0x3f3584ab
+wm 32 0x83fd900c 0x3f3584ab
+wm 32 0x83fd9014 0x04008008
+wm 32 0x83fd9014 0x0000801a
+wm 32 0x83fd9014 0x0000801b
+wm 32 0x83fd9014 0x00448019
+wm 32 0x83fd9014 0x07328018
+wm 32 0x83fd9014 0x04008008
+wm 32 0x83fd9014 0x00008010
+wm 32 0x83fd9014 0x00008010
+wm 32 0x83fd9014 0x06328018
+wm 32 0x83fd9014 0x03808019
+wm 32 0x83fd9014 0x00408019
+wm 32 0x83fd9014 0x00008000
+wm 32 0x83fd9014 0x0400800c
+wm 32 0x83fd9014 0x0000801e
+wm 32 0x83fd9014 0x0000801f
+wm 32 0x83fd9014 0x0000801d
+wm 32 0x83fd9014 0x0732801c
+wm 32 0x83fd9014 0x0400800c
+wm 32 0x83fd9014 0x00008014
+wm 32 0x83fd9014 0x00008014
+wm 32 0x83fd9014 0x0632801c
+wm 32 0x83fd9014 0x0380801d
+wm 32 0x83fd9014 0x0040801d
+wm 32 0x83fd9014 0x00008004
+wm 32 0x83fd9000 0xb2a20000
+wm 32 0x83fd9008 0xb2a20000
+wm 32 0x83fd9010 0x000ad6d0
+wm 32 0x83fd9034 0x90000000
+wm 32 0x83fd9014 0x00000000
+
diff --git a/arch/arm/boards/ccxmx51/flash_header.c b/arch/arm/boards/ccxmx51/flash_header.c
deleted file mode 100644
index c148eea..0000000
--- a/arch/arm/boards/ccxmx51/flash_header.c
+++ /dev/null
@@ -1,84 +0,0 @@
-#include <common.h>
-#include <mach/imx-flash-header.h>
-#include <asm/barebox-arm-head.h>
-
-void __naked __flash_header_start go(void)
-{
- barebox_arm_head();
-}
-
-struct imx_dcd_entry __dcd_entry_section dcd_entry[] = {
- { .ptr_type = 4, .addr = 0x73fa88a0, .val = 0x00000200, },
- { .ptr_type = 4, .addr = 0x73fa850c, .val = 0x000020c5, },
- { .ptr_type = 4, .addr = 0x73fa8510, .val = 0x000020c5, },
- { .ptr_type = 4, .addr = 0x73fa883c, .val = 0x00000002, },
- { .ptr_type = 4, .addr = 0x73fa8848, .val = 0x00000002, },
- { .ptr_type = 4, .addr = 0x73fa84b8, .val = 0x000000e7, },
- { .ptr_type = 4, .addr = 0x73fa84bc, .val = 0x00000045, },
- { .ptr_type = 4, .addr = 0x73fa84c0, .val = 0x00000045, },
- { .ptr_type = 4, .addr = 0x73fa84c4, .val = 0x00000045, },
- { .ptr_type = 4, .addr = 0x73fa84c8, .val = 0x00000045, },
- { .ptr_type = 4, .addr = 0x73fa8820, .val = 0x00000000, },
- { .ptr_type = 4, .addr = 0x73fa84a4, .val = 0x00000003, },
- { .ptr_type = 4, .addr = 0x73fa84a8, .val = 0x00000003, },
- { .ptr_type = 4, .addr = 0x73fa84ac, .val = 0x000000e3, },
- { .ptr_type = 4, .addr = 0x73fa84b0, .val = 0x000000e3, },
- { .ptr_type = 4, .addr = 0x73fa84b4, .val = 0x000000e3, },
- { .ptr_type = 4, .addr = 0x73fa84cc, .val = 0x000000e3, },
- { .ptr_type = 4, .addr = 0x73fa84d0, .val = 0x000000e2, },
- { .ptr_type = 4, .addr = 0x73fa882c, .val = 0x00000004, },
- { .ptr_type = 4, .addr = 0x73fa88a4, .val = 0x00000004, },
- { .ptr_type = 4, .addr = 0x73fa88ac, .val = 0x00000004, },
- { .ptr_type = 4, .addr = 0x73fa88b8, .val = 0x00000004, },
- { .ptr_type = 4, .addr = 0x83fd9000, .val = 0x82a20000, },
- { .ptr_type = 4, .addr = 0x83fd9008, .val = 0x82a20000, },
- { .ptr_type = 4, .addr = 0x83fd9010, .val = 0x000ad0d0, },
- { .ptr_type = 4, .addr = 0x83fd9004, .val = 0x3f3584ab, },
- { .ptr_type = 4, .addr = 0x83fd900c, .val = 0x3f3584ab, },
- { .ptr_type = 4, .addr = 0x83fd9014, .val = 0x04008008, },
- { .ptr_type = 4, .addr = 0x83fd9014, .val = 0x0000801a, },
- { .ptr_type = 4, .addr = 0x83fd9014, .val = 0x0000801b, },
- { .ptr_type = 4, .addr = 0x83fd9014, .val = 0x00448019, },
- { .ptr_type = 4, .addr = 0x83fd9014, .val = 0x07328018, },
- { .ptr_type = 4, .addr = 0x83fd9014, .val = 0x04008008, },
- { .ptr_type = 4, .addr = 0x83fd9014, .val = 0x00008010, },
- { .ptr_type = 4, .addr = 0x83fd9014, .val = 0x00008010, },
- { .ptr_type = 4, .addr = 0x83fd9014, .val = 0x06328018, },
- { .ptr_type = 4, .addr = 0x83fd9014, .val = 0x03808019, },
- { .ptr_type = 4, .addr = 0x83fd9014, .val = 0x00408019, },
- { .ptr_type = 4, .addr = 0x83fd9014, .val = 0x00008000, },
- { .ptr_type = 4, .addr = 0x83fd9014, .val = 0x0400800c, },
- { .ptr_type = 4, .addr = 0x83fd9014, .val = 0x0000801e, },
- { .ptr_type = 4, .addr = 0x83fd9014, .val = 0x0000801f, },
- { .ptr_type = 4, .addr = 0x83fd9014, .val = 0x0000801d, },
- { .ptr_type = 4, .addr = 0x83fd9014, .val = 0x0732801c, },
- { .ptr_type = 4, .addr = 0x83fd9014, .val = 0x0400800c, },
- { .ptr_type = 4, .addr = 0x83fd9014, .val = 0x00008014, },
- { .ptr_type = 4, .addr = 0x83fd9014, .val = 0x00008014, },
- { .ptr_type = 4, .addr = 0x83fd9014, .val = 0x0632801c, },
- { .ptr_type = 4, .addr = 0x83fd9014, .val = 0x0380801d, },
- { .ptr_type = 4, .addr = 0x83fd9014, .val = 0x0040801d, },
- { .ptr_type = 4, .addr = 0x83fd9014, .val = 0x00008004, },
- { .ptr_type = 4, .addr = 0x83fd9000, .val = 0xb2a20000, },
- { .ptr_type = 4, .addr = 0x83fd9008, .val = 0xb2a20000, },
- { .ptr_type = 4, .addr = 0x83fd9010, .val = 0x000ad6d0, },
- { .ptr_type = 4, .addr = 0x83fd9034, .val = 0x90000000, },
- { .ptr_type = 4, .addr = 0x83fd9014, .val = 0x00000000, },
-};
-
-#define APP_DEST 0x90000000
-
-struct imx_flash_header __flash_header_section flash_header = {
- .app_code_jump_vector = APP_DEST + 0x1000,
- .app_code_barker = APP_CODE_BARKER,
- .app_code_csf = 0,
- .dcd_ptr_ptr = APP_DEST + 0x400 + offsetof(struct imx_flash_header, dcd),
- .super_root_key = 0,
- .dcd = APP_DEST + 0x400 + offsetof(struct imx_flash_header, dcd_barker),
- .app_dest = APP_DEST,
- .dcd_barker = DCD_BARKER,
- .dcd_block_len = sizeof (dcd_entry),
-};
-
-unsigned long __image_len_section barebox_len = DCD_BAREBOX_SIZE;
-
diff --git a/arch/arm/mach-imx/Kconfig b/arch/arm/mach-imx/Kconfig
index a6364c7..bd7ee7f 100644
--- a/arch/arm/mach-imx/Kconfig
+++ b/arch/arm/mach-imx/Kconfig
@@ -443,6 +443,7 @@ config MACH_CCMX51
select SPI
select DRIVER_SPI_IMX
select MFD_MC13XXX
+ select ARCH_IMX_INTERNAL_BOOT_USE_IMXIMAGE
help
Say Y here if you are using Digi ConnectCore (W)i-i.MX51
equipped with a Freescale i.MX51 Processor
--
1.8.3.1
_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH 7/8] ARM: i.MX51 karo-tx51: Switch to imximage
2013-06-23 21:05 [PATCH 1/8] ARM: i.MX53 SMD: Switch to imximage Sascha Hauer
` (4 preceding siblings ...)
2013-06-23 21:05 ` [PATCH 6/8] ARM: i.MX51 ccxmx51: " Sascha Hauer
@ 2013-06-23 21:05 ` Sascha Hauer
2013-06-23 21:05 ` [PATCH 8/8] ARM: i.MX51 vincell: " Sascha Hauer
6 siblings, 0 replies; 8+ messages in thread
From: Sascha Hauer @ 2013-06-23 21:05 UTC (permalink / raw)
To: barebox
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
---
arch/arm/boards/karo-tx51/Makefile | 1 -
| 13 +++++++
| 52 ---------------------------
arch/arm/mach-imx/Kconfig | 1 +
4 files changed, 14 insertions(+), 53 deletions(-)
create mode 100644 arch/arm/boards/karo-tx51/flash-header.imxcfg
delete mode 100644 arch/arm/boards/karo-tx51/flash_header.c
diff --git a/arch/arm/boards/karo-tx51/Makefile b/arch/arm/boards/karo-tx51/Makefile
index 988abea..5afc8e2 100644
--- a/arch/arm/boards/karo-tx51/Makefile
+++ b/arch/arm/boards/karo-tx51/Makefile
@@ -1,3 +1,2 @@
obj-y += tx51.o
-lwl-$(CONFIG_ARCH_IMX_INTERNAL_BOOT) += flash_header.o
lwl-y += lowlevel.o
--git a/arch/arm/boards/karo-tx51/flash-header.imxcfg b/arch/arm/boards/karo-tx51/flash-header.imxcfg
new file mode 100644
index 0000000..ebb7c4f
--- /dev/null
+++ b/arch/arm/boards/karo-tx51/flash-header.imxcfg
@@ -0,0 +1,13 @@
+soc imx51
+loadaddr 0x90000000
+dcdofs 0x400
+wm 32 0x83fd9000 0x80000000
+wm 32 0x83fd9014 0x04008008
+wm 32 0x83fd9014 0x00008010
+wm 32 0x83fd9014 0x00008010
+wm 32 0x83fd9014 0x00338018
+wm 32 0x83fd9000 0xb2220000
+wm 32 0x83fd9004 0xb08564a9
+wm 32 0x83fd9034 0x20020000
+wm 32 0x83fd9010 0x000a0080
+wm 32 0x83fd9014 0x00000000
diff --git a/arch/arm/boards/karo-tx51/flash_header.c b/arch/arm/boards/karo-tx51/flash_header.c
deleted file mode 100644
index e949bd7..0000000
--- a/arch/arm/boards/karo-tx51/flash_header.c
+++ /dev/null
@@ -1,52 +0,0 @@
-/**
- * Copyright (C) 2012 Christian Kapeller, <christian.kapeller@cmotion.eu>
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License as
- * published by the Free Software Foundation; either version 2 of
- * the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- */
-
-#include <common.h>
-#include <asm/barebox-arm-head.h>
-#include <mach/imx-flash-header.h>
-
-void __naked __flash_header_start go(void)
-{
- barebox_arm_head();
-}
-
-struct imx_dcd_entry __dcd_entry_section dcd_entry[] = {
- { .ptr_type = 4, .addr = 0x83fd9000, .val = 0x80000000, },
- { .ptr_type = 4, .addr = 0x83fd9014, .val = 0x04008008, },
- { .ptr_type = 4, .addr = 0x83fd9014, .val = 0x00008010, },
- { .ptr_type = 4, .addr = 0x83fd9014, .val = 0x00008010, },
- { .ptr_type = 4, .addr = 0x83fd9014, .val = 0x00338018, },
- { .ptr_type = 4, .addr = 0x83fd9000, .val = 0xb2220000, },
- { .ptr_type = 4, .addr = 0x83fd9004, .val = 0xb08564a9, },
- { .ptr_type = 4, .addr = 0x83fd9034, .val = 0x20020000, },
- { .ptr_type = 4, .addr = 0x83fd9010, .val = 0x000a0080, },
- { .ptr_type = 4, .addr = 0x83fd9014, .val = 0x00000000, },
-};
-
-#define APP_DEST 0x90000000
-
-struct imx_flash_header __flash_header_section flash_header = {
- .app_code_jump_vector = APP_DEST + 0x1000,
- .app_code_barker = APP_CODE_BARKER,
- .app_code_csf = 0,
- .dcd_ptr_ptr = APP_DEST + 0x400 + offsetof(struct imx_flash_header, dcd),
- .super_root_key = 0,
- .dcd = APP_DEST + 0x400 + offsetof(struct imx_flash_header, dcd_barker),
- .app_dest = APP_DEST,
- .dcd_barker = DCD_BARKER,
- .dcd_block_len = sizeof (dcd_entry),
-};
-
-unsigned long __image_len_section barebox_len = DCD_BAREBOX_SIZE;
diff --git a/arch/arm/mach-imx/Kconfig b/arch/arm/mach-imx/Kconfig
index bd7ee7f..f334b17 100644
--- a/arch/arm/mach-imx/Kconfig
+++ b/arch/arm/mach-imx/Kconfig
@@ -434,6 +434,7 @@ config MACH_EUKREA_CPUIMX51SD
config MACH_TX51
bool "Ka-Ro TX51"
+ select ARCH_IMX_INTERNAL_BOOT_USE_IMXIMAGE
help
Say Y here if you are using the Ka-Ro tx51 board
--
1.8.3.1
_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH 8/8] ARM: i.MX51 vincell: Switch to imximage
2013-06-23 21:05 [PATCH 1/8] ARM: i.MX53 SMD: Switch to imximage Sascha Hauer
` (5 preceding siblings ...)
2013-06-23 21:05 ` [PATCH 7/8] ARM: i.MX51 karo-tx51: " Sascha Hauer
@ 2013-06-23 21:05 ` Sascha Hauer
6 siblings, 0 replies; 8+ messages in thread
From: Sascha Hauer @ 2013-06-23 21:05 UTC (permalink / raw)
To: barebox
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
---
arch/arm/boards/guf-vincell/Makefile | 2 +-
| 3 ++
| 41 -------------------------
arch/arm/mach-imx/Kconfig | 1 +
4 files changed, 5 insertions(+), 42 deletions(-)
create mode 100644 arch/arm/boards/guf-vincell/flash-header.imxcfg
delete mode 100644 arch/arm/boards/guf-vincell/flash_header.c
diff --git a/arch/arm/boards/guf-vincell/Makefile b/arch/arm/boards/guf-vincell/Makefile
index aa30b7f..01c7a25 100644
--- a/arch/arm/boards/guf-vincell/Makefile
+++ b/arch/arm/boards/guf-vincell/Makefile
@@ -1,2 +1,2 @@
obj-y += board.o
-lwl-y += flash_header.o lowlevel.o
+lwl-y += lowlevel.o
--git a/arch/arm/boards/guf-vincell/flash-header.imxcfg b/arch/arm/boards/guf-vincell/flash-header.imxcfg
new file mode 100644
index 0000000..bb0c318
--- /dev/null
+++ b/arch/arm/boards/guf-vincell/flash-header.imxcfg
@@ -0,0 +1,3 @@
+soc imx53
+loadaddr 0xf8020000
+dcdofs 0x400
diff --git a/arch/arm/boards/guf-vincell/flash_header.c b/arch/arm/boards/guf-vincell/flash_header.c
deleted file mode 100644
index df480d2..0000000
--- a/arch/arm/boards/guf-vincell/flash_header.c
+++ /dev/null
@@ -1,41 +0,0 @@
-/*
- * Copyright (C) 2011 Marc Kleine-Budde <mkl@pengutronix.de>
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License as
- * published by the Free Software Foundation; either version 2 of
- * the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- */
-
-#include <common.h>
-#include <sizes.h>
-#include <asm/byteorder.h>
-#include <asm/barebox-arm-head.h>
-#include <mach/imx-flash-header.h>
-
-void __naked __flash_header_start go(void)
-{
- barebox_arm_head();
-}
-
-#define APP_DEST 0xf8020000
-
-struct imx_flash_header_v2 __flash_header_section flash_header = {
- .header.tag = IVT_HEADER_TAG,
- .header.length = cpu_to_be16(32),
- .header.version = IVT_VERSION,
-
- .entry = APP_DEST + 0x1000,
- .dcd_ptr = APP_DEST + 0x400 + offsetof(struct imx_flash_header_v2, dcd),
- .boot_data_ptr = APP_DEST + 0x400 + offsetof(struct imx_flash_header_v2, boot_data),
- .self = APP_DEST + 0x400,
-
- .boot_data.start = APP_DEST,
- .boot_data.size = DCD_BAREBOX_SIZE,
-};
diff --git a/arch/arm/mach-imx/Kconfig b/arch/arm/mach-imx/Kconfig
index f334b17..a601c9d 100644
--- a/arch/arm/mach-imx/Kconfig
+++ b/arch/arm/mach-imx/Kconfig
@@ -496,6 +496,7 @@ config MACH_TX53
config MACH_GUF_VINCELL
select HAVE_DEFAULT_ENVIRONMENT_NEW
+ select ARCH_IMX_INTERNAL_BOOT_USE_IMXIMAGE
bool "Garz-Fricke Vincell"
endchoice
--
1.8.3.1
_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox
^ permalink raw reply [flat|nested] 8+ messages in thread