[GSoC - x86_64] Console / serial communication

Sebastian Huber sebastian.huber at embedded-brains.de
Wed Jun 27 05:21:18 UTC 2018


On 27/06/18 06:59, Amaan Cheval wrote:
> Quick question since the BSP guide is outdated - I see several
> "methods" of RTEMS' console management. The guide says to use
> console-termios.c (and rtems_termios_device_install) as the "new"
> method.
> https://docs.rtems.org/branches/master/bsp-howto/console.html#build-system-and-files

The console driver documentation in the BSP guide is up to date.

>
> Most BSPs (beagle, pc386, malta) using NS16550 use legacy-console.c,
> though - are NS16550 and Termios mutually exclusive for now?
>
> Or is it simply that none of the old NS16550 users have been ported
> over to using console-termios.c as well?
>
> What would be the expectation from a new BSP?

Definitely use rtems_termios_device_install() in new BSPs. There is a 
NS16550 driver variant for this new interface:

bsps/shared/dev/serial/ns16550-context.c

In <libchip/ns16550.h>:

extern const rtems_termios_device_handler ns16550_handler_interrupt;
extern const rtems_termios_device_handler ns16550_handler_polled;
extern const rtems_termios_device_handler ns16550_handler_task;

extern const rtems_termios_device_flow ns16550_flow_rtscts;
extern const rtems_termios_device_flow ns16550_flow_dtrcts;

void ns16550_polled_putchar(rtems_termios_device_context *base, char out);

int ns16550_polled_getchar(rtems_termios_device_context *base);

bool ns16550_probe(rtems_termios_device_context *base);

-- 
Sebastian Huber, embedded brains GmbH

Address : Dornierstr. 4, D-82178 Puchheim, Germany
Phone   : +49 89 189 47 41-16
Fax     : +49 89 189 47 41-09
E-Mail  : sebastian.huber at embedded-brains.de
PGP     : Public key available on request.

Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.



More information about the devel mailing list