From 38dff47b2df9ccebbef6c714ca44ed1d6e304bcd Mon Sep 17 00:00:00 2001 From: Joel Sherrill Date: Thu, 10 Aug 2000 16:20:42 +0000 Subject: 2000-08-10 Charles-Antoine Gauthier * console-generic/console-generic.c: Addition of support for shared printk and no termios. 2000-08-10 Charles-Antoine Gauthier * console-generic/console-generic.c(m8xx_uart_pollWrite): Flush actual buffer. --- c/src/lib/libcpu/powerpc/ChangeLog | 10 ++++++++++ .../mpc8xx/console-generic/console-generic.c | 23 ++++++++++------------ 2 files changed, 20 insertions(+), 13 deletions(-) (limited to 'c/src') diff --git a/c/src/lib/libcpu/powerpc/ChangeLog b/c/src/lib/libcpu/powerpc/ChangeLog index 101734ce64..87cf2b0e4b 100644 --- a/c/src/lib/libcpu/powerpc/ChangeLog +++ b/c/src/lib/libcpu/powerpc/ChangeLog @@ -1,3 +1,13 @@ +2000-08-10 Charles-Antoine Gauthier + + * console-generic/console-generic.c: Addition of support for shared + printk and no termios. + +2000-08-10 Charles-Antoine Gauthier + + * console-generic/console-generic.c(m8xx_uart_pollWrite): + Flush actual buffer. + 2000-08-10 Joel Sherrill * ChangeLog: New file. diff --git a/c/src/lib/libcpu/powerpc/mpc8xx/console-generic/console-generic.c b/c/src/lib/libcpu/powerpc/mpc8xx/console-generic/console-generic.c index 3349c86dd1..7d95ac798c 100644 --- a/c/src/lib/libcpu/powerpc/mpc8xx/console-generic/console-generic.c +++ b/c/src/lib/libcpu/powerpc/mpc8xx/console-generic/console-generic.c @@ -59,7 +59,7 @@ extern rtems_cpu_table Cpu_table; #ifdef EPPCBUG_SMC1 extern unsigned32 simask_copy; -#endif /* EPPCBUG_SMC1 */ +#endif /* * Interrupt-driven input buffer @@ -703,7 +703,7 @@ m8xx_uart_scc_initialize (int minor) sccparms->rfcr = M8xx_RFCR_MOT | M8xx_RFCR_DMA_SPACE(0); sccparms->tfcr = M8xx_TFCR_MOT | M8xx_TFCR_DMA_SPACE(0); -#ifdef UARTS_USE_INTERRUPTS +#if UARTS_IO_MODE == 1 sccparms->mrblr = RXBUFSIZE; /* Maximum Rx buffer size */ #else sccparms->mrblr = 1; /* Maximum Rx buffer size */ @@ -774,7 +774,7 @@ m8xx_uart_scc_initialize (int minor) break; #endif } -#ifdef UARTS_USE_INTERRUPTS +#if UARTS_IO_MODE == 1 switch (minor) { case SCC2_MINOR: rtems_interrupt_catch (m8xx_scc2_interrupt_handler, @@ -805,7 +805,7 @@ m8xx_uart_scc_initialize (int minor) break; #endif /* mpc860 */ } -#endif /* UARTS_USE_INTERRUPTS */ +#endif /* UARTS_IO_MODE */ } @@ -874,7 +874,7 @@ m8xx_uart_smc_initialize (int minor) smcparms->tbase = (char *)TxBd[minor] - (char *)&m8xx; smcparms->rfcr = M8xx_RFCR_MOT | M8xx_RFCR_DMA_SPACE(0); smcparms->tfcr = M8xx_TFCR_MOT | M8xx_TFCR_DMA_SPACE(0); -#ifdef UARTS_USE_INTERRUPTS +#if UARTS_IO_MODE == 1 smcparms->mrblr = RXBUFSIZE; /* Maximum Rx buffer size */ #else smcparms->mrblr = 1; /* Maximum Rx buffer size */ @@ -923,7 +923,7 @@ m8xx_uart_smc_initialize (int minor) * Enable receiver and transmitter */ smcregs->smcmr |= M8xx_SMCMR_TEN | M8xx_SMCMR_REN; -#ifdef UARTS_USE_INTERRUPTS +#if UARTS_IO_MODE == 1 switch (minor) { case SMC1_MINOR: rtems_interrupt_catch (m8xx_smc1_interrupt_handler, @@ -967,10 +967,10 @@ m8xx_uart_interrupts_initialize(void) #else m8xx.cicr = 0x00043F80; /* SCaP=SCC1, SCbP=SCC2, IRL=1, HP=PC15, IEN=1 */ #endif + m8xx.simask |= M8xx_SIMASK_LVM1; /* Enable level interrupts */ #ifdef EPPCBUG_SMC1 - simask_copy = m8xx.simask | M8xx_SIMASK_LVM1; -#endif /* EPPCBUG_SMC1 */ - m8xx.simask |= M8xx_SIMASK_LVM1; /* Enable level interrupts */ + simask_copy = m8xx.simask; +#endif } @@ -1023,10 +1023,7 @@ m8xx_uart_pollWrite( while (TxBd[minor]->status & M8xx_BD_READY) continue; txBuf[minor] = *buf++; - rtems_cache_flush_multiple_data_lines( - (const void *) TxBd[minor]->buffer, - TxBd[minor]->length - ); + rtems_cache_flush_multiple_data_lines( &txBuf[minor], 1 ); TxBd[minor]->buffer = &txBuf[minor]; TxBd[minor]->length = 1; TxBd[minor]->status = M8xx_BD_READY | M8xx_BD_WRAP; -- cgit v1.2.3