diff options
Diffstat (limited to 'bsp/coreip-e21-arty')
-rw-r--r-- | bsp/coreip-e21-arty/design.dts | 2 | ||||
-rw-r--r-- | bsp/coreip-e21-arty/metal.h | 7 | ||||
-rw-r--r-- | bsp/coreip-e21-arty/metal.lds | 2 |
3 files changed, 9 insertions, 2 deletions
diff --git a/bsp/coreip-e21-arty/design.dts b/bsp/coreip-e21-arty/design.dts index be0c023..32ef5e8 100644 --- a/bsp/coreip-e21-arty/design.dts +++ b/bsp/coreip-e21-arty/design.dts @@ -7,7 +7,7 @@ model = "SiFive,FE210G"; chosen { stdout-path = "/soc/serial@20000000:115200"; - mee,entry = <&L7 0x400000>; + metal,entry = <&L7 0x400000>; }; L17: aliases { serial0 = &L6; diff --git a/bsp/coreip-e21-arty/metal.h b/bsp/coreip-e21-arty/metal.h index 49b4c73..5a9459b 100644 --- a/bsp/coreip-e21-arty/metal.h +++ b/bsp/coreip-e21-arty/metal.h @@ -334,6 +334,7 @@ struct __metal_driver_sifive_global_external_interrupts0 __metal_dt_global_exter /* From gpio@20002000 */ struct __metal_driver_sifive_gpio0 __metal_dt_gpio_20002000 = { .vtable = &__metal_driver_vtable_sifive_gpio0, + .gpio.vtable = &__metal_driver_vtable_sifive_gpio0.gpio, .base = 536879104UL, .size = 4096UL, /* From interrupt_controller@2000000 */ @@ -559,6 +560,12 @@ struct __metal_driver_cpu *__metal_cpu_table[] = { #define __METAL_DT_GLOBAL_EXTERNAL_INTERRUPTS_HANDLE (&__metal_dt_global_external_interrupts.irc) +#define __MEE_DT_MAX_GPIOS 1 + +asm (".weak __metal_gpio_table"); +struct __metal_driver_sifive_gpio0 *__metal_gpio_table[] = { + &__metal_dt_gpio_20002000}; + #define __METAL_DT_MAX_BUTTONS 4 asm (".weak __metal_button_table"); diff --git a/bsp/coreip-e21-arty/metal.lds b/bsp/coreip-e21-arty/metal.lds index ea41b72..4c81b1b 100644 --- a/bsp/coreip-e21-arty/metal.lds +++ b/bsp/coreip-e21-arty/metal.lds @@ -5,7 +5,7 @@ ENTRY(_enter) MEMORY { ram (wxa!ri) : ORIGIN = 0x80000000, LENGTH = 0x10000 - flash (rxai!w) : ORIGIN = 0x40400000, LENGTH = 0x20000000 + flash (rxai!w) : ORIGIN = 0x40400000, LENGTH = 0x1fc00000 } PHDRS |