[PATCH 1/4] ARM: change signature of barebox_arm_entry
Lucas Stach
l.stach at pengutronix.de
Thu May 1 14:32:49 PDT 2014
Mostly to make it clear that boarddata needs to be
something we can dereference.
As this is a pretty invasive change, use the opportunity
to make the signature 64bit safe.
Signed-off-by: Lucas Stach <l.stach at pengutronix.de>
---
arch/arm/boards/archosg9/lowlevel.c | 2 +-
arch/arm/boards/avnet-zedboard/lowlevel.c | 2 +-
arch/arm/boards/beagle/lowlevel.c | 2 +-
arch/arm/boards/beaglebone/lowlevel.c | 20 ++++++++++---------
.../boards/boundarydevices-nitrogen6x/lowlevel.c | 8 ++++----
arch/arm/boards/ccxmx51/lowlevel.c | 2 +-
arch/arm/boards/chumby_falconwing/lowlevel.c | 2 +-
arch/arm/boards/crystalfontz-cfa10036/lowlevel.c | 2 +-
arch/arm/boards/datamodul-edm-qmx6/lowlevel.c | 12 +++++------
arch/arm/boards/dfi-fs700-m60/lowlevel.c | 12 +++++------
arch/arm/boards/ebv-socrates/lowlevel.c | 6 +++---
arch/arm/boards/efika-mx-smartbook/lowlevel.c | 4 ++--
arch/arm/boards/embest-riotboard/lowlevel.c | 4 ++--
arch/arm/boards/eukrea_cpuimx25/lowlevel.c | 2 +-
arch/arm/boards/eukrea_cpuimx35/lowlevel.c | 2 +-
arch/arm/boards/eukrea_cpuimx51/lowlevel.c | 2 +-
arch/arm/boards/freescale-mx23-evk/lowlevel.c | 2 +-
arch/arm/boards/freescale-mx28-evk/lowlevel.c | 2 +-
arch/arm/boards/freescale-mx51-babbage/lowlevel.c | 4 ++--
arch/arm/boards/freescale-mx53-qsb/lowlevel.c | 8 ++++----
arch/arm/boards/freescale-mx53-smd/lowlevel.c | 2 +-
arch/arm/boards/freescale-mx53-vmx53/lowlevel.c | 4 ++--
arch/arm/boards/freescale-mx6-arm2/lowlevel.c | 2 +-
arch/arm/boards/freescale-mx6-sabrelite/lowlevel.c | 8 ++++----
arch/arm/boards/freescale-mx6-sabresd/lowlevel.c | 4 ++--
arch/arm/boards/friendlyarm-mini6410/lowlevel.c | 2 +-
arch/arm/boards/friendlyarm-tiny210/lowlevel.c | 2 +-
arch/arm/boards/friendlyarm-tiny6410/lowlevel.c | 2 +-
arch/arm/boards/gk802/lowlevel.c | 4 ++--
arch/arm/boards/guf-cupid/lowlevel.c | 2 +-
arch/arm/boards/guf-neso/lowlevel.c | 2 +-
arch/arm/boards/guf-santaro/lowlevel.c | 4 ++--
arch/arm/boards/guf-vincell/lowlevel.c | 4 ++--
arch/arm/boards/highbank/lowlevel.c | 2 +-
arch/arm/boards/imx233-olinuxino/lowlevel.c | 2 +-
arch/arm/boards/karo-tx25/lowlevel.c | 6 +++---
arch/arm/boards/karo-tx28/lowlevel.c | 2 +-
arch/arm/boards/karo-tx51/lowlevel.c | 2 +-
arch/arm/boards/karo-tx53/lowlevel.c | 2 +-
arch/arm/boards/mioa701/lowlevel.c | 2 +-
arch/arm/boards/mx31moboard/lowlevel.c | 4 ++--
arch/arm/boards/nhk8815/lowlevel.c | 2 +-
arch/arm/boards/omap343xdsp/lowlevel.c | 2 +-
arch/arm/boards/omap3evm/lowlevel.c | 2 +-
arch/arm/boards/panda/lowlevel.c | 2 +-
arch/arm/boards/phytec-phycard-imx27/lowlevel.c | 2 +-
arch/arm/boards/phytec-phycard-omap3/lowlevel.c | 2 +-
arch/arm/boards/phytec-phycard-omap4/lowlevel.c | 2 +-
arch/arm/boards/phytec-phycore-am335x/lowlevel.c | 9 +++++----
arch/arm/boards/phytec-phycore-imx27/lowlevel.c | 2 +-
arch/arm/boards/phytec-phycore-imx31/lowlevel.c | 4 ++--
arch/arm/boards/phytec-phycore-imx35/lowlevel.c | 2 +-
arch/arm/boards/phytec-phycore-omap4460/lowlevel.c | 2 +-
arch/arm/boards/phytec-phyflex-imx6/lowlevel.c | 20 +++++++++----------
arch/arm/boards/radxa-rock/lowlevel.c | 4 ++--
arch/arm/boards/raspberry-pi/lowlevel.c | 2 +-
arch/arm/boards/solidrun-cubox/lowlevel.c | 4 ++--
arch/arm/boards/solidrun-hummingboard/lowlevel.c | 4 ++--
arch/arm/boards/terasic-sockit/lowlevel.c | 6 +++---
arch/arm/boards/tqma53/lowlevel.c | 10 +++++-----
arch/arm/boards/tqma6x/lowlevel.c | 8 ++++----
arch/arm/boards/udoo/lowlevel.c | 4 ++--
arch/arm/boards/variscite-mx6/lowlevel.c | 4 ++--
arch/arm/boards/versatile/lowlevel.c | 2 +-
arch/arm/boards/vexpress/lowlevel.c | 4 ++--
arch/arm/boards/virt2real/lowlevel.c | 2 +-
arch/arm/cpu/start-pbl.c | 10 +++++-----
arch/arm/cpu/start.c | 23 +++++++++++-----------
arch/arm/cpu/uncompress.c | 10 +++++-----
arch/arm/include/asm/barebox-arm.h | 4 ++--
arch/arm/mach-at91/at91rm9200_lowlevel_init.c | 2 +-
arch/arm/mach-at91/at91sam9260_lowlevel_init.c | 3 ++-
arch/arm/mach-at91/at91sam9261_lowlevel_init.c | 3 ++-
arch/arm/mach-at91/at91sam9263_lowlevel_init.c | 3 ++-
arch/arm/mach-at91/at91sam9g45_lowlevel_init.c | 3 ++-
arch/arm/mach-at91/at91sam9n12_lowlevel_init.c | 3 ++-
arch/arm/mach-at91/at91sam9x5_lowlevel_init.c | 2 +-
arch/arm/mach-at91/sama5d3_lowlevel_init.c | 2 +-
arch/arm/mach-clps711x/lowlevel.c | 2 +-
arch/arm/mach-imx/esdctl.c | 14 ++++++-------
arch/arm/mach-imx/external-nand-boot.c | 11 ++++++-----
arch/arm/mach-imx/include/mach/esdctl.h | 16 +++++++--------
arch/arm/mach-imx/include/mach/imx-nand.h | 10 +++++-----
arch/arm/mach-mvebu/common.c | 2 +-
arch/arm/mach-mvebu/include/mach/lowlevel.h | 2 +-
arch/arm/mach-mvebu/lowlevel.c | 2 +-
arch/arm/mach-tegra/tegra_maincomplex_init.c | 2 +-
87 files changed, 204 insertions(+), 196 deletions(-)
diff --git a/arch/arm/boards/archosg9/lowlevel.c b/arch/arm/boards/archosg9/lowlevel.c
index 6c939928d621..6813e0d18a01 100644
--- a/arch/arm/boards/archosg9/lowlevel.c
+++ b/arch/arm/boards/archosg9/lowlevel.c
@@ -79,5 +79,5 @@ void __naked __bare_init barebox_arm_reset_vector(uint32_t *data)
archosg9_init_lowlevel();
out:
- barebox_arm_entry(0x80000000, SZ_1G, 0);
+ barebox_arm_entry(0x80000000, SZ_1G, NULL);
}
diff --git a/arch/arm/boards/avnet-zedboard/lowlevel.c b/arch/arm/boards/avnet-zedboard/lowlevel.c
index fb05ef895d0f..7770bcb7cfbb 100644
--- a/arch/arm/boards/avnet-zedboard/lowlevel.c
+++ b/arch/arm/boards/avnet-zedboard/lowlevel.c
@@ -257,5 +257,5 @@ void __naked barebox_arm_reset_vector(void)
writel(0x0000767B, ZYNQ_SLCR_LOCK);
arm_cpu_lowlevel_init();
- barebox_arm_entry(0, SZ_512M, 0);
+ barebox_arm_entry(0, SZ_512M, NULL);
}
diff --git a/arch/arm/boards/beagle/lowlevel.c b/arch/arm/boards/beagle/lowlevel.c
index cdb88caa127c..62c98a9cec1d 100644
--- a/arch/arm/boards/beagle/lowlevel.c
+++ b/arch/arm/boards/beagle/lowlevel.c
@@ -189,5 +189,5 @@ void __naked __bare_init barebox_arm_reset_vector(uint32_t *data)
beagle_board_init();
- barebox_arm_entry(0x80000000, SZ_128M, 0);
+ barebox_arm_entry(0x80000000, SZ_128M, NULL);
}
diff --git a/arch/arm/boards/beaglebone/lowlevel.c b/arch/arm/boards/beaglebone/lowlevel.c
index 92389a95576e..0869cb9f1555 100644
--- a/arch/arm/boards/beaglebone/lowlevel.c
+++ b/arch/arm/boards/beaglebone/lowlevel.c
@@ -119,18 +119,19 @@ extern char __dtb_am335x_bone_end[];
*/
static noinline int beaglebone_sram_init(void)
{
- uint32_t fdt, fdt_end, sdram_start, sdram_size;
+ uint32_t sdram_start, sdram_size;
+ void *fdt, *fdt_end;
sdram_start = 0x80000000;
if (is_beaglebone_black()) {
sdram_size = SZ_512M;
- fdt = (uint32_t)__dtb_am335x_boneblack_start;
- fdt_end = (uint32_t)__dtb_am335x_boneblack_end;
+ fdt = __dtb_am335x_boneblack_start;
+ fdt_end = __dtb_am335x_boneblack_end;
} else {
sdram_size = SZ_256M;
- fdt = (uint32_t)__dtb_am335x_bone_start;
- fdt_end = (uint32_t)__dtb_am335x_bone_end;
+ fdt = __dtb_am335x_bone_start;
+ fdt_end = __dtb_am335x_bone_end;
}
/* WDT1 is already running when the bootloader gets control
@@ -161,7 +162,7 @@ static noinline int beaglebone_sram_init(void)
* Copy the devicetree blob to sdram so that the barebox code finds it
* inside valid SDRAM instead of SRAM.
*/
- memcpy((void *)sdram_start, (void *)fdt, fdt_end - fdt);
+ memcpy((void *)sdram_start, fdt, fdt_end - fdt);
fdt = sdram_start;
barebox_arm_entry(sdram_start, sdram_size, fdt);
@@ -183,14 +184,15 @@ ENTRY_FUNCTION(start_am33xx_beaglebone_sram, bootinfo, r1, r2)
ENTRY_FUNCTION(start_am33xx_beaglebone_sdram, r0, r1, r2)
{
- uint32_t fdt, sdram_size;
+ uint32_t sdram_size;
+ void *fdt;
if (is_beaglebone_black()) {
sdram_size = SZ_512M;
- fdt = (uint32_t)__dtb_am335x_boneblack_start;
+ fdt = __dtb_am335x_boneblack_start;
} else {
sdram_size = SZ_256M;
- fdt = (uint32_t)__dtb_am335x_bone_start;
+ fdt = __dtb_am335x_bone_start;
}
fdt -= get_runtime_offset();
diff --git a/arch/arm/boards/boundarydevices-nitrogen6x/lowlevel.c b/arch/arm/boards/boundarydevices-nitrogen6x/lowlevel.c
index 5b110846703c..60a84ef63ab5 100644
--- a/arch/arm/boards/boundarydevices-nitrogen6x/lowlevel.c
+++ b/arch/arm/boards/boundarydevices-nitrogen6x/lowlevel.c
@@ -7,11 +7,11 @@ extern char __dtb_imx6q_nitrogen6x_start[];
ENTRY_FUNCTION(start_imx6q_nitrogen6x_1g, r0, r1, r2)
{
- uint32_t fdt;
+ void *fdt;
arm_cpu_lowlevel_init();
- fdt = (uint32_t)__dtb_imx6q_nitrogen6x_start - get_runtime_offset();
+ fdt = __dtb_imx6q_nitrogen6x_start - get_runtime_offset();
barebox_arm_entry(0x10000000, SZ_1G, fdt);
}
@@ -20,11 +20,11 @@ extern char __dtb_imx6dl_nitrogen6x_start[];
ENTRY_FUNCTION(start_imx6dl_nitrogen6x_1g, r0, r1, r2)
{
- uint32_t fdt;
+ void *fdt;
arm_cpu_lowlevel_init();
- fdt = (uint32_t)__dtb_imx6dl_nitrogen6x_start - get_runtime_offset();
+ fdt = __dtb_imx6dl_nitrogen6x_start - get_runtime_offset();
barebox_arm_entry(0x10000000, SZ_1G, fdt);
}
diff --git a/arch/arm/boards/ccxmx51/lowlevel.c b/arch/arm/boards/ccxmx51/lowlevel.c
index 9519b77335ac..3e67b314a791 100644
--- a/arch/arm/boards/ccxmx51/lowlevel.c
+++ b/arch/arm/boards/ccxmx51/lowlevel.c
@@ -7,5 +7,5 @@
void __naked barebox_arm_reset_vector(void)
{
arm_cpu_lowlevel_init();
- barebox_arm_entry(MX51_CSD0_BASE_ADDR, SZ_128M, 0);
+ barebox_arm_entry(MX51_CSD0_BASE_ADDR, SZ_128M, NULL);
}
diff --git a/arch/arm/boards/chumby_falconwing/lowlevel.c b/arch/arm/boards/chumby_falconwing/lowlevel.c
index c23a12db12f6..d26562c02bf3 100644
--- a/arch/arm/boards/chumby_falconwing/lowlevel.c
+++ b/arch/arm/boards/chumby_falconwing/lowlevel.c
@@ -7,5 +7,5 @@
void __naked barebox_arm_reset_vector(void)
{
arm_cpu_lowlevel_init();
- barebox_arm_entry(IMX_MEMORY_BASE, SZ_64M, 0);
+ barebox_arm_entry(IMX_MEMORY_BASE, SZ_64M, NULL);
}
diff --git a/arch/arm/boards/crystalfontz-cfa10036/lowlevel.c b/arch/arm/boards/crystalfontz-cfa10036/lowlevel.c
index f7b90331bbf9..aa3b09b2ee68 100644
--- a/arch/arm/boards/crystalfontz-cfa10036/lowlevel.c
+++ b/arch/arm/boards/crystalfontz-cfa10036/lowlevel.c
@@ -7,5 +7,5 @@
void __naked barebox_arm_reset_vector(void)
{
arm_cpu_lowlevel_init();
- barebox_arm_entry(IMX_MEMORY_BASE, SZ_128M, 0);
+ barebox_arm_entry(IMX_MEMORY_BASE, SZ_128M, NULL);
}
diff --git a/arch/arm/boards/datamodul-edm-qmx6/lowlevel.c b/arch/arm/boards/datamodul-edm-qmx6/lowlevel.c
index 81b6ac4cbe0a..071918cb5341 100644
--- a/arch/arm/boards/datamodul-edm-qmx6/lowlevel.c
+++ b/arch/arm/boards/datamodul-edm-qmx6/lowlevel.c
@@ -140,13 +140,14 @@ extern char __dtb_imx6q_dmo_edmqmx6_end[];
ENTRY_FUNCTION(start_imx6_realq7, r0, r1, r2)
{
- unsigned long fdt, sdram = 0x10000000;
+ unsigned long sdram = 0x10000000;
+ void *fdt;
arm_cpu_lowlevel_init();
arm_setup_stack(0x00940000 - 8);
- fdt = (unsigned long)__dtb_imx6q_dmo_edmqmx6_start - get_runtime_offset();
+ fdt = __dtb_imx6q_dmo_edmqmx6_start - get_runtime_offset();
if (get_pc() < 0x10000000) {
sdram_init();
@@ -158,10 +159,9 @@ ENTRY_FUNCTION(start_imx6_realq7, r0, r1, r2)
* Copy the devicetree blob to sdram so that the barebox code finds it
* inside valid SDRAM instead of SRAM.
*/
- memcpy((void *)sdram, (void *)fdt,
- __dtb_imx6q_dmo_edmqmx6_end -
- __dtb_imx6q_dmo_edmqmx6_start);
- fdt = sdram;
+ memcpy((void*)sdram, fdt, __dtb_imx6q_dmo_edmqmx6_end -
+ __dtb_imx6q_dmo_edmqmx6_start);
+ fdt = (void *)sdram;
}
barebox_arm_entry(sdram, SZ_2G, fdt);
diff --git a/arch/arm/boards/dfi-fs700-m60/lowlevel.c b/arch/arm/boards/dfi-fs700-m60/lowlevel.c
index 5d1e5f409eb5..541e6c18743c 100644
--- a/arch/arm/boards/dfi-fs700-m60/lowlevel.c
+++ b/arch/arm/boards/dfi-fs700-m60/lowlevel.c
@@ -103,7 +103,7 @@ extern char __dtb_imx6q_dfi_fs700_m60_6q_start[];
ENTRY_FUNCTION(start_imx6q_dfi_fs700_m60_6q_nanya, r0, r1, r2)
{
- uint32_t fdt;
+ void *fdt;
int i;
arm_cpu_lowlevel_init();
@@ -115,14 +115,14 @@ ENTRY_FUNCTION(start_imx6q_dfi_fs700_m60_6q_nanya, r0, r1, r2)
early_uart_init_6q();
- fdt = (uint32_t)__dtb_imx6q_dfi_fs700_m60_6q_start - get_runtime_offset();
+ fdt = __dtb_imx6q_dfi_fs700_m60_6q_start - get_runtime_offset();
barebox_arm_entry(0x10000000, memsize_1G_2G(), fdt);
}
ENTRY_FUNCTION(start_imx6q_dfi_fs700_m60_6q_micron, r0, r1, r2)
{
- uint32_t fdt;
+ void *fdt;
int i;
arm_cpu_lowlevel_init();
@@ -134,7 +134,7 @@ ENTRY_FUNCTION(start_imx6q_dfi_fs700_m60_6q_micron, r0, r1, r2)
early_uart_init_6q();
- fdt = (uint32_t)__dtb_imx6q_dfi_fs700_m60_6q_start - get_runtime_offset();
+ fdt = __dtb_imx6q_dfi_fs700_m60_6q_start - get_runtime_offset();
*(uint32_t *)0x10000000 = SZ_1G;
@@ -145,7 +145,7 @@ extern char __dtb_imx6dl_dfi_fs700_m60_6s_start[];
ENTRY_FUNCTION(start_imx6dl_dfi_fs700_m60_6s, r0, r1, r2)
{
- uint32_t fdt;
+ void *fdt;
int i;
arm_cpu_lowlevel_init();
@@ -157,7 +157,7 @@ ENTRY_FUNCTION(start_imx6dl_dfi_fs700_m60_6s, r0, r1, r2)
early_uart_init_6s();
- fdt = (uint32_t)__dtb_imx6dl_dfi_fs700_m60_6s_start - get_runtime_offset();
+ fdt = __dtb_imx6dl_dfi_fs700_m60_6s_start - get_runtime_offset();
barebox_arm_entry(0x10000000, memsize_512M_1G(), fdt);
}
diff --git a/arch/arm/boards/ebv-socrates/lowlevel.c b/arch/arm/boards/ebv-socrates/lowlevel.c
index 035df70839d7..9c1154320954 100644
--- a/arch/arm/boards/ebv-socrates/lowlevel.c
+++ b/arch/arm/boards/ebv-socrates/lowlevel.c
@@ -47,11 +47,11 @@ extern char __dtb_socfpga_cyclone5_socrates_start[];
ENTRY_FUNCTION(start_socfpga_socrates, r0, r1, r2)
{
- uint32_t fdt;
+ void *fdt;
arm_cpu_lowlevel_init();
- fdt = (uint32_t)__dtb_socfpga_cyclone5_socrates_start - get_runtime_offset();
+ fdt = __dtb_socfpga_cyclone5_socrates_start - get_runtime_offset();
barebox_arm_entry(0x0, SZ_1G, fdt);
}
@@ -82,7 +82,7 @@ static noinline void socrates_entry(void)
puts_ll("done\n");
- barebox_arm_entry(0x0, SZ_1G, 0);
+ barebox_arm_entry(0x0, SZ_1G, NULL);
}
ENTRY_FUNCTION(start_socfpga_socrates_xload, r0, r1, r2)
diff --git a/arch/arm/boards/efika-mx-smartbook/lowlevel.c b/arch/arm/boards/efika-mx-smartbook/lowlevel.c
index 72c8b00a3121..0d32eee860e4 100644
--- a/arch/arm/boards/efika-mx-smartbook/lowlevel.c
+++ b/arch/arm/boards/efika-mx-smartbook/lowlevel.c
@@ -8,13 +8,13 @@ extern char __dtb_imx51_genesi_efika_sb_start[];
ENTRY_FUNCTION(start_imx51_genesi_efikasb, r0, r1, r2)
{
- uint32_t fdt;
+ void *fdt;
arm_cpu_lowlevel_init();
arm_setup_stack(0x20000000 - 16);
imx51_init_lowlevel(800);
- fdt = (uint32_t)__dtb_imx51_genesi_efika_sb_start - get_runtime_offset();
+ fdt = __dtb_imx51_genesi_efika_sb_start - get_runtime_offset();
imx51_barebox_entry(fdt);
}
diff --git a/arch/arm/boards/embest-riotboard/lowlevel.c b/arch/arm/boards/embest-riotboard/lowlevel.c
index 814658aaf5dd..64edd61cc666 100644
--- a/arch/arm/boards/embest-riotboard/lowlevel.c
+++ b/arch/arm/boards/embest-riotboard/lowlevel.c
@@ -28,7 +28,7 @@ extern char __dtb_imx6s_riotboard_start[];
ENTRY_FUNCTION(start_imx6s_riotboard, r0, r1, r2)
{
- uint32_t fdt;
+ void *fdt;
arm_cpu_lowlevel_init();
@@ -38,6 +38,6 @@ ENTRY_FUNCTION(start_imx6s_riotboard, r0, r1, r2)
putc_ll('a');
}
- fdt = (uint32_t)__dtb_imx6s_riotboard_start - get_runtime_offset();
+ fdt = __dtb_imx6s_riotboard_start - get_runtime_offset();
barebox_arm_entry(0x10000000, SZ_1G, fdt);
}
diff --git a/arch/arm/boards/eukrea_cpuimx25/lowlevel.c b/arch/arm/boards/eukrea_cpuimx25/lowlevel.c
index f0bf2c7fd51e..4edbbe4b8abb 100644
--- a/arch/arm/boards/eukrea_cpuimx25/lowlevel.c
+++ b/arch/arm/boards/eukrea_cpuimx25/lowlevel.c
@@ -134,5 +134,5 @@ void __bare_init __naked barebox_arm_reset_vector(void)
imx25_barebox_boot_nand_external(0);
}
out:
- imx25_barebox_entry(0);
+ imx25_barebox_entry(NULL);
}
diff --git a/arch/arm/boards/eukrea_cpuimx35/lowlevel.c b/arch/arm/boards/eukrea_cpuimx35/lowlevel.c
index b8ba3c871629..4788ae2e424d 100644
--- a/arch/arm/boards/eukrea_cpuimx35/lowlevel.c
+++ b/arch/arm/boards/eukrea_cpuimx35/lowlevel.c
@@ -144,5 +144,5 @@ void __bare_init __naked barebox_arm_reset_vector(void)
}
out:
- imx35_barebox_entry(0);
+ imx35_barebox_entry(NULL);
}
diff --git a/arch/arm/boards/eukrea_cpuimx51/lowlevel.c b/arch/arm/boards/eukrea_cpuimx51/lowlevel.c
index 3e6a0ee328b2..c3f7b4acbb46 100644
--- a/arch/arm/boards/eukrea_cpuimx51/lowlevel.c
+++ b/arch/arm/boards/eukrea_cpuimx51/lowlevel.c
@@ -5,5 +5,5 @@
void __naked barebox_arm_reset_vector(void)
{
arm_cpu_lowlevel_init();
- imx51_barebox_entry(0);
+ imx51_barebox_entry(NULL);
}
diff --git a/arch/arm/boards/freescale-mx23-evk/lowlevel.c b/arch/arm/boards/freescale-mx23-evk/lowlevel.c
index 155944468fe0..2a26a7763ee8 100644
--- a/arch/arm/boards/freescale-mx23-evk/lowlevel.c
+++ b/arch/arm/boards/freescale-mx23-evk/lowlevel.c
@@ -7,5 +7,5 @@
void __naked barebox_arm_reset_vector(void)
{
arm_cpu_lowlevel_init();
- barebox_arm_entry(IMX_MEMORY_BASE, SZ_32M, 0);
+ barebox_arm_entry(IMX_MEMORY_BASE, SZ_32M, NULL);
}
diff --git a/arch/arm/boards/freescale-mx28-evk/lowlevel.c b/arch/arm/boards/freescale-mx28-evk/lowlevel.c
index f7b90331bbf9..aa3b09b2ee68 100644
--- a/arch/arm/boards/freescale-mx28-evk/lowlevel.c
+++ b/arch/arm/boards/freescale-mx28-evk/lowlevel.c
@@ -7,5 +7,5 @@
void __naked barebox_arm_reset_vector(void)
{
arm_cpu_lowlevel_init();
- barebox_arm_entry(IMX_MEMORY_BASE, SZ_128M, 0);
+ barebox_arm_entry(IMX_MEMORY_BASE, SZ_128M, NULL);
}
diff --git a/arch/arm/boards/freescale-mx51-babbage/lowlevel.c b/arch/arm/boards/freescale-mx51-babbage/lowlevel.c
index f60601194da1..5a5a83c436cd 100644
--- a/arch/arm/boards/freescale-mx51-babbage/lowlevel.c
+++ b/arch/arm/boards/freescale-mx51-babbage/lowlevel.c
@@ -7,11 +7,11 @@ extern char __dtb_imx51_babbage_start[];
ENTRY_FUNCTION(start_imx51_babbage, r0, r1, r2)
{
- uint32_t fdt;
+ void *fdt;
arm_cpu_lowlevel_init();
- fdt = (uint32_t)__dtb_imx51_babbage_start - get_runtime_offset();
+ fdt = __dtb_imx51_babbage_start - get_runtime_offset();
imx51_barebox_entry(fdt);
}
diff --git a/arch/arm/boards/freescale-mx53-qsb/lowlevel.c b/arch/arm/boards/freescale-mx53-qsb/lowlevel.c
index c9e057ae679d..51b9ef8db7cf 100644
--- a/arch/arm/boards/freescale-mx53-qsb/lowlevel.c
+++ b/arch/arm/boards/freescale-mx53-qsb/lowlevel.c
@@ -7,11 +7,11 @@ extern char __dtb_imx53_qsb_start[];
ENTRY_FUNCTION(start_imx53_loco, r0, r1, r2)
{
- uint32_t fdt;
+ void *fdt;
arm_cpu_lowlevel_init();
- fdt = (uint32_t)__dtb_imx53_qsb_start - get_runtime_offset();
+ fdt = __dtb_imx53_qsb_start - get_runtime_offset();
imx53_barebox_entry(fdt);
}
@@ -20,11 +20,11 @@ extern char __dtb_imx53_qsrb_start[];
ENTRY_FUNCTION(start_imx53_loco_r, r0, r1, r2)
{
- uint32_t fdt;
+ void *fdt;
arm_cpu_lowlevel_init();
- fdt = (uint32_t)__dtb_imx53_qsrb_start - get_runtime_offset();
+ fdt = __dtb_imx53_qsrb_start - get_runtime_offset();
imx53_barebox_entry(fdt);
}
diff --git a/arch/arm/boards/freescale-mx53-smd/lowlevel.c b/arch/arm/boards/freescale-mx53-smd/lowlevel.c
index 60c28f7856bd..1db07e2e2c6c 100644
--- a/arch/arm/boards/freescale-mx53-smd/lowlevel.c
+++ b/arch/arm/boards/freescale-mx53-smd/lowlevel.c
@@ -5,5 +5,5 @@
void __naked barebox_arm_reset_vector(void)
{
arm_cpu_lowlevel_init();
- imx53_barebox_entry(0);
+ imx53_barebox_entry(NULL);
}
diff --git a/arch/arm/boards/freescale-mx53-vmx53/lowlevel.c b/arch/arm/boards/freescale-mx53-vmx53/lowlevel.c
index ba356cdde31f..4054fd51e255 100644
--- a/arch/arm/boards/freescale-mx53-vmx53/lowlevel.c
+++ b/arch/arm/boards/freescale-mx53-vmx53/lowlevel.c
@@ -7,11 +7,11 @@ extern char __dtb_imx53_voipac_bsb_start[];
ENTRY_FUNCTION(start_imx53_vmx53, r0, r1, r2)
{
- uint32_t fdt;
+ void *fdt;
arm_cpu_lowlevel_init();
- fdt = (uint32_t)__dtb_imx53_voipac_bsb_start - get_runtime_offset();
+ fdt = __dtb_imx53_voipac_bsb_start - get_runtime_offset();
imx53_barebox_entry(fdt);
}
diff --git a/arch/arm/boards/freescale-mx6-arm2/lowlevel.c b/arch/arm/boards/freescale-mx6-arm2/lowlevel.c
index 15d9287adbae..53783bb0ab73 100644
--- a/arch/arm/boards/freescale-mx6-arm2/lowlevel.c
+++ b/arch/arm/boards/freescale-mx6-arm2/lowlevel.c
@@ -6,5 +6,5 @@
void __naked barebox_arm_reset_vector(void)
{
arm_cpu_lowlevel_init();
- barebox_arm_entry(0x10000000, SZ_2G, 0);
+ barebox_arm_entry(0x10000000, SZ_2G, NULL);
}
diff --git a/arch/arm/boards/freescale-mx6-sabrelite/lowlevel.c b/arch/arm/boards/freescale-mx6-sabrelite/lowlevel.c
index 14a7f322f72b..a154381bfa7b 100644
--- a/arch/arm/boards/freescale-mx6-sabrelite/lowlevel.c
+++ b/arch/arm/boards/freescale-mx6-sabrelite/lowlevel.c
@@ -7,11 +7,11 @@ extern char __dtb_imx6q_sabrelite_start[];
ENTRY_FUNCTION(start_imx6q_sabrelite, r0, r1, r2)
{
- uint32_t fdt;
+ void *fdt;
arm_cpu_lowlevel_init();
- fdt = (uint32_t)__dtb_imx6q_sabrelite_start - get_runtime_offset();
+ fdt = __dtb_imx6q_sabrelite_start - get_runtime_offset();
barebox_arm_entry(0x10000000, SZ_1G, fdt);
}
@@ -20,11 +20,11 @@ extern char __dtb_imx6dl_sabrelite_start[];
ENTRY_FUNCTION(start_imx6dl_sabrelite, r0, r1, r2)
{
- uint32_t fdt;
+ void *fdt;
arm_cpu_lowlevel_init();
- fdt = (uint32_t)__dtb_imx6dl_sabrelite_start - get_runtime_offset();
+ fdt = __dtb_imx6dl_sabrelite_start - get_runtime_offset();
barebox_arm_entry(0x10000000, SZ_1G, fdt);
}
diff --git a/arch/arm/boards/freescale-mx6-sabresd/lowlevel.c b/arch/arm/boards/freescale-mx6-sabresd/lowlevel.c
index c8b542aa254a..325de84983f5 100644
--- a/arch/arm/boards/freescale-mx6-sabresd/lowlevel.c
+++ b/arch/arm/boards/freescale-mx6-sabresd/lowlevel.c
@@ -7,11 +7,11 @@ extern char __dtb_imx6q_sabresd_start[];
ENTRY_FUNCTION(start_imx6q_sabresd, r0, r1, r2)
{
- uint32_t fdt;
+ void *fdt;
arm_cpu_lowlevel_init();
- fdt = (uint32_t)__dtb_imx6q_sabresd_start - get_runtime_offset();
+ fdt = __dtb_imx6q_sabresd_start - get_runtime_offset();
barebox_arm_entry(0x10000000, SZ_1G, fdt);
}
diff --git a/arch/arm/boards/friendlyarm-mini6410/lowlevel.c b/arch/arm/boards/friendlyarm-mini6410/lowlevel.c
index 3a8af812290b..a21a3f8301a8 100644
--- a/arch/arm/boards/friendlyarm-mini6410/lowlevel.c
+++ b/arch/arm/boards/friendlyarm-mini6410/lowlevel.c
@@ -7,5 +7,5 @@
void __naked barebox_arm_reset_vector(void)
{
arm_cpu_lowlevel_init();
- barebox_arm_entry(S3C_SDRAM_BASE, SZ_128M, 0);
+ barebox_arm_entry(S3C_SDRAM_BASE, SZ_128M, NULL);
}
diff --git a/arch/arm/boards/friendlyarm-tiny210/lowlevel.c b/arch/arm/boards/friendlyarm-tiny210/lowlevel.c
index d98095773930..236fe7f19555 100644
--- a/arch/arm/boards/friendlyarm-tiny210/lowlevel.c
+++ b/arch/arm/boards/friendlyarm-tiny210/lowlevel.c
@@ -113,5 +113,5 @@ void __bare_init barebox_arm_reset_vector(void)
debug_led(1, 0);
boot:
- barebox_arm_entry(S3C_SDRAM_BASE, SZ_256M, 0);
+ barebox_arm_entry(S3C_SDRAM_BASE, SZ_256M, NULL);
}
diff --git a/arch/arm/boards/friendlyarm-tiny6410/lowlevel.c b/arch/arm/boards/friendlyarm-tiny6410/lowlevel.c
index 3a8af812290b..a21a3f8301a8 100644
--- a/arch/arm/boards/friendlyarm-tiny6410/lowlevel.c
+++ b/arch/arm/boards/friendlyarm-tiny6410/lowlevel.c
@@ -7,5 +7,5 @@
void __naked barebox_arm_reset_vector(void)
{
arm_cpu_lowlevel_init();
- barebox_arm_entry(S3C_SDRAM_BASE, SZ_128M, 0);
+ barebox_arm_entry(S3C_SDRAM_BASE, SZ_128M, NULL);
}
diff --git a/arch/arm/boards/gk802/lowlevel.c b/arch/arm/boards/gk802/lowlevel.c
index e159ddbb23ed..bfedfb6c991a 100644
--- a/arch/arm/boards/gk802/lowlevel.c
+++ b/arch/arm/boards/gk802/lowlevel.c
@@ -7,10 +7,10 @@ extern char __dtb_imx6q_gk802_start[];
ENTRY_FUNCTION(start_imx6_gk802, r0, r1, r2)
{
- uint32_t fdt;
+ void *fdt;
arm_cpu_lowlevel_init();
- fdt = (uint32_t)__dtb_imx6q_gk802_start - get_runtime_offset();
+ fdt = __dtb_imx6q_gk802_start - get_runtime_offset();
barebox_arm_entry(0x10000000, SZ_1G, fdt);
}
diff --git a/arch/arm/boards/guf-cupid/lowlevel.c b/arch/arm/boards/guf-cupid/lowlevel.c
index 4c0de9caedf2..6fc90fbbdc57 100644
--- a/arch/arm/boards/guf-cupid/lowlevel.c
+++ b/arch/arm/boards/guf-cupid/lowlevel.c
@@ -320,5 +320,5 @@ void __bare_init __naked barebox_arm_reset_vector(void)
}
out:
- imx35_barebox_entry(0);
+ imx35_barebox_entry(NULL);
}
diff --git a/arch/arm/boards/guf-neso/lowlevel.c b/arch/arm/boards/guf-neso/lowlevel.c
index d26ee73ef112..282835959828 100644
--- a/arch/arm/boards/guf-neso/lowlevel.c
+++ b/arch/arm/boards/guf-neso/lowlevel.c
@@ -94,5 +94,5 @@ void __bare_init __naked barebox_arm_reset_vector(void)
}
out:
- imx27_barebox_entry(0);
+ imx27_barebox_entry(NULL);
}
diff --git a/arch/arm/boards/guf-santaro/lowlevel.c b/arch/arm/boards/guf-santaro/lowlevel.c
index da6d92af3b1e..daf9709dfb1d 100644
--- a/arch/arm/boards/guf-santaro/lowlevel.c
+++ b/arch/arm/boards/guf-santaro/lowlevel.c
@@ -30,7 +30,7 @@ extern char __dtb_imx6q_guf_santaro_start[];
ENTRY_FUNCTION(start_imx6q_guf_santaro, r0, r1, r2)
{
- uint32_t fdt;
+ void *fdt;
int i;
arm_cpu_lowlevel_init();
@@ -42,7 +42,7 @@ ENTRY_FUNCTION(start_imx6q_guf_santaro, r0, r1, r2)
setup_uart();
- fdt = (uint32_t)__dtb_imx6q_guf_santaro_start - get_runtime_offset();
+ fdt = __dtb_imx6q_guf_santaro_start - get_runtime_offset();
barebox_arm_entry(0x10000000, SZ_1G, fdt);
}
diff --git a/arch/arm/boards/guf-vincell/lowlevel.c b/arch/arm/boards/guf-vincell/lowlevel.c
index 534e506e7b84..186c0d9dd02e 100644
--- a/arch/arm/boards/guf-vincell/lowlevel.c
+++ b/arch/arm/boards/guf-vincell/lowlevel.c
@@ -132,7 +132,7 @@ void __bare_init __naked barebox_arm_reset_vector(void)
/* Skip SDRAM initialization if we run from RAM */
r = get_pc();
if (r > 0x70000000 && r < 0xf0000000)
- imx53_barebox_entry(0);
+ imx53_barebox_entry(NULL);
/* Setup a preliminary stack */
r = 0xf8000000 + 0x60000 - 16;
@@ -146,5 +146,5 @@ void __bare_init __naked barebox_arm_reset_vector(void)
imx_esdctlv4_init();
- imx53_barebox_entry(0);
+ imx53_barebox_entry(NULL);
}
diff --git a/arch/arm/boards/highbank/lowlevel.c b/arch/arm/boards/highbank/lowlevel.c
index b862a1f85736..c0405ed3a4e9 100644
--- a/arch/arm/boards/highbank/lowlevel.c
+++ b/arch/arm/boards/highbank/lowlevel.c
@@ -13,5 +13,5 @@
void __naked barebox_arm_reset_vector(void)
{
arm_cpu_lowlevel_init();
- barebox_arm_entry(0x00000000, SZ_512M, 0);
+ barebox_arm_entry(0x00000000, SZ_512M, NULL);
}
diff --git a/arch/arm/boards/imx233-olinuxino/lowlevel.c b/arch/arm/boards/imx233-olinuxino/lowlevel.c
index c23a12db12f6..d26562c02bf3 100644
--- a/arch/arm/boards/imx233-olinuxino/lowlevel.c
+++ b/arch/arm/boards/imx233-olinuxino/lowlevel.c
@@ -7,5 +7,5 @@
void __naked barebox_arm_reset_vector(void)
{
arm_cpu_lowlevel_init();
- barebox_arm_entry(IMX_MEMORY_BASE, SZ_64M, 0);
+ barebox_arm_entry(IMX_MEMORY_BASE, SZ_64M, NULL);
}
diff --git a/arch/arm/boards/karo-tx25/lowlevel.c b/arch/arm/boards/karo-tx25/lowlevel.c
index be27bc7bd3e5..861c27b8a6e1 100644
--- a/arch/arm/boards/karo-tx25/lowlevel.c
+++ b/arch/arm/boards/karo-tx25/lowlevel.c
@@ -75,7 +75,7 @@ static inline void __bare_init setup_sdram(uint32_t base, uint32_t esdctl,
writel(esdctl, esdctlreg);
}
-static void __bare_init karo_tx25_common_init(uint32_t fdt)
+static void __bare_init karo_tx25_common_init(void *fdt)
{
uint32_t r;
@@ -167,11 +167,11 @@ extern char __dtb_imx25_karo_tx25_start[];
ENTRY_FUNCTION(start_imx25_karo_tx25, r0, r1, r2)
{
- uint32_t fdt;
+ void *fdt;
arm_setup_stack(MX25_IRAM_BASE_ADDR + MX25_IRAM_SIZE - 8);
- fdt = (uint32_t)__dtb_imx25_karo_tx25_start - get_runtime_offset();
+ fdt = __dtb_imx25_karo_tx25_start - get_runtime_offset();
karo_tx25_common_init(fdt);
}
diff --git a/arch/arm/boards/karo-tx28/lowlevel.c b/arch/arm/boards/karo-tx28/lowlevel.c
index f7b90331bbf9..aa3b09b2ee68 100644
--- a/arch/arm/boards/karo-tx28/lowlevel.c
+++ b/arch/arm/boards/karo-tx28/lowlevel.c
@@ -7,5 +7,5 @@
void __naked barebox_arm_reset_vector(void)
{
arm_cpu_lowlevel_init();
- barebox_arm_entry(IMX_MEMORY_BASE, SZ_128M, 0);
+ barebox_arm_entry(IMX_MEMORY_BASE, SZ_128M, NULL);
}
diff --git a/arch/arm/boards/karo-tx51/lowlevel.c b/arch/arm/boards/karo-tx51/lowlevel.c
index 3e6a0ee328b2..c3f7b4acbb46 100644
--- a/arch/arm/boards/karo-tx51/lowlevel.c
+++ b/arch/arm/boards/karo-tx51/lowlevel.c
@@ -5,5 +5,5 @@
void __naked barebox_arm_reset_vector(void)
{
arm_cpu_lowlevel_init();
- imx51_barebox_entry(0);
+ imx51_barebox_entry(NULL);
}
diff --git a/arch/arm/boards/karo-tx53/lowlevel.c b/arch/arm/boards/karo-tx53/lowlevel.c
index f47f2607220f..d82e6669b009 100644
--- a/arch/arm/boards/karo-tx53/lowlevel.c
+++ b/arch/arm/boards/karo-tx53/lowlevel.c
@@ -16,5 +16,5 @@ void __naked barebox_arm_reset_vector(void)
if (IS_ENABLED(CONFIG_TX53_REV_XX30))
imx53_init_lowlevel_early(800);
- imx53_barebox_entry(0);
+ imx53_barebox_entry(NULL);
}
diff --git a/arch/arm/boards/mioa701/lowlevel.c b/arch/arm/boards/mioa701/lowlevel.c
index 02dc58696c93..aa4a82e598f6 100644
--- a/arch/arm/boards/mioa701/lowlevel.c
+++ b/arch/arm/boards/mioa701/lowlevel.c
@@ -6,5 +6,5 @@
void __naked barebox_arm_reset_vector(void)
{
arm_cpu_lowlevel_init();
- barebox_arm_entry(0xa0000000, SZ_64M, 0);
+ barebox_arm_entry(0xa0000000, SZ_64M, NULL);
}
diff --git a/arch/arm/boards/mx31moboard/lowlevel.c b/arch/arm/boards/mx31moboard/lowlevel.c
index e9ffb74e235f..b00c4bb2c008 100644
--- a/arch/arm/boards/mx31moboard/lowlevel.c
+++ b/arch/arm/boards/mx31moboard/lowlevel.c
@@ -83,7 +83,7 @@ static noinline __noreturn void mx31moboard_startup(void)
/* Skip SDRAM initialization if we run from RAM */
r = get_pc();
if (r > 0x80000000 && r < 0xa0000000)
- imx31_barebox_entry(0);
+ imx31_barebox_entry(NULL);
writel(0x00000004, MX31_ESDCTL_BASE_ADDR + IMX_ESDMISC);
writel(0x00695727, MX31_ESDCTL_BASE_ADDR + IMX_ESDCFG0);
@@ -99,7 +99,7 @@ static noinline __noreturn void mx31moboard_startup(void)
writel(0xDEADBEEF, MX31_CSD0_BASE_ADDR);
writel(0x0000000c, MX31_ESDCTL_BASE_ADDR + IMX_ESDMISC);
- imx31_barebox_entry(0);
+ imx31_barebox_entry(NULL);
}
diff --git a/arch/arm/boards/nhk8815/lowlevel.c b/arch/arm/boards/nhk8815/lowlevel.c
index b694c8946ddc..ce06f45c91b3 100644
--- a/arch/arm/boards/nhk8815/lowlevel.c
+++ b/arch/arm/boards/nhk8815/lowlevel.c
@@ -6,5 +6,5 @@
void __naked barebox_arm_reset_vector(void)
{
arm_cpu_lowlevel_init();
- barebox_arm_entry(0x0, SZ_64M, 0);
+ barebox_arm_entry(0x0, SZ_64M, NULL);
}
diff --git a/arch/arm/boards/omap343xdsp/lowlevel.c b/arch/arm/boards/omap343xdsp/lowlevel.c
index 816f400c837d..18ddff362501 100644
--- a/arch/arm/boards/omap343xdsp/lowlevel.c
+++ b/arch/arm/boards/omap343xdsp/lowlevel.c
@@ -556,5 +556,5 @@ void __naked __bare_init barebox_arm_reset_vector(uint32_t *data)
sdp343x_board_init();
- barebox_arm_entry(0x80000000, SZ_128M, 0);
+ barebox_arm_entry(0x80000000, SZ_128M, NULL);
}
diff --git a/arch/arm/boards/omap3evm/lowlevel.c b/arch/arm/boards/omap3evm/lowlevel.c
index 56075c1e6f18..5c3e8902a0cf 100644
--- a/arch/arm/boards/omap3evm/lowlevel.c
+++ b/arch/arm/boards/omap3evm/lowlevel.c
@@ -169,5 +169,5 @@ void __naked __bare_init barebox_arm_reset_vector(uint32_t *data)
omap3_evm_board_init();
- barebox_arm_entry(0x80000000, SZ_128M, 0);
+ barebox_arm_entry(0x80000000, SZ_128M, NULL);
}
diff --git a/arch/arm/boards/panda/lowlevel.c b/arch/arm/boards/panda/lowlevel.c
index 205aaaf81784..2679ae46908d 100644
--- a/arch/arm/boards/panda/lowlevel.c
+++ b/arch/arm/boards/panda/lowlevel.c
@@ -92,5 +92,5 @@ void __bare_init __naked barebox_arm_reset_vector(uint32_t *data)
panda_init_lowlevel();
out:
- barebox_arm_entry(0x80000000, SZ_1G, 0);
+ barebox_arm_entry(0x80000000, SZ_1G, NULL);
}
diff --git a/arch/arm/boards/phytec-phycard-imx27/lowlevel.c b/arch/arm/boards/phytec-phycard-imx27/lowlevel.c
index 5b3bdafa7128..75b97881f5d9 100644
--- a/arch/arm/boards/phytec-phycard-imx27/lowlevel.c
+++ b/arch/arm/boards/phytec-phycard-imx27/lowlevel.c
@@ -74,7 +74,7 @@ void __bare_init __naked barebox_arm_reset_vector(void)
/* Skip SDRAM initialization if we run from RAM */
r = get_pc();
if (r > 0xa0000000 && r < 0xc0000000)
- imx27_barebox_entry(0);
+ imx27_barebox_entry(NULL);
/* 399 MHz */
writel(IMX_PLL_PD(0) |
diff --git a/arch/arm/boards/phytec-phycard-omap3/lowlevel.c b/arch/arm/boards/phytec-phycard-omap3/lowlevel.c
index 7a67493fd686..57f63896645d 100644
--- a/arch/arm/boards/phytec-phycard-omap3/lowlevel.c
+++ b/arch/arm/boards/phytec-phycard-omap3/lowlevel.c
@@ -260,5 +260,5 @@ void __bare_init __naked barebox_arm_reset_vector(uint32_t *data)
pcaal1_board_init();
- barebox_arm_entry(0x80000000, SZ_256M, 0);
+ barebox_arm_entry(0x80000000, SZ_256M, NULL);
}
diff --git a/arch/arm/boards/phytec-phycard-omap4/lowlevel.c b/arch/arm/boards/phytec-phycard-omap4/lowlevel.c
index 1ddf8a07ed29..841ac4b20683 100644
--- a/arch/arm/boards/phytec-phycard-omap4/lowlevel.c
+++ b/arch/arm/boards/phytec-phycard-omap4/lowlevel.c
@@ -102,5 +102,5 @@ void __bare_init __naked barebox_arm_reset_vector(uint32_t *data)
pcaaxl2_init_lowlevel();
out:
- barebox_arm_entry(0x80000000, SZ_512M, 0);
+ barebox_arm_entry(0x80000000, SZ_512M, NULL);
}
diff --git a/arch/arm/boards/phytec-phycore-am335x/lowlevel.c b/arch/arm/boards/phytec-phycore-am335x/lowlevel.c
index d3cac6860ba3..a413b677538f 100644
--- a/arch/arm/boards/phytec-phycore-am335x/lowlevel.c
+++ b/arch/arm/boards/phytec-phycore-am335x/lowlevel.c
@@ -60,7 +60,8 @@ extern char __dtb_am335x_phytec_phycore_end[];
*/
static noinline void pcm051_board_init(void)
{
- unsigned long sdram = 0x80000000, fdt;
+ uint32_t sdram = 0x80000000;
+ void *fdt;
/* WDT1 is already running when the bootloader gets control
* Disable it to avoid "random" resets
@@ -89,7 +90,7 @@ static noinline void pcm051_board_init(void)
memcpy((void *)sdram, __dtb_am335x_phytec_phycore_start,
__dtb_am335x_phytec_phycore_end -
__dtb_am335x_phytec_phycore_start);
- fdt = sdram;
+ fdt = (void *)sdram;
barebox_arm_entry(sdram, SZ_512M, fdt);
}
@@ -112,9 +113,9 @@ ENTRY_FUNCTION(start_am33xx_phytec_phycore_sram, bootinfo, r1, r2)
ENTRY_FUNCTION(start_am33xx_phytec_phycore_sdram, r0, r1, r2)
{
- uint32_t fdt;
+ void *fdt;
- fdt = (uint32_t)__dtb_am335x_phytec_phycore_start - get_runtime_offset();
+ fdt = __dtb_am335x_phytec_phycore_start - get_runtime_offset();
barebox_arm_entry(0x80000000, SZ_512M, fdt);
}
diff --git a/arch/arm/boards/phytec-phycore-imx27/lowlevel.c b/arch/arm/boards/phytec-phycore-imx27/lowlevel.c
index 4f55af82642d..16b916ba0de0 100644
--- a/arch/arm/boards/phytec-phycore-imx27/lowlevel.c
+++ b/arch/arm/boards/phytec-phycore-imx27/lowlevel.c
@@ -100,5 +100,5 @@ void __bare_init __naked barebox_arm_reset_vector(void)
imx27_barebox_boot_nand_external(0);
}
out:
- imx27_barebox_entry(0);
+ imx27_barebox_entry(NULL);
}
diff --git a/arch/arm/boards/phytec-phycore-imx31/lowlevel.c b/arch/arm/boards/phytec-phycore-imx31/lowlevel.c
index cd894c25cedd..44fc5bc7658f 100644
--- a/arch/arm/boards/phytec-phycore-imx31/lowlevel.c
+++ b/arch/arm/boards/phytec-phycore-imx31/lowlevel.c
@@ -84,7 +84,7 @@ void __bare_init __naked barebox_arm_reset_vector(void)
/* Skip SDRAM initialization if we run from RAM */
r = get_pc();
if (r > 0x80000000 && r < 0xa0000000)
- imx31_barebox_entry(0);
+ imx31_barebox_entry(NULL);
#if defined CONFIG_PCM037_SDRAM_BANK0_128MB
#define ROWS0 ESDCTL0_ROW13
@@ -131,6 +131,6 @@ void __bare_init __naked barebox_arm_reset_vector(void)
imx31_barebox_boot_nand_external(0);
} else {
- imx31_barebox_entry(0);
+ imx31_barebox_entry(NULL);
}
}
diff --git a/arch/arm/boards/phytec-phycore-imx35/lowlevel.c b/arch/arm/boards/phytec-phycore-imx35/lowlevel.c
index 8376bb4f00c8..919a9af3dac2 100644
--- a/arch/arm/boards/phytec-phycore-imx35/lowlevel.c
+++ b/arch/arm/boards/phytec-phycore-imx35/lowlevel.c
@@ -196,5 +196,5 @@ void __bare_init __naked barebox_arm_reset_vector(void)
}
out:
- imx35_barebox_entry(0);
+ imx35_barebox_entry(NULL);
}
diff --git a/arch/arm/boards/phytec-phycore-omap4460/lowlevel.c b/arch/arm/boards/phytec-phycore-omap4460/lowlevel.c
index 4f3960043662..8ea62c7f56d0 100644
--- a/arch/arm/boards/phytec-phycore-omap4460/lowlevel.c
+++ b/arch/arm/boards/phytec-phycore-omap4460/lowlevel.c
@@ -122,5 +122,5 @@ void __bare_init __naked barebox_arm_reset_vector(uint32_t *data)
pcm049_init_lowlevel();
out:
- barebox_arm_entry(0x80000000, SZ_512M, 0);
+ barebox_arm_entry(0x80000000, SZ_512M, NULL);
}
diff --git a/arch/arm/boards/phytec-phyflex-imx6/lowlevel.c b/arch/arm/boards/phytec-phyflex-imx6/lowlevel.c
index fb7b186d2162..6c6f660d85d0 100644
--- a/arch/arm/boards/phytec-phyflex-imx6/lowlevel.c
+++ b/arch/arm/boards/phytec-phyflex-imx6/lowlevel.c
@@ -59,7 +59,7 @@ extern char __dtb_imx6s_phytec_pbab01_start[];
ENTRY_FUNCTION(start_phytec_pbab01_1gib, r0, r1, r2)
{
- uint32_t fdt;
+ void *fdt;
arm_cpu_lowlevel_init();
@@ -68,14 +68,14 @@ ENTRY_FUNCTION(start_phytec_pbab01_1gib, r0, r1, r2)
if (IS_ENABLED(CONFIG_DEBUG_LL))
setup_uart();
- fdt = (uint32_t)__dtb_imx6q_phytec_pbab01_start - get_runtime_offset();
+ fdt = __dtb_imx6q_phytec_pbab01_start - get_runtime_offset();
barebox_arm_entry(0x10000000, SZ_1G, fdt);
}
ENTRY_FUNCTION(start_phytec_pbab01_2gib, r0, r1, r2)
{
- uint32_t fdt;
+ void *fdt;
arm_cpu_lowlevel_init();
@@ -84,14 +84,14 @@ ENTRY_FUNCTION(start_phytec_pbab01_2gib, r0, r1, r2)
if (IS_ENABLED(CONFIG_DEBUG_LL))
setup_uart();
- fdt = (uint32_t)__dtb_imx6q_phytec_pbab01_start - get_runtime_offset();
+ fdt = __dtb_imx6q_phytec_pbab01_start - get_runtime_offset();
barebox_arm_entry(0x10000000, SZ_2G, fdt);
}
ENTRY_FUNCTION(start_phytec_pbab01_4gib, r0, r1, r2)
{
- uint32_t fdt;
+ void *fdt;
__barebox_arm_head();
@@ -99,14 +99,14 @@ ENTRY_FUNCTION(start_phytec_pbab01_4gib, r0, r1, r2)
arm_setup_stack(0x00920000 - 8);
- fdt = (uint32_t)__dtb_imx6q_phytec_pbab01_start - get_runtime_offset();
+ fdt = __dtb_imx6q_phytec_pbab01_start - get_runtime_offset();
barebox_arm_entry(0x10000000, 0xEFFFFFF8, fdt);
}
ENTRY_FUNCTION(start_phytec_pbab01dl_1gib, r0, r1, r2)
{
- uint32_t fdt;
+ void *fdt;
__barebox_arm_head();
@@ -114,14 +114,14 @@ ENTRY_FUNCTION(start_phytec_pbab01dl_1gib, r0, r1, r2)
arm_setup_stack(0x00920000 - 8);
- fdt = (uint32_t)__dtb_imx6dl_phytec_pbab01_start - get_runtime_offset();
+ fdt = __dtb_imx6dl_phytec_pbab01_start - get_runtime_offset();
barebox_arm_entry(0x10000000, SZ_1G, fdt);
}
ENTRY_FUNCTION(start_phytec_pbab01s_512mb, r0, r1, r2)
{
- uint32_t fdt;
+ void *fdt;
__barebox_arm_head();
@@ -129,7 +129,7 @@ ENTRY_FUNCTION(start_phytec_pbab01s_512mb, r0, r1, r2)
arm_setup_stack(0x00920000 - 8);
- fdt = (uint32_t)__dtb_imx6s_phytec_pbab01_start - get_runtime_offset();
+ fdt = __dtb_imx6s_phytec_pbab01_start - get_runtime_offset();
barebox_arm_entry(0x10000000, SZ_512M, fdt);
}
diff --git a/arch/arm/boards/radxa-rock/lowlevel.c b/arch/arm/boards/radxa-rock/lowlevel.c
index 0b40f105996b..65014e6bb507 100644
--- a/arch/arm/boards/radxa-rock/lowlevel.c
+++ b/arch/arm/boards/radxa-rock/lowlevel.c
@@ -20,11 +20,11 @@ extern char __dtb_rk3188_radxarock_start[];
ENTRY_FUNCTION(start_radxa_rock, r0, r1, r2)
{
- uint32_t fdt;
+ void *fdt;
arm_cpu_lowlevel_init();
- fdt = (uint32_t)__dtb_rk3188_radxarock_start - get_runtime_offset();
+ fdt = __dtb_rk3188_radxarock_start - get_runtime_offset();
barebox_arm_entry(0x60000000, SZ_2G, fdt);
}
diff --git a/arch/arm/boards/raspberry-pi/lowlevel.c b/arch/arm/boards/raspberry-pi/lowlevel.c
index 4c94cc92d863..022b11d29fc0 100644
--- a/arch/arm/boards/raspberry-pi/lowlevel.c
+++ b/arch/arm/boards/raspberry-pi/lowlevel.c
@@ -7,5 +7,5 @@
void __naked barebox_arm_reset_vector(void)
{
arm_cpu_lowlevel_init();
- barebox_arm_entry(BCM2835_SDRAM_BASE, SZ_128M, 0);
+ barebox_arm_entry(BCM2835_SDRAM_BASE, SZ_128M, NULL);
}
diff --git a/arch/arm/boards/solidrun-cubox/lowlevel.c b/arch/arm/boards/solidrun-cubox/lowlevel.c
index 4b35731e2beb..a28c2b18c5e6 100644
--- a/arch/arm/boards/solidrun-cubox/lowlevel.c
+++ b/arch/arm/boards/solidrun-cubox/lowlevel.c
@@ -25,11 +25,11 @@ extern char __dtb_dove_cubox_bb_start[];
ENTRY_FUNCTION(start_solidrun_cubox, r0, r1, r2)
{
- uint32_t fdt;
+ void *fdt;
arm_cpu_lowlevel_init();
- fdt = (uint32_t)__dtb_dove_cubox_bb_start - get_runtime_offset();
+ fdt = __dtb_dove_cubox_bb_start - get_runtime_offset();
mvebu_barebox_entry(fdt);
}
diff --git a/arch/arm/boards/solidrun-hummingboard/lowlevel.c b/arch/arm/boards/solidrun-hummingboard/lowlevel.c
index 049a8a41be00..8710d85c75c4 100644
--- a/arch/arm/boards/solidrun-hummingboard/lowlevel.c
+++ b/arch/arm/boards/solidrun-hummingboard/lowlevel.c
@@ -7,10 +7,10 @@ extern char __dtb_imx6dl_hummingboard_start[];
ENTRY_FUNCTION(start_imx6dl_hummingboard, r0, r1, r2)
{
- uint32_t fdt;
+ void *fdt;
arm_cpu_lowlevel_init();
- fdt = (uint32_t)__dtb_imx6dl_hummingboard_start - get_runtime_offset();
+ fdt = __dtb_imx6dl_hummingboard_start - get_runtime_offset();
barebox_arm_entry(0x10000000, SZ_512M, fdt);
}
diff --git a/arch/arm/boards/terasic-sockit/lowlevel.c b/arch/arm/boards/terasic-sockit/lowlevel.c
index 0a4a9230313a..5b3b89a92417 100644
--- a/arch/arm/boards/terasic-sockit/lowlevel.c
+++ b/arch/arm/boards/terasic-sockit/lowlevel.c
@@ -47,11 +47,11 @@ extern char __dtb_socfpga_cyclone5_sockit_start[];
ENTRY_FUNCTION(start_socfpga_sockit, r0, r1, r2)
{
- uint32_t fdt;
+ void *fdt;
arm_cpu_lowlevel_init();
- fdt = (uint32_t)__dtb_socfpga_cyclone5_sockit_start - get_runtime_offset();
+ fdt = __dtb_socfpga_cyclone5_sockit_start - get_runtime_offset();
barebox_arm_entry(0x0, SZ_1G, fdt);
}
@@ -82,7 +82,7 @@ static noinline void sockit_entry(void)
puts_ll("done\n");
- barebox_arm_entry(0x0, SZ_1G, 0);
+ barebox_arm_entry(0x0, SZ_1G, NULL);
}
ENTRY_FUNCTION(start_socfpga_sockit_xload, r0, r1, r2)
diff --git a/arch/arm/boards/tqma53/lowlevel.c b/arch/arm/boards/tqma53/lowlevel.c
index 320a03e7b99e..0a672280081a 100644
--- a/arch/arm/boards/tqma53/lowlevel.c
+++ b/arch/arm/boards/tqma53/lowlevel.c
@@ -22,7 +22,7 @@ static inline void setup_uart(void __iomem *base)
writel(0x00000001, base + 0x80);
}
-static void __noreturn start_imx53_tqma53_common(uint32_t fdt)
+static void __noreturn start_imx53_tqma53_common(void *fdt)
{
if (IS_ENABLED(CONFIG_DEBUG_LL)) {
writel(0x3, MX53_IOMUXC_BASE_ADDR + 0x278);
@@ -36,7 +36,7 @@ static void __noreturn start_imx53_tqma53_common(uint32_t fdt)
ENTRY_FUNCTION(start_imx53_mba53_512mib, r0, r1, r2)
{
- uint32_t fdt;
+ void *fdt;
arm_cpu_lowlevel_init();
@@ -44,14 +44,14 @@ ENTRY_FUNCTION(start_imx53_mba53_512mib, r0, r1, r2)
imx53_init_lowlevel_early(800);
- fdt = (uint32_t)__dtb_imx53_mba53_start - get_runtime_offset();
+ fdt = __dtb_imx53_mba53_start - get_runtime_offset();
start_imx53_tqma53_common(fdt);
}
ENTRY_FUNCTION(start_imx53_mba53_1gib, r0, r1, r2)
{
- uint32_t fdt;
+ void *fdt;
arm_cpu_lowlevel_init();
@@ -59,7 +59,7 @@ ENTRY_FUNCTION(start_imx53_mba53_1gib, r0, r1, r2)
imx53_init_lowlevel_early(800);
- fdt = (uint32_t)__dtb_imx53_mba53_start - get_runtime_offset();
+ fdt = __dtb_imx53_mba53_start - get_runtime_offset();
start_imx53_tqma53_common(fdt);
}
diff --git a/arch/arm/boards/tqma6x/lowlevel.c b/arch/arm/boards/tqma6x/lowlevel.c
index a09a2f5671a6..aed95e6fc747 100644
--- a/arch/arm/boards/tqma6x/lowlevel.c
+++ b/arch/arm/boards/tqma6x/lowlevel.c
@@ -43,7 +43,7 @@ extern char __dtb_imx6dl_mba6x_start[];
ENTRY_FUNCTION(start_imx6q_mba6x, r0, r1, r2)
{
- uint32_t fdt;
+ void *fdt;
arm_cpu_lowlevel_init();
@@ -57,14 +57,14 @@ ENTRY_FUNCTION(start_imx6q_mba6x, r0, r1, r2)
arm_early_mmu_cache_invalidate();
- fdt = (uint32_t)__dtb_imx6q_mba6x_start - get_runtime_offset();
+ fdt = __dtb_imx6q_mba6x_start - get_runtime_offset();
barebox_arm_entry(0x10000000, SZ_1G, fdt);
}
ENTRY_FUNCTION(start_imx6dl_mba6x, r0, r1, r2)
{
- uint32_t fdt;
+ void *fdt;
arm_cpu_lowlevel_init();
@@ -78,7 +78,7 @@ ENTRY_FUNCTION(start_imx6dl_mba6x, r0, r1, r2)
arm_early_mmu_cache_invalidate();
- fdt = (uint32_t)__dtb_imx6dl_mba6x_start - get_runtime_offset();
+ fdt = __dtb_imx6dl_mba6x_start - get_runtime_offset();
barebox_arm_entry(0x10000000, SZ_512M, fdt);
}
diff --git a/arch/arm/boards/udoo/lowlevel.c b/arch/arm/boards/udoo/lowlevel.c
index b54ddfec7b7d..5eac7a3bce46 100644
--- a/arch/arm/boards/udoo/lowlevel.c
+++ b/arch/arm/boards/udoo/lowlevel.c
@@ -7,11 +7,11 @@ extern char __dtb_imx6q_udoo_start[];
ENTRY_FUNCTION(start_imx6_udoo, r0, r1, r2)
{
- uint32_t fdt;
+ void *fdt;
arm_cpu_lowlevel_init();
- fdt = (uint32_t)__dtb_imx6q_udoo_start - get_runtime_offset();
+ fdt = __dtb_imx6q_udoo_start - get_runtime_offset();
barebox_arm_entry(0x10000000, SZ_1G, fdt);
}
diff --git a/arch/arm/boards/variscite-mx6/lowlevel.c b/arch/arm/boards/variscite-mx6/lowlevel.c
index e93e87484c23..a2c0874d8013 100644
--- a/arch/arm/boards/variscite-mx6/lowlevel.c
+++ b/arch/arm/boards/variscite-mx6/lowlevel.c
@@ -59,7 +59,7 @@ extern char __dtb_imx6q_var_custom_start[];
ENTRY_FUNCTION(start_variscite_custom, r0, r1, r2)
{
- uint32_t fdt;
+ void *fdt;
arm_cpu_lowlevel_init();
@@ -68,7 +68,7 @@ ENTRY_FUNCTION(start_variscite_custom, r0, r1, r2)
if (IS_ENABLED(CONFIG_DEBUG_LL))
setup_uart();
- fdt = (uint32_t)__dtb_imx6q_var_custom_start - get_runtime_offset();
+ fdt = __dtb_imx6q_var_custom_start - get_runtime_offset();
barebox_arm_entry(0x10000000, SZ_1G, fdt);
}
diff --git a/arch/arm/boards/versatile/lowlevel.c b/arch/arm/boards/versatile/lowlevel.c
index b694c8946ddc..ce06f45c91b3 100644
--- a/arch/arm/boards/versatile/lowlevel.c
+++ b/arch/arm/boards/versatile/lowlevel.c
@@ -6,5 +6,5 @@
void __naked barebox_arm_reset_vector(void)
{
arm_cpu_lowlevel_init();
- barebox_arm_entry(0x0, SZ_64M, 0);
+ barebox_arm_entry(0x0, SZ_64M, NULL);
}
diff --git a/arch/arm/boards/vexpress/lowlevel.c b/arch/arm/boards/vexpress/lowlevel.c
index a296352cf100..2ef94c59d691 100644
--- a/arch/arm/boards/vexpress/lowlevel.c
+++ b/arch/arm/boards/vexpress/lowlevel.c
@@ -16,7 +16,7 @@ void __naked barebox_arm_reset_vector(void)
arm_cpu_lowlevel_init();
if (amba_is_arm_sp804(IOMEM(0x10011000)))
- barebox_arm_entry(0x60000000, SZ_512M, 0);
+ barebox_arm_entry(0x60000000, SZ_512M, NULL);
else
- barebox_arm_entry(0x80000000, SZ_512M, 0);
+ barebox_arm_entry(0x80000000, SZ_512M, NULL);
}
diff --git a/arch/arm/boards/virt2real/lowlevel.c b/arch/arm/boards/virt2real/lowlevel.c
index 3c90d78678bd..731e2cae64e6 100644
--- a/arch/arm/boards/virt2real/lowlevel.c
+++ b/arch/arm/boards/virt2real/lowlevel.c
@@ -30,5 +30,5 @@ void __naked __bare_init barebox_arm_reset_vector(void)
{
arm_cpu_lowlevel_init();
- barebox_arm_entry(VIRT2REAL_SRAM_BASE, VIRT2REAL_SRAM_SIZE, 0);
+ barebox_arm_entry(VIRT2REAL_SRAM_BASE, VIRT2REAL_SRAM_SIZE, NULL);
}
diff --git a/arch/arm/cpu/start-pbl.c b/arch/arm/cpu/start-pbl.c
index 3ef01185219d..407ece506948 100644
--- a/arch/arm/cpu/start-pbl.c
+++ b/arch/arm/cpu/start-pbl.c
@@ -48,12 +48,12 @@ void __naked __section(.text_head_entry) pbl_start(void)
extern void *input_data;
extern void *input_data_end;
-static noinline __noreturn void __barebox_arm_entry(uint32_t membase,
- uint32_t memsize, uint32_t boarddata)
+static noinline __noreturn void __barebox_arm_entry(unsigned long membase,
+ unsigned long memsize, void *boarddata)
{
uint32_t offset;
uint32_t pg_start, pg_end, pg_len;
- void __noreturn (*barebox)(uint32_t, uint32_t, uint32_t);
+ void __noreturn (*barebox)(unsigned long, unsigned long, void *);
uint32_t endmem = membase + memsize;
unsigned long barebox_base;
@@ -127,8 +127,8 @@ static noinline __noreturn void __barebox_arm_entry(uint32_t membase,
* Usually a TEXT_BASE of 1MiB below your lowest possible end of memory should
* be fine.
*/
-void __naked __noreturn barebox_arm_entry(uint32_t membase, uint32_t memsize,
- uint32_t boarddata)
+void __naked __noreturn barebox_arm_entry(unsigned long membase,
+ unsigned long memsize, void *boarddata)
{
arm_setup_stack(membase + memsize - 16);
diff --git a/arch/arm/cpu/start.c b/arch/arm/cpu/start.c
index 399e6b8330a2..961873d6bbeb 100644
--- a/arch/arm/cpu/start.c
+++ b/arch/arm/cpu/start.c
@@ -32,12 +32,12 @@
#include "mmu-early.h"
unsigned long arm_stack_top;
-static unsigned long barebox_boarddata;
+static void *barebox_boarddata;
/*
* return the boarddata variable passed to barebox_arm_entry
*/
-unsigned long barebox_arm_boarddata(void)
+void *barebox_arm_boarddata(void)
{
return barebox_boarddata;
}
@@ -49,8 +49,8 @@ void *barebox_arm_boot_dtb(void)
return barebox_boot_dtb;
}
-static noinline __noreturn void __start(uint32_t membase, uint32_t memsize,
- uint32_t boarddata)
+static noinline __noreturn void __start(unsigned long membase,
+ unsigned long memsize, void *boarddata)
{
unsigned long endmem = membase + memsize;
unsigned long malloc_start, malloc_end;
@@ -83,12 +83,11 @@ static noinline __noreturn void __start(uint32_t membase, uint32_t memsize,
* If boarddata is a pointer inside valid memory and contains a
* FDT magic then use it as later to probe devices
*/
- if (boarddata >= membase && boarddata < membase + memsize &&
- get_unaligned_be32((void *)boarddata) == FDT_MAGIC) {
- uint32_t totalsize = get_unaligned_be32((void *)boarddata + 4);
+ if (boarddata && get_unaligned_be32(boarddata) == FDT_MAGIC) {
+ uint32_t totalsize = get_unaligned_be32(boarddata + 4);
endmem -= ALIGN(totalsize, 64);
barebox_boot_dtb = (void *)endmem;
- memcpy(barebox_boot_dtb, (void *)boarddata, totalsize);
+ memcpy(barebox_boot_dtb, boarddata, totalsize);
}
if ((unsigned long)_text > membase + memsize ||
@@ -144,8 +143,8 @@ void __naked __section(.text_entry) start(void)
* Usually a TEXT_BASE of 1MiB below your lowest possible end of memory should
* be fine.
*/
-void __naked __noreturn barebox_arm_entry(uint32_t membase, uint32_t memsize,
- uint32_t boarddata)
+void __naked __noreturn barebox_arm_entry(unsigned long membase,
+ unsigned long memsize, void *boarddata)
{
arm_setup_stack(membase + memsize - 16);
@@ -158,8 +157,8 @@ void __naked __noreturn barebox_arm_entry(uint32_t membase, uint32_t memsize,
* First function in the uncompressed image. We get here from
* the pbl. The stack already has been set up by the pbl.
*/
-void __naked __section(.text_entry) start(uint32_t membase, uint32_t memsize,
- uint32_t boarddata)
+void __naked __section(.text_entry) start(unsigned long membase,
+ unsigned long memsize, void *boarddata)
{
__start(membase, memsize, boarddata);
}
diff --git a/arch/arm/cpu/uncompress.c b/arch/arm/cpu/uncompress.c
index 7397c7de322e..7081aa78b12c 100644
--- a/arch/arm/cpu/uncompress.c
+++ b/arch/arm/cpu/uncompress.c
@@ -43,11 +43,11 @@ static int __attribute__((__used__))
__attribute__((__section__(".image_end")))
__image_end_dummy = 0xdeadbeef;
-static void __noreturn noinline uncompress_start_payload(uint32_t membase,
- uint32_t memsize, uint32_t boarddata)
+static void __noreturn noinline uncompress_start_payload(unsigned long membase,
+ unsigned long memsize, void *boarddata)
{
uint32_t pg_len;
- void __noreturn (*barebox)(uint32_t, uint32_t, uint32_t);
+ void __noreturn (*barebox)(unsigned long, unsigned long, void *);
uint32_t endmem = membase + memsize;
unsigned long barebox_base;
uint32_t *ptr;
@@ -98,8 +98,8 @@ static void __noreturn noinline uncompress_start_payload(uint32_t membase,
* For the multi images startup process board code jumps here. We will uncompress
* the attached barebox image and start it.
*/
-void __naked __noreturn barebox_arm_entry(uint32_t membase, uint32_t memsize,
- uint32_t boarddata)
+void __naked __noreturn barebox_arm_entry(unsigned long membase,
+ unsigned long memsize, void *boarddata)
{
arm_setup_stack(membase + memsize - 16);
diff --git a/arch/arm/include/asm/barebox-arm.h b/arch/arm/include/asm/barebox-arm.h
index faf9afaab992..66f6fe5ef6b4 100644
--- a/arch/arm/include/asm/barebox-arm.h
+++ b/arch/arm/include/asm/barebox-arm.h
@@ -43,8 +43,8 @@ uint32_t get_runtime_offset(void);
void setup_c(void);
void relocate_to_current_adr(void);
void relocate_to_adr(unsigned long target);
-void __noreturn barebox_arm_entry(uint32_t membase, uint32_t memsize, uint32_t boarddata);
-unsigned long barebox_arm_boarddata(void);
+void __noreturn barebox_arm_entry(unsigned long membase, unsigned long memsize, void *boarddata);
+void *barebox_arm_boarddata(void);
#if defined(CONFIG_RELOCATABLE) && defined(CONFIG_ARM_EXCEPTIONS)
void arm_fixup_vectors(void);
diff --git a/arch/arm/mach-at91/at91rm9200_lowlevel_init.c b/arch/arm/mach-at91/at91rm9200_lowlevel_init.c
index a99cfec22545..f78e368086ab 100644
--- a/arch/arm/mach-at91/at91rm9200_lowlevel_init.c
+++ b/arch/arm/mach-at91/at91rm9200_lowlevel_init.c
@@ -129,5 +129,5 @@ void __naked __bare_init barebox_arm_reset_vector(void)
set_cr(r);
end:
- barebox_arm_entry(AT91_CHIPSELECT_1, at91rm9200_get_sdram_size(), 0);
+ barebox_arm_entry(AT91_CHIPSELECT_1, at91rm9200_get_sdram_size(), NULL);
}
diff --git a/arch/arm/mach-at91/at91sam9260_lowlevel_init.c b/arch/arm/mach-at91/at91sam9260_lowlevel_init.c
index 165bff3a4542..f745b8de4fd6 100644
--- a/arch/arm/mach-at91/at91sam9260_lowlevel_init.c
+++ b/arch/arm/mach-at91/at91sam9260_lowlevel_init.c
@@ -34,7 +34,8 @@ void __bare_init at91sam9260_lowlevel_init(void)
at91sam926x_lowlevel_init(&cfg);
- barebox_arm_entry(AT91_CHIPSELECT_1, at91_get_sdram_size(cfg.sdramc), 0);
+ barebox_arm_entry(AT91_CHIPSELECT_1, at91_get_sdram_size(cfg.sdramc),
+ NULL);
}
void __naked __bare_init barebox_arm_reset_vector(void)
diff --git a/arch/arm/mach-at91/at91sam9261_lowlevel_init.c b/arch/arm/mach-at91/at91sam9261_lowlevel_init.c
index 9e558ea9f194..b9b4dfbb0ec7 100644
--- a/arch/arm/mach-at91/at91sam9261_lowlevel_init.c
+++ b/arch/arm/mach-at91/at91sam9261_lowlevel_init.c
@@ -34,7 +34,8 @@ void __bare_init at91sam9261_lowlevel_init(void)
at91sam926x_lowlevel_init(&cfg);
- barebox_arm_entry(AT91_CHIPSELECT_1, at91_get_sdram_size(cfg.sdramc), 0);
+ barebox_arm_entry(AT91_CHIPSELECT_1, at91_get_sdram_size(cfg.sdramc),
+ NULL);
}
void __naked __bare_init barebox_arm_reset_vector(void)
diff --git a/arch/arm/mach-at91/at91sam9263_lowlevel_init.c b/arch/arm/mach-at91/at91sam9263_lowlevel_init.c
index 1f7d78833a02..00d78f2375af 100644
--- a/arch/arm/mach-at91/at91sam9263_lowlevel_init.c
+++ b/arch/arm/mach-at91/at91sam9263_lowlevel_init.c
@@ -34,7 +34,8 @@ void __bare_init at91sam9263_lowlevel_init(void)
at91sam926x_lowlevel_init(&cfg);
- barebox_arm_entry(AT91_CHIPSELECT_1, at91_get_sdram_size(cfg.sdramc), 0);
+ barebox_arm_entry(AT91_CHIPSELECT_1, at91_get_sdram_size(cfg.sdramc),
+ NULL);
}
void __naked __bare_init barebox_arm_reset_vector(void)
diff --git a/arch/arm/mach-at91/at91sam9g45_lowlevel_init.c b/arch/arm/mach-at91/at91sam9g45_lowlevel_init.c
index df65b86a07e3..b58f101ee25d 100644
--- a/arch/arm/mach-at91/at91sam9g45_lowlevel_init.c
+++ b/arch/arm/mach-at91/at91sam9g45_lowlevel_init.c
@@ -22,5 +22,6 @@ void __naked __bare_init barebox_arm_reset_vector(void)
arm_setup_stack(AT91SAM9G45_SRAM_BASE + AT91SAM9G45_SRAM_SIZE - 16);
- barebox_arm_entry(AT91_CHIPSELECT_6, at91sam9g45_get_ddram_size(1), 0);
+ barebox_arm_entry(AT91_CHIPSELECT_6, at91sam9g45_get_ddram_size(1),
+ NULL);
}
diff --git a/arch/arm/mach-at91/at91sam9n12_lowlevel_init.c b/arch/arm/mach-at91/at91sam9n12_lowlevel_init.c
index eca12c548a06..72a092899f20 100644
--- a/arch/arm/mach-at91/at91sam9n12_lowlevel_init.c
+++ b/arch/arm/mach-at91/at91sam9n12_lowlevel_init.c
@@ -22,5 +22,6 @@ void __naked __bare_init barebox_arm_reset_vector(void)
arm_setup_stack(AT91SAM9N12_SRAM_BASE + AT91SAM9N12_SRAM_SIZE - 16);
- barebox_arm_entry(AT91_CHIPSELECT_1, at91sam9n12_get_ddram_size(), 0);
+ barebox_arm_entry(AT91_CHIPSELECT_1, at91sam9n12_get_ddram_size(),
+ NULL);
}
diff --git a/arch/arm/mach-at91/at91sam9x5_lowlevel_init.c b/arch/arm/mach-at91/at91sam9x5_lowlevel_init.c
index 67dbd005027f..7781036e3df2 100644
--- a/arch/arm/mach-at91/at91sam9x5_lowlevel_init.c
+++ b/arch/arm/mach-at91/at91sam9x5_lowlevel_init.c
@@ -22,5 +22,5 @@ void __naked __bare_init barebox_arm_reset_vector(void)
arm_setup_stack(AT91SAM9X5_SRAM_BASE + AT91SAM9X5_SRAM_SIZE - 16);
- barebox_arm_entry(AT91_CHIPSELECT_1, at91sam9x5_get_ddram_size(), 0);
+ barebox_arm_entry(AT91_CHIPSELECT_1, at91sam9x5_get_ddram_size(), NULL);
}
diff --git a/arch/arm/mach-at91/sama5d3_lowlevel_init.c b/arch/arm/mach-at91/sama5d3_lowlevel_init.c
index 9bb25e309704..d3fcbc2625c4 100644
--- a/arch/arm/mach-at91/sama5d3_lowlevel_init.c
+++ b/arch/arm/mach-at91/sama5d3_lowlevel_init.c
@@ -21,5 +21,5 @@ void __naked __bare_init barebox_arm_reset_vector(void)
arm_setup_stack(SAMA5D3_SRAM_BASE + SAMA5D3_SRAM_SIZE - 16);
- barebox_arm_entry(SAMA5_DDRCS, at91sama5_get_ddram_size(), 0);
+ barebox_arm_entry(SAMA5_DDRCS, at91sama5_get_ddram_size(), NULL);
}
diff --git a/arch/arm/mach-clps711x/lowlevel.c b/arch/arm/mach-clps711x/lowlevel.c
index 58306f29fc59..93a64a11c06f 100644
--- a/arch/arm/mach-clps711x/lowlevel.c
+++ b/arch/arm/mach-clps711x/lowlevel.c
@@ -69,5 +69,5 @@ void __naked __bare_init clps711x_barebox_entry(u32 pllmult)
/* Disable LED flasher */
writew(0, LEDFLSH);
- barebox_arm_entry(SDRAM0_BASE, SZ_8M, 0);
+ barebox_arm_entry(SDRAM0_BASE, SZ_8M, NULL);
}
diff --git a/arch/arm/mach-imx/esdctl.c b/arch/arm/mach-imx/esdctl.c
index 5b49a3d1a013..c756c65f20d7 100644
--- a/arch/arm/mach-imx/esdctl.c
+++ b/arch/arm/mach-imx/esdctl.c
@@ -436,7 +436,7 @@ mem_initcall(imx_esdctl_init);
* - cs0 enabled, cs1 enabled: The largest continuous region, that is, cs0 + cs1
* if cs0 is taking the whole address space.
*/
-void __naked __noreturn imx1_barebox_entry(uint32_t boarddata)
+void __naked __noreturn imx1_barebox_entry(void *boarddata)
{
unsigned long base;
unsigned long size;
@@ -450,7 +450,7 @@ void __naked __noreturn imx1_barebox_entry(uint32_t boarddata)
barebox_arm_entry(base, size, boarddata);
}
-void __naked __noreturn imx25_barebox_entry(uint32_t boarddata)
+void __naked __noreturn imx25_barebox_entry(void *boarddata)
{
unsigned long base;
unsigned long size;
@@ -464,7 +464,7 @@ void __naked __noreturn imx25_barebox_entry(uint32_t boarddata)
barebox_arm_entry(base, size, boarddata);
}
-void __naked __noreturn imx27_barebox_entry(uint32_t boarddata)
+void __naked __noreturn imx27_barebox_entry(void *boarddata)
{
unsigned long base;
unsigned long size;
@@ -480,7 +480,7 @@ void __naked __noreturn imx27_barebox_entry(uint32_t boarddata)
barebox_arm_entry(base, size, boarddata);
}
-void __naked __noreturn imx31_barebox_entry(uint32_t boarddata)
+void __naked __noreturn imx31_barebox_entry(void *boarddata)
{
unsigned long base;
unsigned long size;
@@ -496,7 +496,7 @@ void __naked __noreturn imx31_barebox_entry(uint32_t boarddata)
barebox_arm_entry(base, size, boarddata);
}
-void __naked __noreturn imx35_barebox_entry(uint32_t boarddata)
+void __naked __noreturn imx35_barebox_entry(void *boarddata)
{
unsigned long base;
unsigned long size;
@@ -512,7 +512,7 @@ void __naked __noreturn imx35_barebox_entry(uint32_t boarddata)
barebox_arm_entry(base, size, boarddata);
}
-void __naked __noreturn imx51_barebox_entry(uint32_t boarddata)
+void __naked __noreturn imx51_barebox_entry(void *boarddata)
{
unsigned long base;
unsigned long size;
@@ -526,7 +526,7 @@ void __naked __noreturn imx51_barebox_entry(uint32_t boarddata)
barebox_arm_entry(base, size, boarddata);
}
-void __naked __noreturn imx53_barebox_entry(uint32_t boarddata)
+void __naked __noreturn imx53_barebox_entry(void *boarddata)
{
unsigned long base;
unsigned long size;
diff --git a/arch/arm/mach-imx/external-nand-boot.c b/arch/arm/mach-imx/external-nand-boot.c
index 24b978287ec7..17878e400b2c 100644
--- a/arch/arm/mach-imx/external-nand-boot.c
+++ b/arch/arm/mach-imx/external-nand-boot.c
@@ -319,7 +319,7 @@ static inline int imx35_pagesize_2k(void)
#define DEFINE_EXTERNAL_NAND_ENTRY(soc) \
\
void __noreturn BARE_INIT_FUNCTION(imx##soc##_boot_nand_external_cont) \
- (uint32_t boarddata) \
+ (void *boarddata) \
{ \
unsigned long nfc_base = MX##soc##_NFC_BASE_ADDR; \
void *sdram = (void *)MX##soc##_CSD0_BASE_ADDR; \
@@ -336,20 +336,21 @@ void __noreturn BARE_INIT_FUNCTION(imx##soc##_boot_nand_external_cont) \
} \
\
void __noreturn BARE_INIT_FUNCTION(imx##soc##_barebox_boot_nand_external) \
- (uint32_t boarddata) \
+ (void *bd) \
{ \
unsigned long nfc_base = MX##soc##_NFC_BASE_ADDR; \
unsigned long sdram = MX##soc##_CSD0_BASE_ADDR; \
+ unsigned long boarddata = (unsigned long)bd; \
unsigned long __fn; \
u32 r; \
u32 *src, *trg; \
int i; \
- void __noreturn (*fn)(uint32_t); \
+ void __noreturn (*fn)(void *); \
\
/* skip NAND boot if not running from NFC space */ \
r = get_pc(); \
if (r < nfc_base || r > nfc_base + 0x800) \
- imx##soc##_barebox_entry(boarddata); \
+ imx##soc##_barebox_entry(bd); \
\
src = (unsigned int *)nfc_base; \
trg = (unsigned int *)sdram; \
@@ -378,7 +379,7 @@ void __noreturn BARE_INIT_FUNCTION(imx##soc##_barebox_boot_nand_external) \
boarddata += sdram; \
} \
\
- fn(boarddata); \
+ fn((void *)boarddata); \
}
#ifdef BROKEN
diff --git a/arch/arm/mach-imx/include/mach/esdctl.h b/arch/arm/mach-imx/include/mach/esdctl.h
index b7219d9c4e28..28d44da9382c 100644
--- a/arch/arm/mach-imx/include/mach/esdctl.h
+++ b/arch/arm/mach-imx/include/mach/esdctl.h
@@ -128,14 +128,14 @@
#define ESDCFGx_tRC_16 0x0000000f
#ifndef __ASSEMBLY__
-void __naked __noreturn imx1_barebox_entry(uint32_t boarddata);
-void __naked __noreturn imx25_barebox_entry(uint32_t boarddata);
-void __naked __noreturn imx27_barebox_entry(uint32_t boarddata);
-void __naked __noreturn imx31_barebox_entry(uint32_t boarddata);
-void __naked __noreturn imx35_barebox_entry(uint32_t boarddata);
-void __naked __noreturn imx51_barebox_entry(uint32_t boarddata);
-void __naked __noreturn imx53_barebox_entry(uint32_t boarddata);
-void __naked __noreturn imx6_barebox_entry(uint32_t boarddata);
+void __naked __noreturn imx1_barebox_entry(void *boarddata);
+void __naked __noreturn imx25_barebox_entry(void *boarddata);
+void __naked __noreturn imx27_barebox_entry(void *boarddata);
+void __naked __noreturn imx31_barebox_entry(void *boarddata);
+void __naked __noreturn imx35_barebox_entry(void *boarddata);
+void __naked __noreturn imx51_barebox_entry(void *boarddata);
+void __naked __noreturn imx53_barebox_entry(void *boarddata);
+void __naked __noreturn imx6_barebox_entry(void *boarddata);
void imx_esdctl_disable(void);
#endif
diff --git a/arch/arm/mach-imx/include/mach/imx-nand.h b/arch/arm/mach-imx/include/mach/imx-nand.h
index 972a0da5d7ba..b9305e2e9dcb 100644
--- a/arch/arm/mach-imx/include/mach/imx-nand.h
+++ b/arch/arm/mach-imx/include/mach/imx-nand.h
@@ -3,11 +3,11 @@
#include <linux/mtd/mtd.h>
-void imx21_barebox_boot_nand_external(uint32_t boarddata);
-void imx25_barebox_boot_nand_external(uint32_t boarddata);
-void imx27_barebox_boot_nand_external(uint32_t boarddata);
-void imx31_barebox_boot_nand_external(uint32_t boarddata);
-void imx35_barebox_boot_nand_external(uint32_t boarddata);
+void imx21_barebox_boot_nand_external(void *boarddata);
+void imx25_barebox_boot_nand_external(void *boarddata);
+void imx27_barebox_boot_nand_external(void *boarddata);
+void imx31_barebox_boot_nand_external(void *boarddata);
+void imx35_barebox_boot_nand_external(void *boarddata);
void imx_nand_set_layout(int writesize, int datawidth);
struct imx_nand_platform_data {
diff --git a/arch/arm/mach-mvebu/common.c b/arch/arm/mach-mvebu/common.c
index 921b5150f654..d52b88d71318 100644
--- a/arch/arm/mach-mvebu/common.c
+++ b/arch/arm/mach-mvebu/common.c
@@ -49,7 +49,7 @@ static void mvebu_remap_registers(void)
#define MVEBU_BOOTUP_MEMORY_BASE 0x00000000
#define MVEBU_BOOTUP_MEMORY_SIZE SZ_64M
-void __naked __noreturn mvebu_barebox_entry(uint32_t boarddata)
+void __naked __noreturn mvebu_barebox_entry(void *boarddata)
{
mvebu_remap_registers();
barebox_arm_entry(MVEBU_BOOTUP_MEMORY_BASE,
diff --git a/arch/arm/mach-mvebu/include/mach/lowlevel.h b/arch/arm/mach-mvebu/include/mach/lowlevel.h
index 9fbf1eaf450e..c922a27a7c62 100644
--- a/arch/arm/mach-mvebu/include/mach/lowlevel.h
+++ b/arch/arm/mach-mvebu/include/mach/lowlevel.h
@@ -18,6 +18,6 @@
#ifndef __MACH_LOWLEVEL_H__
#define __MACH_LOWLEVEL_H__
-void mvebu_barebox_entry(uint32_t boarddata);
+void mvebu_barebox_entry(void *boarddata);
#endif
diff --git a/arch/arm/mach-mvebu/lowlevel.c b/arch/arm/mach-mvebu/lowlevel.c
index 11810cc6b576..147a717ad9f3 100644
--- a/arch/arm/mach-mvebu/lowlevel.c
+++ b/arch/arm/mach-mvebu/lowlevel.c
@@ -24,5 +24,5 @@
void __naked barebox_arm_reset_vector(void)
{
arm_cpu_lowlevel_init();
- mvebu_barebox_entry(0);
+ mvebu_barebox_entry(NULL);
}
diff --git a/arch/arm/mach-tegra/tegra_maincomplex_init.c b/arch/arm/mach-tegra/tegra_maincomplex_init.c
index 776af64aeab9..2a85f26a9d92 100644
--- a/arch/arm/mach-tegra/tegra_maincomplex_init.c
+++ b/arch/arm/mach-tegra/tegra_maincomplex_init.c
@@ -51,5 +51,5 @@ void tegra_maincomplex_entry(void)
}
barebox_arm_entry(rambase, ramsize,
- readl(TEGRA_PMC_BASE + PMC_SCRATCH(10)));
+ (void *)readl(TEGRA_PMC_BASE + PMC_SCRATCH(10)));
}
--
1.9.1
More information about the barebox
mailing list