soc/cavium/bootblock: Get rid of register X1
The register X1 isn't used. Document it and remove it. Change-Id: I9324ea9de24ba4baaef9dde890c443dd0f921ad9 Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com> Reviewed-on: https://review.coreboot.org/23792 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Philipp Deppenwiese <zaolin.daisuki@gmail.com> Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net> Reviewed-by: David Hendricks <david.hendricks@gmail.com>
This commit is contained in:
parent
520149dc63
commit
e15556ed3a
|
@ -29,7 +29,11 @@ ENTRY(_start)
|
||||||
*/
|
*/
|
||||||
ic ialluis
|
ic ialluis
|
||||||
fmov d30, x0 /* Save X0 in FPR for use later */
|
fmov d30, x0 /* Save X0 in FPR for use later */
|
||||||
fmov d31, x1 /* Save X1 in FPR for use later */
|
/**
|
||||||
|
* The BDK stores X1 for later use, but it turns out that we don't need
|
||||||
|
* this "feature". The idea is to hide the devicetree somewhere in
|
||||||
|
* flash, that only the ROM will find it and point to it using X1.
|
||||||
|
*/
|
||||||
adr x1, _start /* x1 = _start location based on PC */
|
adr x1, _start /* x1 = _start location based on PC */
|
||||||
fmov d29, x1 /* Save PC in FPR for use later */
|
fmov d29, x1 /* Save PC in FPR for use later */
|
||||||
|
|
||||||
|
@ -84,7 +88,7 @@ node_check_done:
|
||||||
adr x0, _start
|
adr x0, _start
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Check if IROM has loaded the code to CONFIG_BOOTROM_OFFSET.
|
* Check if IROM has loaded the code to BOOTROM_OFFSET.
|
||||||
* In case the offset is wrong, try to relocate.
|
* In case the offset is wrong, try to relocate.
|
||||||
* Ideally the following code is never executed.
|
* Ideally the following code is never executed.
|
||||||
* FIXME: Add region overlap check.
|
* FIXME: Add region overlap check.
|
||||||
|
@ -248,8 +252,7 @@ ENTRY(start)
|
||||||
bl arm64_init_cpu
|
bl arm64_init_cpu
|
||||||
|
|
||||||
fmov x0, d30 /* The original X0, info from previous image */
|
fmov x0, d30 /* The original X0, info from previous image */
|
||||||
fmov x1, d31 /* The original X1, info from previous image */
|
fmov x1, d29 /* The original PC we were loaded at */
|
||||||
fmov x2, d29 /* The original PC we were loaded at */
|
|
||||||
|
|
||||||
/* Call C entry */
|
/* Call C entry */
|
||||||
bl bootblock_main
|
bl bootblock_main
|
||||||
|
|
|
@ -32,7 +32,6 @@ __attribute__((weak)) void bootblock_mainboard_init(void) { /* do nothing */ }
|
||||||
|
|
||||||
/* C code entry point for the boot block */
|
/* C code entry point for the boot block */
|
||||||
void bootblock_main(const uint64_t reg_x0,
|
void bootblock_main(const uint64_t reg_x0,
|
||||||
const uint64_t reg_x1,
|
|
||||||
const uint64_t reg_pc)
|
const uint64_t reg_pc)
|
||||||
{
|
{
|
||||||
uint64_t base_timestamp = 0;
|
uint64_t base_timestamp = 0;
|
||||||
|
@ -57,8 +56,6 @@ void bootblock_main(const uint64_t reg_x0,
|
||||||
printk(BIOS_ERR,
|
printk(BIOS_ERR,
|
||||||
"BOOTBLOCK: RST Boot Failure Code %lld\n",
|
"BOOTBLOCK: RST Boot Failure Code %lld\n",
|
||||||
reg_x0);
|
reg_x0);
|
||||||
|
|
||||||
printk(BIOS_DEBUG, "BOOTBLOCK: FDT 0x%llX\n", reg_x1);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
bootblock_soc_init();
|
bootblock_soc_init();
|
||||||
|
|
|
@ -22,7 +22,6 @@ void bootblock_soc_init(void);
|
||||||
void bootblock_mainboard_init(void);
|
void bootblock_mainboard_init(void);
|
||||||
|
|
||||||
void bootblock_main(const uint64_t reg_x0,
|
void bootblock_main(const uint64_t reg_x0,
|
||||||
const uint64_t reg_x1,
|
|
||||||
const uint64_t reg_pc);
|
const uint64_t reg_pc);
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue