summaryrefslogtreecommitdiff
path: root/bsp/freedom-e310-arty
diff options
context:
space:
mode:
authorNathaniel Graff <nathaniel.graff@sifive.com>2019-03-07 21:32:31 +0000
committerGitHub <noreply@github.com>2019-03-07 21:32:31 +0000
commit84781219c87c0b9148e318f3e358ef7de03e251c (patch)
tree5adffe477189c81f1759446ad9efc7ea46f68702 /bsp/freedom-e310-arty
parent90ab2c8561eb532b382206c8bf3ec1af74f18257 (diff)
parent92d0f3e15ddfeb3d3a640d9bdd3471553e14ed7e (diff)
Merge pull request #196 from sifive/update-metal
Update Metal with GPIO and Cache APIs
Diffstat (limited to 'bsp/freedom-e310-arty')
-rw-r--r--bsp/freedom-e310-arty/metal.h7
-rw-r--r--bsp/freedom-e310-arty/metal.lds2
2 files changed, 8 insertions, 1 deletions
diff --git a/bsp/freedom-e310-arty/metal.h b/bsp/freedom-e310-arty/metal.h
index d0a59b0..f2086b5 100644
--- a/bsp/freedom-e310-arty/metal.h
+++ b/bsp/freedom-e310-arty/metal.h
@@ -163,6 +163,7 @@ struct __metal_driver_sifive_local_external_interrupts0 __metal_dt_local_externa
/* From gpio@10012000 */
struct __metal_driver_sifive_gpio0 __metal_dt_gpio_10012000 = {
.vtable = &__metal_driver_vtable_sifive_gpio0,
+ .gpio.vtable = &__metal_driver_vtable_sifive_gpio0.gpio,
.base = 268509184UL,
.size = 4096UL,
/* From interrupt_controller@c000000 */
@@ -253,6 +254,12 @@ struct __metal_driver_cpu *__metal_cpu_table[] = {
#define __METAL_DT_LOCAL_EXTERNAL_INTERRUPTS_0_HANDLE (&__metal_dt_local_external_interrupts_0.irc)
+#define __MEE_DT_MAX_GPIOS 1
+
+asm (".weak __metal_gpio_table");
+struct __metal_driver_sifive_gpio0 *__metal_gpio_table[] = {
+ &__metal_dt_gpio_10012000};
+
#define __METAL_DT_MAX_BUTTONS 0
asm (".weak __metal_button_table");
diff --git a/bsp/freedom-e310-arty/metal.lds b/bsp/freedom-e310-arty/metal.lds
index c0556ee..1a1801b 100644
--- a/bsp/freedom-e310-arty/metal.lds
+++ b/bsp/freedom-e310-arty/metal.lds
@@ -6,7 +6,7 @@ MEMORY
{
ram (wxa!ri) : ORIGIN = 0x80000000, LENGTH = 0x4000
itim (wx!rai) : ORIGIN = 0x8000000, LENGTH = 0x4000
- flash (rxai!w) : ORIGIN = 0x20400000, LENGTH = 0x20000000
+ flash (rxai!w) : ORIGIN = 0x20400000, LENGTH = 0x1fc00000
}
PHDRS