[rtems commit] bsps/mpc55xx: Remove unused files

Sebastian Huber sebh at rtems.org
Thu Mar 22 07:42:39 UTC 2018


Module:    rtems
Branch:    master
Commit:    3f3f246a24cc165df555b4c6e5676e8c0aa128ba
Changeset: http://git.rtems.org/rtems/commit/?id=3f3f246a24cc165df555b4c6e5676e8c0aa128ba

Author:    Sebastian Huber <sebastian.huber at embedded-brains.de>
Date:      Thu Mar 22 06:19:16 2018 +0100

bsps/mpc55xx: Remove unused files

This patch is a part of the BSP source reorganization.

Update #3285.

---

 c/src/lib/libcpu/powerpc/mpc55xx/esci/esci.c    | 676 ------------------------
 c/src/lib/libcpu/powerpc/mpc55xx/include/esci.h |  57 --
 2 files changed, 733 deletions(-)

diff --git a/c/src/lib/libcpu/powerpc/mpc55xx/esci/esci.c b/c/src/lib/libcpu/powerpc/mpc55xx/esci/esci.c
deleted file mode 100644
index 63791b8..0000000
--- a/c/src/lib/libcpu/powerpc/mpc55xx/esci/esci.c
+++ /dev/null
@@ -1,676 +0,0 @@
-/**
- * @file
- *
- * @ingroup mpc55xx_esci
- *
- * @brief Source file for the Enhanced Serial Communication Interface (eSCI).
- */
-
-/*
- * Copyright (c) 2008-2011 embedded brains GmbH.  All rights reserved.
- *
- *  embedded brains GmbH
- *  Obere Lagerstr. 30
- *  82178 Puchheim
- *  Germany
- *  <rtems at embedded-brains.de>
- *
- * The license and distribution terms for this file may be
- * found in the file LICENSE in this distribution or at
- * http://www.rtems.org/license/LICENSE.
- */
-
-/* Include order is important */
-#include <mpc55xx/regs.h>
-#include <mpc55xx/esci.h>
-#include <bsp/irq.h>
-
-#include <assert.h>
-#include <unistd.h>
-#include <termios.h>
-
-#include <rtems.h>
-#include <rtems/libio.h>
-#include <rtems/console.h>
-#include <rtems/bspIo.h>
-
-#include <bspopts.h>
-
-/* Evil define conflicts */
-#define TERMIOS_CR1 CR1
-#undef CR1
-#define TERMIOS_CR2 CR2
-#undef CR2
-
-#define MPC55XX_ESCI_IRQ_PRIORITY MPC55XX_INTC_DEFAULT_PRIORITY
-
-#define MPC55XX_ESCI_IS_MINOR_INVALD(minor) ((minor) < 0 || (minor) >= MPC55XX_ESCI_NUMBER)
-
-/**
- * @brief eSCI driver table.
- */
-mpc55xx_esci_driver_entry mpc55xx_esci_driver_table [MPC55XX_ESCI_NUMBER] = { {
-		.regs = &ESCI_A,
-		.device_name = "/dev/ttyS0",
-		.use_termios = 1,
-		.use_interrupts = MPC55XX_ESCI_USE_INTERRUPTS,
-		.tty = NULL,
-		.irq_number = MPC55XX_IRQ_ESCI(0)
-	}, {
-		.regs = &ESCI_B,
-		.device_name = "/dev/ttyS1",
-		.use_termios = 1,
-		.use_interrupts = MPC55XX_ESCI_USE_INTERRUPTS,
-		.tty = NULL,
-		.irq_number = MPC55XX_IRQ_ESCI(1)
-	}
-};
-
-/**
- * @brief Default termios configuration.
- */
-static const struct termios mpc55xx_esci_termios_default = {
-	.c_cflag = CS8 | CREAD | CLOCAL | B115200
-};
-
-/**
- * @name Low-Level
- * @{
- */
-
-/**
- * @brief Reads one character from the receive register.
- *
- * @note Waits for the receive data register full flag.
- */
-static inline uint8_t mpc55xx_esci_read_char( mpc55xx_esci_driver_entry *e)
-{
-	volatile union ESCI_SR_tag *status = &e->regs->SR;
-	volatile union ESCI_DR_tag *data = &e->regs->DR;
-	union ESCI_SR_tag sr = MPC55XX_ZERO_FLAGS;
-
-	while (status->B.RDRF == 0) {
-		/* Wait */
-	}
-
-	/* Clear flag */
-	sr.B.RDRF = 1;
-	status->R = sr.R;
-
-	/* Read */
-	return data->B.D;
-}
-
-static inline void mpc55xx_esci_write_char(mpc55xx_esci_driver_entry *e, char c)
-{
-	static const union ESCI_SR_tag clear_tdre = { .B = { .TDRE = 1 } };
-	volatile struct ESCI_tag *esci = e->regs;
-	rtems_interrupt_level level;
-	bool done = false;
-
-	rtems_interrupt_disable(level);
-	if (e->transmit_nest_level == 0) {
-		union ESCI_CR1_tag cr1 = { .R = esci->CR1.R };
-
-		if (cr1.B.TIE != 0) {
-			cr1.B.TIE = 0;
-			e->transmit_nest_level = 1;
-			esci->CR1.R = cr1.R;
-		}
-	} else {
-		++e->transmit_nest_level;
-	}
-	rtems_interrupt_enable(level);
-
-	while (!done) {
-		rtems_interrupt_disable(level);
-		bool tx = e->transmit_in_progress;
-		if (!tx || (tx && esci->SR.B.TDRE)) {
-			esci->SR.R = clear_tdre.R;
-			esci->DR.B.D = c;
-			e->transmit_in_progress = true;
-			done = true;
-		}
-		rtems_interrupt_enable(level);
-	}
-
-	rtems_interrupt_disable(level);
-	if (e->transmit_nest_level > 0) {
-		--e->transmit_nest_level;
-
-		if (e->transmit_nest_level == 0) {
-			union ESCI_CR1_tag cr1 = { .R = esci->CR1.R };
-
-			cr1.B.TIE = 1;
-			esci->CR1.R = cr1.R;
-		}
-	}
-	rtems_interrupt_enable(level);
-}
-
-static inline void mpc55xx_esci_interrupts_enable( mpc55xx_esci_driver_entry *e)
-{
-	union ESCI_CR1_tag cr1 = MPC55XX_ZERO_FLAGS;
-	rtems_interrupt_level level;
-
-	rtems_interrupt_disable( level);
-	cr1.R = e->regs->CR1.R;
-	cr1.B.RIE = 1;
-	cr1.B.TIE = 1;
-	e->regs->CR1.R = cr1.R;
-	rtems_interrupt_enable( level);
-}
-
-static inline void mpc55xx_esci_interrupts_disable( mpc55xx_esci_driver_entry *e)
-{
-	union ESCI_CR1_tag cr1 = MPC55XX_ZERO_FLAGS;
-	rtems_interrupt_level level;
-
-	rtems_interrupt_disable( level);
-	cr1.R = e->regs->CR1.R;
-	cr1.B.RIE = 0;
-	cr1.B.TIE = 0;
-	e->regs->CR1.R = cr1.R;
-	rtems_interrupt_enable( level);
-}
-
-/** @} */
-
-/**
- * @name Termios Support
- * @{
- */
-
-/**
- * @brief Opens port @a minor.
- *
- * @return Status code.
- */
-static int mpc55xx_esci_termios_first_open( int major, int minor, void *arg)
-{
-	int rv = 0;
-	mpc55xx_esci_driver_entry *e = &mpc55xx_esci_driver_table [minor];
-	struct rtems_termios_tty *tty = ((rtems_libio_open_close_args_t *) arg)->iop->data1;
-
-	/* Check minor number */
-	if (MPC55XX_ESCI_IS_MINOR_INVALD( minor)) {
-		return RTEMS_INVALID_ID;
-	}
-
-	/* Connect TTY */
-	e->tty = tty;
-
-	/* Enable interrupts */
-	if (e->use_interrupts) {
-		mpc55xx_esci_interrupts_enable( e);
-	}
-
-	rv = rtems_termios_set_initial_baud( e->tty, 115200);
-	assert(rv == 0);
-
-	return 0;
-}
-
-/**
- * @brief Closes port @a minor.
- *
- * @return Status code.
- */
-static int mpc55xx_esci_termios_last_close( int major, int minor, void* arg)
-{
-	mpc55xx_esci_driver_entry *e = &mpc55xx_esci_driver_table [minor];
-
-	/* Check minor number */
-	if (MPC55XX_ESCI_IS_MINOR_INVALD( minor)) {
-		return RTEMS_INVALID_ID;
-	}
-
-	/* Disable interrupts */
-	mpc55xx_esci_interrupts_disable( e);
-
-	/* Disconnect TTY */
-	e->tty = NULL;
-
-	return RTEMS_SUCCESSFUL;
-}
-
-/**
- * @brief Reads one character from port @a minor.
- *
- * @return Returns the character or -1 on error.
- */
-static int mpc55xx_esci_termios_poll_read( int minor)
-{
-	mpc55xx_esci_driver_entry *e = &mpc55xx_esci_driver_table [minor];
-	volatile union ESCI_SR_tag *status = &e->regs->SR;
-	volatile union ESCI_DR_tag *data = &e->regs->DR;
-	union ESCI_SR_tag sr = MPC55XX_ZERO_FLAGS;
-
-	if (status->B.RDRF == 0) {
-		return -1;
-	}
-
-	/* Clear flag */
-	sr.B.RDRF = 1;
-	status->R = sr.R;
-
-	/* Read */
-	return data->B.D;
-}
-
-/**
- * @brief Writes @a n characters from @a out to port @a minor.
- *
- * @return Returns number of chars sent on success or -1 otherwise.
- */
-static int mpc55xx_esci_termios_poll_write( int minor, const char *out,
-					    size_t n)
-{
-	mpc55xx_esci_driver_entry *e = &mpc55xx_esci_driver_table [minor];
-	size_t i = 0;
-
-	/* Check minor number */
-	if (MPC55XX_ESCI_IS_MINOR_INVALD( minor)) {
-		return -1;
-	}
-
-	/* Write */
-	for (i = 0; i < n; ++i) {
-		mpc55xx_esci_write_char( e, out [i]);
-	}
-
-	return n;
-}
-
-/**
- * @brief Writes one character from @a out to port @a minor.
- *
- * @return (always 0).
- *
- * @note The buffer @a out has to provide at least one character.
- * This function assumes that the transmit data register is empty.
- */
-static int mpc55xx_esci_termios_write( int minor, const char *out, size_t n)
-{
-	if (n > 0) {
-		mpc55xx_esci_driver_entry *e = &mpc55xx_esci_driver_table [minor];
-
-		e->regs->DR.B.D = out [0];
-		e->transmit_in_progress = true;
-	}
-
-	return 0;
-}
-
-/* FIXME, TODO */
-extern uint32_t bsp_clock_speed;
-
-/**
- * @brief Sets attributes of port @a minor according to termios attributes @a t.
- *
- * @return Status code.
- */
-static int mpc55xx_esci_termios_set_attributes( int minor, const struct termios *t)
-{
-	mpc55xx_esci_driver_entry *e = &mpc55xx_esci_driver_table [minor];
-	volatile struct ESCI_tag *regs = e->regs;
-	union ESCI_CR1_tag cr1 = MPC55XX_ZERO_FLAGS;
-	union ESCI_CR2_tag cr2 = MPC55XX_ZERO_FLAGS;
-	unsigned br = 0;
-
-	/* Check minor number */
-	if (MPC55XX_ESCI_IS_MINOR_INVALD( minor)) {
-		return RTEMS_INVALID_ID;
-	}
-
-	/* Enable module */
-	cr2.B.MDIS = 0;
-
-	/* Interrupts */
-	if (e->use_interrupts && e->tty != NULL) {
-		cr1.B.RIE = 1;
-		cr1.B.TIE = 1;
-	} else {
-		cr1.B.RIE = 0;
-		cr1.B.TIE = 0;
-	}
-	cr1.B.TCIE = 0;
-	cr1.B.ILIE = 0;
-	cr2.B.IEBERR = 0;
-	cr2.B.ORIE = 0;
-	cr2.B.NFIE = 0;
-	cr2.B.FEIE = 0;
-	cr2.B.PFIE = 0;
-
-	/* Disable receiver wake-up standby */
-	cr1.B.RWU = 0;
-
-	/* Disable DMA channels */
-	cr2.B.RXDMA = 0;
-	cr2.B.TXDMA = 0;
-
-	/* Idle line type */
-	cr1.B.ILT = 0;
-
-	/* Disable loops */
-	cr1.B.LOOPS = 0;
-
-	/* Enable or disable receiver */
-	cr1.B.RE = (t->c_cflag & CREAD) ? 1 : 0;
-
-	/* Enable transmitter */
-	cr1.B.TE = 1;
-
-	/* Baud rate */
-  switch (t->c_ospeed) {
-		case B50: br = 50; break;
-		case B75: br = 75; break;
-		case B110: br = 110; break;
-		case B134: br = 134; break;
-		case B150: br = 150; break;
-		case B200: br = 200; break;
-		case B300: br = 300; break;
-		case B600: br = 600; break;
-		case B1200: br = 1200; break;
-		case B1800: br = 1800; break;
-		case B2400: br = 2400; break;
-		case B4800: br = 4800; break;
-		case B9600: br = 9600; break;
-		case B19200: br = 19200; break;
-		case B38400: br = 38400; break;
-		case B57600: br = 57600; break;
-		case B115200: br = 115200; break;
-		case B230400: br = 230400; break;
-		case B460800: br = 460800; break;
-		default: br = 0; break;
-	}
-	if (br > 0) {
-		br = bsp_clock_speed / (16 * br);
-		br = (br > 8191) ? 8191 : br;
-	} else {
-		br = 0;
-	}
-	cr1.B.SBR = br;
-
-	/* Number of data bits */
-	if ((t->c_cflag & CSIZE) != CS8) {
-		return RTEMS_IO_ERROR;
-	}
-	cr1.B.M = 0;
-
-	/* Parity */
-	cr1.B.PE = (t->c_cflag & PARENB) ? 1 : 0;
-	cr1.B.PT = (t->c_cflag & PARODD) ? 1 : 0;
-
-	/* Stop bits */
-	if ( t->c_cflag & CSTOPB ) {
-		/* Two stop bits */
-		return RTEMS_IO_ERROR;
-	}
-
-	/* Disable LIN */
-	regs->LCR.R = 0;
-
-	/* Set control registers */
-	regs->CR2.R = cr2.R;
-	regs->CR1.R = cr1.R;
-
-	return RTEMS_SUCCESSFUL;
-}
-
-/**
- * @brief Interrupt handler.
- */
-static void mpc55xx_esci_termios_interrupt_handler( void *arg)
-{
-	mpc55xx_esci_driver_entry *e = (mpc55xx_esci_driver_entry *) arg;
-	volatile union ESCI_SR_tag *status = &e->regs->SR;
-	volatile union ESCI_DR_tag *data = &e->regs->DR;
-	union ESCI_SR_tag sr = MPC55XX_ZERO_FLAGS;
-	union ESCI_SR_tag active = MPC55XX_ZERO_FLAGS;
-	rtems_interrupt_level level;
-
-	/* Status */
-	sr.R = status->R;
-
-	/* Receive data register full? */
-	if (sr.B.RDRF != 0) {
-		active.B.RDRF = 1;
-	}
-
-	/* Transmit data register empty? */
-	if (sr.B.TDRE != 0) {
-		active.B.TDRE = 1;
-	}
-
-	/* Clear flags */
-	rtems_interrupt_disable(level);
-	status->R = active.R;
-	e->transmit_in_progress = false;
-	rtems_interrupt_enable(level);
-
-	/* Enqueue */
-	if (active.B.RDRF != 0) {
-		char c = data->B.D;
-		rtems_termios_enqueue_raw_characters( e->tty, &c, 1);
-	}
-
-	/* Dequeue */
-	if (active.B.TDRE != 0) {
-		rtems_termios_dequeue_characters( e->tty, 1);
-	}
-}
-
-/** @} */
-
-/**
- * @brief Termios callbacks with interrupt support.
- */
-static const rtems_termios_callbacks mpc55xx_esci_termios_callbacks = {
-	.firstOpen = mpc55xx_esci_termios_first_open,
-	.lastClose = mpc55xx_esci_termios_last_close,
-	.pollRead = NULL,
-	.write = mpc55xx_esci_termios_write,
-	.setAttributes = mpc55xx_esci_termios_set_attributes,
-	.stopRemoteTx = NULL,
-	.startRemoteTx = NULL,
-	.outputUsesInterrupts = TERMIOS_IRQ_DRIVEN
-};
-
-/**
- * @brief Termios callbacks with polling functions (no interrupts).
- */
-static const rtems_termios_callbacks mpc55xx_esci_termios_callbacks_polled = {
-	.firstOpen = mpc55xx_esci_termios_first_open,
-	.lastClose = mpc55xx_esci_termios_last_close,
-	.pollRead = mpc55xx_esci_termios_poll_read,
-	.write = mpc55xx_esci_termios_poll_write,
-	.setAttributes = mpc55xx_esci_termios_set_attributes,
-	.stopRemoteTx = NULL,
-	.startRemoteTx = NULL,
-	.outputUsesInterrupts = TERMIOS_POLLED
-};
-
-/**
- * @name Console Driver
- * @{
- */
-
-rtems_device_driver console_initialize( rtems_device_major_number major, rtems_device_minor_number minor, void *arg)
-{
-	rtems_status_code sc = RTEMS_SUCCESSFUL;
-	int termios_do_init = 1;
-	rtems_device_minor_number i = 0;
-	mpc55xx_esci_driver_entry *e = NULL;
-
-	for (i = 0; i < MPC55XX_ESCI_NUMBER; ++i) {
-		e = &mpc55xx_esci_driver_table [i];
-		sc = rtems_io_register_name ( e->device_name, major, i);
-		if (sc != RTEMS_SUCCESSFUL) {
-			/* FIXME */
-			rtems_fatal_error_occurred(0xdeadbeef);
-		}
-		if (i == MPC55XX_ESCI_CONSOLE_MINOR) {
-			sc = rtems_io_register_name( CONSOLE_DEVICE_NAME, major, i);
-			if (sc != RTEMS_SUCCESSFUL) {
-				/* FIXME */
-				rtems_fatal_error_occurred(0xdeadbeef);
-			}
-		}
-		if (e->use_termios && termios_do_init) {
-			if (termios_do_init) {
-				termios_do_init = 0;
-				rtems_termios_initialize();
-			}
-			if (e->use_interrupts) {
-				sc = mpc55xx_interrupt_handler_install(
-					e->irq_number,
-					"eSCI",
-					RTEMS_INTERRUPT_UNIQUE,
-					MPC55XX_ESCI_IRQ_PRIORITY,
-					mpc55xx_esci_termios_interrupt_handler,
-					e
-				);
-				if (sc != RTEMS_SUCCESSFUL) {
-					/* FIXME */
-					rtems_fatal_error_occurred(0xdeadbeef);
-				}
-			}
-		}
-		mpc55xx_esci_termios_set_attributes( (int) i, &mpc55xx_esci_termios_default);
-	}
-
-	return RTEMS_SUCCESSFUL;
-}
-
-rtems_device_driver console_open( rtems_device_major_number major, rtems_device_minor_number minor, void *arg)
-{
-	rtems_status_code sc = RTEMS_SUCCESSFUL;
-	mpc55xx_esci_driver_entry *e = &mpc55xx_esci_driver_table [minor];
-
-	/* Check minor number */
-	if (MPC55XX_ESCI_IS_MINOR_INVALD( minor)) {
-		return RTEMS_INVALID_ID;
-	}
-
-	if (e->use_termios) {
-		if (e->use_interrupts) {
-			sc =  rtems_termios_open( major, minor, arg, &mpc55xx_esci_termios_callbacks);
-		} else {
-			sc =  rtems_termios_open( major, minor, arg, &mpc55xx_esci_termios_callbacks_polled);
-		}
-	}
-
-	return sc;
-}
-
-rtems_device_driver console_close( rtems_device_major_number major, rtems_device_minor_number minor, void *arg)
-{
-	mpc55xx_esci_driver_entry *e = &mpc55xx_esci_driver_table [minor];
-
-	/* Check minor number */
-	if (MPC55XX_ESCI_IS_MINOR_INVALD( minor)) {
-		return RTEMS_INVALID_ID;
-	}
-
-	if (e->use_termios) {
-		return rtems_termios_close( arg);
-	}
-
-	return RTEMS_SUCCESSFUL;
-}
-
-rtems_device_driver console_read( rtems_device_major_number major, rtems_device_minor_number minor, void *arg)
-{
-	mpc55xx_esci_driver_entry *e = &mpc55xx_esci_driver_table [minor];
-
-	/* Check minor number */
-	if (MPC55XX_ESCI_IS_MINOR_INVALD( minor)) {
-		return RTEMS_INVALID_ID;
-	}
-
-	if (e->use_termios) {
-		return rtems_termios_read( arg);
-	} else {
-		rtems_libio_rw_args_t *rw = (rtems_libio_rw_args_t *) arg;
-		uint32_t i = 0;
-		while (i < rw->count) {
-			rw->buffer [i] = mpc55xx_esci_read_char( e);
-			++i;
-		}
-		rw->bytes_moved = i;
-	}
-
-	return RTEMS_SUCCESSFUL;
-}
-
-rtems_device_driver console_write( rtems_device_major_number major, rtems_device_minor_number minor, void *arg)
-{
-	mpc55xx_esci_driver_entry *e = &mpc55xx_esci_driver_table [minor];
-
-	/* Check minor number */
-	if (MPC55XX_ESCI_IS_MINOR_INVALD( minor)) {
-		return RTEMS_INVALID_ID;
-	}
-
-	if (e->use_termios) {
-		return rtems_termios_write( arg);
-	} else {
-		rtems_libio_rw_args_t *rw = (rtems_libio_rw_args_t *) arg;
-		uint32_t i = 0;
-		while (i < rw->count) {
-			if (rw->buffer [i] == '\n') {
-				mpc55xx_esci_write_char( e, '\r');
-			}
-			mpc55xx_esci_write_char( e, rw->buffer [i]);
-			++i;
-		}
-		rw->bytes_moved = i;
-	}
-
-	return RTEMS_SUCCESSFUL;
-}
-
-rtems_device_driver console_control( rtems_device_major_number major, rtems_device_minor_number minor, void *arg)
-{
-	mpc55xx_esci_driver_entry *e = &mpc55xx_esci_driver_table [minor];
-
-	/* Check minor number */
-	if (MPC55XX_ESCI_IS_MINOR_INVALD( minor)) {
-		return RTEMS_INVALID_ID;
-	}
-
-	if (e->use_termios) {
-		return rtems_termios_ioctl( arg);
-	}
-
-	return RTEMS_NOT_DEFINED;
-}
-
-/** @} */
-
-/**
- * @name BSP Character Output
- * @{
- */
-
-static void mpc55xx_esci_output_char( char c)
-{
-	mpc55xx_esci_driver_entry *e = &mpc55xx_esci_driver_table [MPC55XX_ESCI_CONSOLE_MINOR];
-
-	mpc55xx_esci_interrupts_disable( e);
-	mpc55xx_esci_write_char( e, c);
-	mpc55xx_esci_interrupts_enable( e);
-}
-
-static void mpc55xx_esci_output_char_init( char c)
-{
-	mpc55xx_esci_termios_set_attributes( MPC55XX_ESCI_CONSOLE_MINOR, &mpc55xx_esci_termios_default);
-	mpc55xx_esci_output_char( c);
-	BSP_output_char = mpc55xx_esci_output_char;
-}
-
-/** @} */
-
-BSP_output_char_function_type BSP_output_char = mpc55xx_esci_output_char_init;
-BSP_polling_getchar_function_type BSP_poll_char = NULL;
diff --git a/c/src/lib/libcpu/powerpc/mpc55xx/include/esci.h b/c/src/lib/libcpu/powerpc/mpc55xx/include/esci.h
deleted file mode 100644
index 3545296..0000000
--- a/c/src/lib/libcpu/powerpc/mpc55xx/include/esci.h
+++ /dev/null
@@ -1,57 +0,0 @@
-/**
- * @file
- *
- * @ingroup mpc55xx_esci
- *
- * @brief Header file for the Enhanced Serial Communication Interface (eSCI).
- */
-
-/*
- * Copyright (c) 2008
- * Embedded Brains GmbH
- * Obere Lagerstr. 30
- * D-82178 Puchheim
- * Germany
- * rtems at embedded-brains.de
- *
- * The license and distribution terms for this file may be
- * found in the file LICENSE in this distribution or at
- * http://www.rtems.org/license/LICENSE.
- */
-
-/**
- * @defgroup mpc55xx_esci Enhanced Serial Communication Interface (eSCI).
- *
- * @ingroup mpc55xx
- */
-
-#ifndef LIBCPU_POWERPC_MPC55XX_ESCI_H
-#define LIBCPU_POWERPC_MPC55XX_ESCI_H
-
-#include <rtems.h>
-#include <rtems/termiostypes.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif /* __cplusplus */
-
-#define MPC55XX_ESCI_NUMBER 2
-
-typedef struct {
-	volatile struct ESCI_tag *regs;
-	struct rtems_termios_tty *tty;
-	const char *device_name;
-	rtems_vector_number irq_number;
-	int transmit_nest_level;
-	bool transmit_in_progress;
-	bool use_termios;
-	bool use_interrupts;
-} mpc55xx_esci_driver_entry;
-
-extern mpc55xx_esci_driver_entry mpc55xx_esci_driver_table [ /* MPC55XX_ESCI_NUMBER */ ];
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#endif /* LIBCPU_POWERPC_MPC55XX_ESCI_H */



More information about the vc mailing list