This allows to port the "effect" to the Orange Pi Zero. Signed-off-by: Jan Kiszka <[email protected]> --- inmates/demos/arm/gic-demo.c | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-)
diff --git a/inmates/demos/arm/gic-demo.c b/inmates/demos/arm/gic-demo.c index 8911ffb..37bf4d8 100644 --- a/inmates/demos/arm/gic-demo.c +++ b/inmates/demos/arm/gic-demo.c @@ -2,7 +2,7 @@ * Jailhouse, a Linux-based partitioning hypervisor * * Copyright (c) ARM Limited, 2014 - * Copyright (c) Siemens AG, 2014-2016 + * Copyright (c) Siemens AG, 2014-2017 * * Authors: * Jean-Philippe Brucker <[email protected]> @@ -19,7 +19,14 @@ static u64 ticks_per_beat; static volatile u64 expected_ticks; -static bool blinking_led; + +/* + * Enables blinking LED + * Banana Pi: register 0x1c2090c, pin 24 + * Orange Pi Zero: register 0x1c20810, pin 17 + */ +static void *led_reg; +static unsigned int led_pin; static void handle_IRQ(unsigned int irqn) { @@ -40,13 +47,8 @@ static void handle_IRQ(unsigned int irqn) (long)timer_ticks_to_ns(min_delta), (long)timer_ticks_to_ns(max_delta)); - if (blinking_led) { -#ifdef CONFIG_MACH_SUN7I - /* let green LED on Banana Pi blink */ - #define LED_REG (void *)(0x1c20800 + 7*0x24 + 0x10) - mmio_write32(LED_REG, mmio_read32(LED_REG) ^ (1<<24)); -#endif - } + if (led_reg) + mmio_write32(led_reg, mmio_read32(led_reg) ^ (1 << led_pin)); expected_ticks = timer_get_ticks() + ticks_per_beat; timer_start(ticks_per_beat); @@ -63,7 +65,8 @@ void inmate_main(void) expected_ticks = timer_get_ticks() + ticks_per_beat; timer_start(ticks_per_beat); - blinking_led = cmdline_parse_bool("blinking-led"); + led_reg = (void *)(unsigned long)cmdline_parse_int("led-reg", 0); + led_pin = cmdline_parse_int("led-pin", 0); while (1) asm volatile("wfi" : : : "memory"); -- 2.1.4 -- You received this message because you are subscribed to the Google Groups "Jailhouse" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
