From 7cdabc49ca3828c9aeeb6beca4a0beeb71bf23f1 Mon Sep 17 00:00:00 2001 From: Joel Sherrill Date: Sun, 14 Dec 2014 16:27:06 -0600 Subject: pc386: Add Edison base support The current support for the Edison supports a single polled UART for input and output plus a simulated clock tick. The activities forward for supporting the Edison have been posted on the RTEMS mailing lists and at: http://rtemsramblings.blogspot.com/2014/12/intel-edison-and-rtems-road-forward.html --- c/src/lib/libbsp/i386/pc386/include/bsp.h | 27 +++++++++++++++++++++++++-- 1 file changed, 25 insertions(+), 2 deletions(-) (limited to 'c/src/lib/libbsp/i386/pc386/include') diff --git a/c/src/lib/libbsp/i386/pc386/include/bsp.h b/c/src/lib/libbsp/i386/pc386/include/bsp.h index db0879920c..f537eb693d 100644 --- a/c/src/lib/libbsp/i386/pc386/include/bsp.h +++ b/c/src/lib/libbsp/i386/pc386/include/bsp.h @@ -189,8 +189,31 @@ void rtems_irq_mngt_init(void); /* from 'irq_init.c' */ void bsp_size_memory(void); /* from 'bspstart.c' */ -void Clock_driver_install_handler(void); /* from 'ckinit.c' */ -void Clock_driver_support_initialize_hardware(void); /* from 'ckinit.c' */ +#if (BSP_IS_EDISON == 0) + void Clock_driver_install_handler(void); /* from 'ckinit.c' */ + void Clock_driver_support_initialize_hardware(void); /* from 'ckinit.c' */ +#else + /** + * @defgroup edison_bsp Clock Tick Support + * + * @ingroup i386_pc386 + * + * @brief Clock Tick Support Package + */ + Thread clock_driver_sim_idle_body(uintptr_t); + #define BSP_IDLE_TASK_BODY clock_driver_sim_idle_body + /* + * hack to kill some time. Hopefully hitting a hardware register is slower + * than an empty loop. + */ + #define BSP_CLOCK_DRIVER_DELAY() \ + do { \ + uint64_t _i = 2500000; \ + while (_i) { \ + _i--; \ + } \ + } while ( 0 ) +#endif /* edison */ void kbd_reset_setup(char *str, int *ints); /* from 'pc_keyb.c' */ size_t read_aux(char * buffer, size_t count); /* from 'ps2_mouse.c' */ -- cgit v1.2.3