summaryrefslogtreecommitdiffstats
path: root/c/src
diff options
context:
space:
mode:
authorThomas Doerfler <Thomas.Doerfler@embedded-brains.de>2009-12-17 08:42:17 +0000
committerThomas Doerfler <Thomas.Doerfler@embedded-brains.de>2009-12-17 08:42:17 +0000
commit39a9f8ea1294518df837c2f6a4586c1ca61945e2 (patch)
treebbcca399b1539adf14930593f22a73cd1aea01a9 /c/src
parentadaption of calling convention to console my_driver_write function (diff)
downloadrtems-39a9f8ea1294518df837c2f6a4586c1ca61945e2.tar.bz2
adapted to new prototype for *_write function
Diffstat (limited to 'c/src')
-rw-r--r--c/src/lib/libbsp/m68k/av5282/ChangeLog5
-rw-r--r--c/src/lib/libbsp/m68k/av5282/console/console.c15
-rw-r--r--c/src/lib/libbsp/m68k/gen68340/ChangeLog6
-rw-r--r--c/src/lib/libbsp/m68k/gen68340/console/console.c8
-rw-r--r--c/src/lib/libbsp/m68k/gen68340/console/m340uart.c5
-rw-r--r--c/src/lib/libbsp/m68k/gen68340/include/m340uart.h2
-rw-r--r--c/src/lib/libbsp/m68k/gen68340/timer/timer.c2
-rw-r--r--c/src/lib/libbsp/m68k/gen68360/ChangeLog9
-rw-r--r--c/src/lib/libbsp/m68k/gen68360/console/console.c11
-rw-r--r--c/src/lib/libbsp/m68k/genmcf548x/ChangeLog5
-rw-r--r--c/src/lib/libbsp/m68k/genmcf548x/console/console.c13
-rw-r--r--c/src/lib/libbsp/m68k/idp/ChangeLog5
-rw-r--r--c/src/lib/libbsp/m68k/idp/console/console.c2
-rw-r--r--c/src/lib/libbsp/m68k/mcf5206elite/ChangeLog5
-rw-r--r--c/src/lib/libbsp/m68k/mcf5206elite/console/console.c8
-rw-r--r--c/src/lib/libbsp/m68k/mcf52235/ChangeLog5
-rw-r--r--c/src/lib/libbsp/m68k/mcf52235/console/console.c11
-rw-r--r--c/src/lib/libbsp/m68k/mcf5235/ChangeLog5
-rw-r--r--c/src/lib/libbsp/m68k/mcf5235/console/console.c15
-rw-r--r--c/src/lib/libbsp/m68k/mcf5329/ChangeLog5
-rw-r--r--c/src/lib/libbsp/m68k/mcf5329/console/console.c11
-rw-r--r--c/src/lib/libbsp/m68k/mrm332/ChangeLog5
-rw-r--r--c/src/lib/libbsp/m68k/mrm332/console/sci.c34
-rw-r--r--c/src/lib/libbsp/m68k/mvme162/console/console.c2
-rw-r--r--c/src/lib/libbsp/m68k/mvme167/ChangeLog5
-rw-r--r--c/src/lib/libbsp/m68k/mvme167/console/console.c16
-rw-r--r--c/src/lib/libbsp/m68k/uC5282/ChangeLog5
-rw-r--r--c/src/lib/libbsp/m68k/uC5282/console/console.c24
-rw-r--r--c/src/lib/libbsp/powerpc/ChangeLog5
-rw-r--r--c/src/lib/libbsp/powerpc/ep1a/ChangeLog5
-rw-r--r--c/src/lib/libbsp/powerpc/ep1a/console/mc68360_scc.c6
-rw-r--r--c/src/lib/libbsp/powerpc/gen5200/ChangeLog5
-rw-r--r--c/src/lib/libbsp/powerpc/gen5200/console/console.c14
-rw-r--r--c/src/lib/libbsp/powerpc/haleakala/ChangeLog4
-rw-r--r--c/src/lib/libbsp/powerpc/haleakala/startup/bspstart.c4
-rw-r--r--c/src/lib/libbsp/powerpc/mbx8xx/ChangeLog5
-rw-r--r--c/src/lib/libbsp/powerpc/mbx8xx/console/console.c14
-rw-r--r--c/src/lib/libbsp/powerpc/score603e/ChangeLog5
-rw-r--r--c/src/lib/libbsp/powerpc/score603e/console/console.c4
-rw-r--r--c/src/lib/libbsp/powerpc/shared/console/uart.c8
-rw-r--r--c/src/lib/libbsp/powerpc/shared/console/uart.h40
-rw-r--r--c/src/lib/libbsp/powerpc/tqm8xx/ChangeLog5
-rw-r--r--c/src/lib/libbsp/powerpc/tqm8xx/console/console.c11
-rw-r--r--c/src/lib/libcpu/m68k/ChangeLog7
-rw-r--r--c/src/lib/libcpu/m68k/mcf5206/console/mcfuart.c12
-rw-r--r--c/src/lib/libcpu/m68k/mcf5206/include/mcfuart.h8
-rw-r--r--c/src/lib/libcpu/powerpc/ChangeLog22
-rw-r--r--c/src/lib/libcpu/powerpc/mpc5xx/console-generic/console-generic.c14
-rw-r--r--c/src/lib/libcpu/powerpc/mpc5xx/include/console.h4
-rw-r--r--c/src/lib/libcpu/powerpc/mpc5xx/irq/irq.c2
-rw-r--r--c/src/lib/libcpu/powerpc/mpc8260/console-generic/console-generic.c11
-rw-r--r--c/src/lib/libcpu/powerpc/mpc8260/include/console.h4
-rw-r--r--c/src/lib/libcpu/powerpc/mpc8xx/console-generic/console-generic.c10
-rw-r--r--c/src/lib/libcpu/powerpc/mpc8xx/include/console.h4
54 files changed, 298 insertions, 179 deletions
diff --git a/c/src/lib/libbsp/m68k/av5282/ChangeLog b/c/src/lib/libbsp/m68k/av5282/ChangeLog
index 624957a90a..2dae246e2d 100644
--- a/c/src/lib/libbsp/m68k/av5282/ChangeLog
+++ b/c/src/lib/libbsp/m68k/av5282/ChangeLog
@@ -1,3 +1,8 @@
+2009-12-16 Thomas Doerfler <Thomas.Doerfler@embedded-brains.de>
+
+ * console/console.c: adapted to new prototype for *_write
+ function
+
2009-10-21 Ralf Corsépius <ralf.corsepius@rtems.org>
* make/custom/av5282.cfg: Remove RTEMS_BSP_FAMILY.
diff --git a/c/src/lib/libbsp/m68k/av5282/console/console.c b/c/src/lib/libbsp/m68k/av5282/console/console.c
index 51cddbfea1..a82652fb2c 100644
--- a/c/src/lib/libbsp/m68k/av5282/console/console.c
+++ b/c/src/lib/libbsp/m68k/av5282/console/console.c
@@ -22,8 +22,8 @@
MCF5282_UART_USR_PE | \
MCF5282_UART_USR_OE )
-static int IntUartPollWrite(int minor, const char *buf, int len);
-static int IntUartInterruptWrite (int minor, const char *buf, int len);
+static ssize_t IntUartPollWrite(int minor, const char *buf, size_t len);
+static ssize_t IntUartInterruptWrite (int minor, const char *buf, size_t len);
static void
_BSP_null_char( char c )
@@ -390,8 +390,8 @@ IntUartInitialize(void)
to initiate a transmit sequence. Calling this routine enables Tx
interrupts.
***************************************************************************/
-static int
-IntUartInterruptWrite (int minor, const char *buf, int len)
+static ssize_t
+IntUartInterruptWrite (int minor, const char *buf, size_t len)
{
int level;
@@ -541,9 +541,10 @@ IntUartPollRead (int minor)
appropriate internal uart channel waiting till each one is sucessfully
transmitted.
***************************************************************************/
-static int
-IntUartPollWrite (int minor, const char *buf, int len)
+static ssize_t
+IntUartPollWrite (int minor, const char *buf, size_t len)
{
+ size_t retval = len;
/* loop over buffer */
while ( len-- )
{
@@ -553,7 +554,7 @@ IntUartPollWrite (int minor, const char *buf, int len)
/* transmit data byte */
MCF5282_UART_UTB(minor) = *buf++;
}
- return(0);
+ return retval;
}
/***************************************************************************
diff --git a/c/src/lib/libbsp/m68k/gen68340/ChangeLog b/c/src/lib/libbsp/m68k/gen68340/ChangeLog
index b917d9c05e..e3760dce25 100644
--- a/c/src/lib/libbsp/m68k/gen68340/ChangeLog
+++ b/c/src/lib/libbsp/m68k/gen68340/ChangeLog
@@ -1,3 +1,9 @@
+2009-12-16 Thomas Doerfler <Thomas.Doerfler@embedded-brains.de>
+
+ * console/console.c, console/m340uart.c, include/m340uart.h,
+ timer/timer.c:
+ adapted to new prototype for *_write function
+
2009-10-21 Ralf Corsépius <ralf.corsepius@rtems.org>
* make/custom/gen68340.cfg: Remove RTEMS_BSP_FAMILY.
diff --git a/c/src/lib/libbsp/m68k/gen68340/console/console.c b/c/src/lib/libbsp/m68k/gen68340/console/console.c
index daaa2833ea..bebf2951be 100644
--- a/c/src/lib/libbsp/m68k/gen68340/console/console.c
+++ b/c/src/lib/libbsp/m68k/gen68340/console/console.c
@@ -171,8 +171,8 @@ InterruptHandler (rtems_vector_number v)
may be called by either console_write
or rtems_termios_enqueue_raw_characters
*****************************************************/
-static int
-InterruptWrite (int minor, const char *buf, int len)
+static ssize_t
+InterruptWrite (int minor, const char *buf, size_t len)
{
if (minor==UART_CHANNEL_A) {
if (len>0) DUTBA=*buf;
@@ -296,8 +296,6 @@ dbugInitialise (void)
rtems_isr_entry old_handler;
rtems_status_code sc;
- extern void _Debug_ISR_Handler_Console(void);
-
sc = rtems_interrupt_catch (InterruptHandler,
CONSOLE_VECTOR,
&old_handler);
@@ -382,8 +380,6 @@ dbugInitialise (void)
rtems_isr_entry old_handler;
rtems_status_code sc;
- extern void _Debug_ISR_Handler_Console(void);
-
sc = rtems_interrupt_catch (InterruptHandler,
CONSOLE_VECTOR,
&old_handler);
diff --git a/c/src/lib/libbsp/m68k/gen68340/console/m340uart.c b/c/src/lib/libbsp/m68k/gen68340/console/m340uart.c
index 276b9e83ba..757caced5e 100644
--- a/c/src/lib/libbsp/m68k/gen68340/console/m340uart.c
+++ b/c/src/lib/libbsp/m68k/gen68340/console/m340uart.c
@@ -266,15 +266,16 @@ int dbugRead (int minor)
Output parameters: always successfull
Description: polled write
*****************************************************/
-int dbugWrite (int minor, const char *buf, int len)
+ssize_t dbugWrite (int minor, const char *buf, size_t len)
{
static char txBuf;
+ size_t retval = len;
while (len--) {
txBuf = *buf++;
dbug_out_char( minor, (int)txBuf );
}
- return 0;
+ return retval;
}
static void fmt_num( int minor, unsigned long, unsigned );
diff --git a/c/src/lib/libbsp/m68k/gen68340/include/m340uart.h b/c/src/lib/libbsp/m68k/gen68340/include/m340uart.h
index beade96da7..670e91fd11 100644
--- a/c/src/lib/libbsp/m68k/gen68340/include/m340uart.h
+++ b/c/src/lib/libbsp/m68k/gen68340/include/m340uart.h
@@ -81,7 +81,7 @@ Find_Right_m340_UART_Config(float ChannelA_ReceiverBaudRate, float ChannelA_Tran
extern rtems_isr InterruptHandler (rtems_vector_number v);
extern int dbugRead (int minor);
-extern int dbugWrite (int minor, const char *buf, int len);
+extern ssize_t dbugWrite (int minor, const char *buf, size_t len);
extern float m340_Baud_Rates_Table[16][2];
diff --git a/c/src/lib/libbsp/m68k/gen68340/timer/timer.c b/c/src/lib/libbsp/m68k/gen68340/timer/timer.c
index 3331385976..c14e85769a 100644
--- a/c/src/lib/libbsp/m68k/gen68340/timer/timer.c
+++ b/c/src/lib/libbsp/m68k/gen68340/timer/timer.c
@@ -188,8 +188,6 @@ void Fifo_Full_benchmark_timer_initialize (void)
rtems_isr_entry old_handler;
rtems_status_code sc;
- extern void _Debug_ISR_Handler_Console(void);
-
sc = rtems_interrupt_catch (InterruptHandler,
TIMER1_VECTOR,
&old_handler);
diff --git a/c/src/lib/libbsp/m68k/gen68360/ChangeLog b/c/src/lib/libbsp/m68k/gen68360/ChangeLog
index c735c9b8a2..2b2a510f7f 100644
--- a/c/src/lib/libbsp/m68k/gen68360/ChangeLog
+++ b/c/src/lib/libbsp/m68k/gen68360/ChangeLog
@@ -1,3 +1,8 @@
+2009-12-16 Thomas Doerfler <Thomas.Doerfler@embedded-brains.de>
+
+ * console/console.c: adapted to new prototype for *_write
+ function
+
2009-10-21 Ralf Corsépius <ralf.corsepius@rtems.org>
* make/custom/gen68360.cfg: Remove RTEMS_BSP_FAMILY.
@@ -44,8 +49,8 @@
2008-10-21 Thomas Doerfler <Thomas.Doerfler@embedded-brains.de>
- * spi/mc68360_spidrv.h:
- removed orphaned file
+ * spi/mc68360_spidrv.h:
+ removed orphaned file
2008-10-02 Ralf Corsépius <ralf.corsepius@rtems.org>
diff --git a/c/src/lib/libbsp/m68k/gen68360/console/console.c b/c/src/lib/libbsp/m68k/gen68360/console/console.c
index 19bbf91c90..38e4f243e5 100644
--- a/c/src/lib/libbsp/m68k/gen68360/console/console.c
+++ b/c/src/lib/libbsp/m68k/gen68360/console/console.c
@@ -231,8 +231,8 @@ smc1PollRead (int minor)
* Polling devices:
* Transmit all characters.
*/
-static int
-smc1InterruptWrite (int minor, const char *buf, int len)
+static ssize_t
+smc1InterruptWrite (int minor, const char *buf, size_t len)
{
smcTxBd->buffer = (char *)buf;
smcTxBd->length = len;
@@ -240,9 +240,10 @@ smc1InterruptWrite (int minor, const char *buf, int len)
return 0;
}
-static int
-smc1PollWrite (int minor, const char *buf, int len)
+static ssize_t
+smc1PollWrite (int minor, const char *buf, size_t len)
{
+ size_t retval = len;
while (len--) {
static char txBuf;
while (smcTxBd->status & M360_BD_READY)
@@ -252,7 +253,7 @@ smc1PollWrite (int minor, const char *buf, int len)
smcTxBd->length = 1;
smcTxBd->status = M360_BD_READY | M360_BD_WRAP;
}
- return 0;
+ return retval;
}
/*
diff --git a/c/src/lib/libbsp/m68k/genmcf548x/ChangeLog b/c/src/lib/libbsp/m68k/genmcf548x/ChangeLog
index 680bc3ca04..87d4ce7c17 100644
--- a/c/src/lib/libbsp/m68k/genmcf548x/ChangeLog
+++ b/c/src/lib/libbsp/m68k/genmcf548x/ChangeLog
@@ -1,3 +1,8 @@
+2009-12-16 Thomas Doerfler <Thomas.Doerfler@embedded-brains.de>
+
+ * console/console.c: adapted to new prototype for *_write
+ function
+
2009-12-14 Thomas Doerfler <Thomas.Doerfler@embedded-brains.de>
* console/console.c, include/bsp.h, network/network.c: get vital
diff --git a/c/src/lib/libbsp/m68k/genmcf548x/console/console.c b/c/src/lib/libbsp/m68k/genmcf548x/console/console.c
index 1cb1a57f9f..616892bc74 100644
--- a/c/src/lib/libbsp/m68k/genmcf548x/console/console.c
+++ b/c/src/lib/libbsp/m68k/genmcf548x/console/console.c
@@ -68,7 +68,7 @@
MCF548X_PSC_SR_PE_CRCERR | \
MCF548X_PSC_SR_OE )
-static int IntUartPollWrite(int minor, const char *buf, int len);
+static ssize_t IntUartPollWrite(int minor, const char *buf, size_t len);
static int IntUartPollRead (int minor);
static void
@@ -525,8 +525,8 @@ IntUartInitialize(void)
to initiate a transmit sequence. Calling this routine enables Tx
interrupts.
***************************************************************************/
-static int
-IntUartInterruptWrite (int minor, const char *buf, int len)
+static ssize_t
+IntUartInterruptWrite (int minor, const char *buf, size_t len)
{
int level;
@@ -674,9 +674,10 @@ if (!((MCF548X_PSC_SR(minor) & MCF548X_PSC_SR_RXRDY)))
appropriate internal uart channel waiting till each one is sucessfully
transmitted.
***************************************************************************/
-static int
-IntUartPollWrite (int minor, const char *buf, int len)
+static ssize_t
+IntUartPollWrite (int minor, const char *buf, size_t len)
{
+ size_t retval = len;
/* loop over buffer */
while ( len-- )
{
@@ -686,7 +687,7 @@ IntUartPollWrite (int minor, const char *buf, int len)
/* transmit data byte */
*((uint8_t *)&MCF548X_PSC_TB(minor)) = *buf++;
}
- return 0;
+ return retval;
}
/***************************************************************************
diff --git a/c/src/lib/libbsp/m68k/idp/ChangeLog b/c/src/lib/libbsp/m68k/idp/ChangeLog
index 8d236a5abb..f6091ebf94 100644
--- a/c/src/lib/libbsp/m68k/idp/ChangeLog
+++ b/c/src/lib/libbsp/m68k/idp/ChangeLog
@@ -1,3 +1,8 @@
+2009-12-16 Thomas Doerfler <Thomas.Doerfler@embedded-brains.de>
+
+ * console/console.c: adapted to new prototype for *_write
+ function
+
2009-10-21 Ralf Corsépius <ralf.corsepius@rtems.org>
* make/custom/idp.cfg: Remove RTEMS_BSP_FAMILY.
diff --git a/c/src/lib/libbsp/m68k/idp/console/console.c b/c/src/lib/libbsp/m68k/idp/console/console.c
index 264ec4a36a..2709325d5d 100644
--- a/c/src/lib/libbsp/m68k/idp/console/console.c
+++ b/c/src/lib/libbsp/m68k/idp/console/console.c
@@ -135,7 +135,7 @@ char inbyte(
int port
)
{
- unsigned char tmp_char;
+ char tmp_char;
/* If you come into this routine without checking is_character_ready() first
and you want nonblocking code, then it's your own fault */
diff --git a/c/src/lib/libbsp/m68k/mcf5206elite/ChangeLog b/c/src/lib/libbsp/m68k/mcf5206elite/ChangeLog
index 14b1aa0ea8..ecb53afcef 100644
--- a/c/src/lib/libbsp/m68k/mcf5206elite/ChangeLog
+++ b/c/src/lib/libbsp/m68k/mcf5206elite/ChangeLog
@@ -1,3 +1,8 @@
+2009-12-16 Thomas Doerfler <Thomas.Doerfler@embedded-brains.de>
+
+ * console/console.c: adapted to new prototype for *_write
+ function
+
2009-12-08 Ralf Corsépius <ralf.corsepius@rtems.org>
* startup/init5206e.c: Make prototype of CopyDataClearBSSAndStart
diff --git a/c/src/lib/libbsp/m68k/mcf5206elite/console/console.c b/c/src/lib/libbsp/m68k/mcf5206elite/console/console.c
index e4f7075154..a613abecc9 100644
--- a/c/src/lib/libbsp/m68k/mcf5206elite/console/console.c
+++ b/c/src/lib/libbsp/m68k/mcf5206elite/console/console.c
@@ -63,8 +63,8 @@ console_poll_read(int minor)
* RETURNS:
* result code
*/
-static int
-console_interrupt_write(int minor, const char *buf, int len)
+static ssize_t
+console_interrupt_write(int minor, const char *buf, size_t len)
{
return mcfuart_interrupt_write(&uart[minor], buf, len);
}
@@ -80,8 +80,8 @@ console_interrupt_write(int minor, const char *buf, int len)
* RETURNS:
* result code
*/
-static int
-console_poll_write(int minor, const char *buf, int len)
+static ssize_t
+console_poll_write(int minor, const char *buf, size_t len)
{
return mcfuart_poll_write(&uart[minor], buf, len);
}
diff --git a/c/src/lib/libbsp/m68k/mcf52235/ChangeLog b/c/src/lib/libbsp/m68k/mcf52235/ChangeLog
index bb4c5a92b2..41e190fe7d 100644
--- a/c/src/lib/libbsp/m68k/mcf52235/ChangeLog
+++ b/c/src/lib/libbsp/m68k/mcf52235/ChangeLog
@@ -1,3 +1,8 @@
+2009-12-16 Thomas Doerfler <Thomas.Doerfler@embedded-brains.de>
+
+ * console/console.c: adapted to new prototype for *_write
+ function
+
2009-10-21 Ralf Corsépius <ralf.corsepius@rtems.org>
* make/custom/mcf52235.cfg: Remove RTEMS_BSP_FAMILY.
diff --git a/c/src/lib/libbsp/m68k/mcf52235/console/console.c b/c/src/lib/libbsp/m68k/mcf52235/console/console.c
index dcacee4e1a..b0ac4f9949 100644
--- a/c/src/lib/libbsp/m68k/mcf52235/console/console.c
+++ b/c/src/lib/libbsp/m68k/mcf52235/console/console.c
@@ -22,8 +22,8 @@
MCF_UART_USR_PE | \
MCF_UART_USR_OE )
-static int IntUartPollWrite(int minor, const char *buf, int len);
-static int IntUartInterruptWrite(int minor, const char *buf, int len);
+static ssize_t IntUartPollWrite(int minor, const char *buf, size_t len);
+static ssize_t IntUartInterruptWrite(int minor, const char *buf, size_t len);
#define MAX_UART_INFO 3
#define RX_BUFFER_SIZE 512
@@ -339,7 +339,7 @@ static void IntUartInitialize(void)
to initiate a transmit sequence. Calling this routine enables Tx
interrupts.
***************************************************************************/
-static int IntUartInterruptWrite(int minor, const char *buf, int len)
+static ssize_t IntUartInterruptWrite(int minor, const char *buf, size_t len)
{
int level;
@@ -472,8 +472,9 @@ static int IntUartPollRead(int minor)
appropriate internal uart channel waiting till each one is sucessfully
transmitted.
***************************************************************************/
-static int IntUartPollWrite(int minor, const char *buf, int len)
+static ssize_t IntUartPollWrite(int minor, const char *buf, size_t len)
{
+ size_t retval = len;
/* loop over buffer */
while (len--) {
/* block until we can transmit */
@@ -482,7 +483,7 @@ static int IntUartPollWrite(int minor, const char *buf, int len)
/* transmit data byte */
MCF_UART_UTB(minor) = *buf++;
}
- return (0);
+ return retval;
}
/***************************************************************************
diff --git a/c/src/lib/libbsp/m68k/mcf5235/ChangeLog b/c/src/lib/libbsp/m68k/mcf5235/ChangeLog
index 5e54bb5e43..d1d26b96cb 100644
--- a/c/src/lib/libbsp/m68k/mcf5235/ChangeLog
+++ b/c/src/lib/libbsp/m68k/mcf5235/ChangeLog
@@ -1,3 +1,8 @@
+2009-12-16 Thomas Doerfler <Thomas.Doerfler@embedded-brains.de>
+
+ * console/console.c: adapted to new prototype for *_write
+ function
+
2009-11-16 Alan Cudmore <alan.p.cudmore@nasa.gov>
* startup/init5235.c: Add volatile to prevent newer gcc versions from
diff --git a/c/src/lib/libbsp/m68k/mcf5235/console/console.c b/c/src/lib/libbsp/m68k/mcf5235/console/console.c
index c5ddf8f5c5..0e8fa4c7f1 100644
--- a/c/src/lib/libbsp/m68k/mcf5235/console/console.c
+++ b/c/src/lib/libbsp/m68k/mcf5235/console/console.c
@@ -22,8 +22,8 @@
MCF5235_UART_USR_PE | \
MCF5235_UART_USR_OE )
-static int IntUartPollWrite(int minor, const char *buf, int len);
-static int IntUartInterruptWrite (int minor, const char *buf, int len);
+static ssize_t IntUartPollWrite(int minor, const char *buf, size_t len);
+static ssize_t IntUartInterruptWrite (int minor, const char *buf, size_t len);
static void
_BSP_null_char( char c )
@@ -390,8 +390,8 @@ IntUartInitialize(void)
to initiate a transmit sequence. Calling this routine enables Tx
interrupts.
***************************************************************************/
-static int
-IntUartInterruptWrite (int minor, const char *buf, int len)
+static ssize_t
+IntUartInterruptWrite (int minor, const char *buf, size_t len)
{
int level;
@@ -541,9 +541,10 @@ IntUartPollRead (int minor)
appropriate internal uart channel waiting till each one is sucessfully
transmitted.
***************************************************************************/
-static int
-IntUartPollWrite (int minor, const char *buf, int len)
+static ssize_t
+IntUartPollWrite (int minor, const char *buf, size_t len)
{
+ size_t retval = len;
/* loop over buffer */
while ( len-- )
{
@@ -553,7 +554,7 @@ IntUartPollWrite (int minor, const char *buf, int len)
/* transmit data byte */
MCF5235_UART_UTB(minor) = *buf++;
}
- return(0);
+ return retval;
}
/***************************************************************************
diff --git a/c/src/lib/libbsp/m68k/mcf5329/ChangeLog b/c/src/lib/libbsp/m68k/mcf5329/ChangeLog
index 40721e8b02..9f69a54064 100644
--- a/c/src/lib/libbsp/m68k/mcf5329/ChangeLog
+++ b/c/src/lib/libbsp/m68k/mcf5329/ChangeLog
@@ -1,3 +1,8 @@
+2009-12-16 Thomas Doerfler <Thomas.Doerfler@embedded-brains.de>
+
+ * console/console.c: adapted to new prototype for *_write
+ function
+
2009-11-03 Ralf Corsépius <ralf.corsepius@rtems.org>
* startup/cfinit.c: Remove init_vbr (Unused).
diff --git a/c/src/lib/libbsp/m68k/mcf5329/console/console.c b/c/src/lib/libbsp/m68k/mcf5329/console/console.c
index 3041068147..3590e05aae 100644
--- a/c/src/lib/libbsp/m68k/mcf5329/console/console.c
+++ b/c/src/lib/libbsp/m68k/mcf5329/console/console.c
@@ -22,8 +22,8 @@
MCF_UART_USR_PE | \
MCF_UART_USR_OE )
-static int IntUartPollWrite(int minor, const char *buf, int len);
-static int IntUartInterruptWrite(int minor, const char *buf, int len);
+static ssize_t IntUartPollWrite(int minor, const char *buf, size_t len);
+static ssize_t IntUartInterruptWrite(int minor, const char *buf, size_t len);
static void _BSP_null_char(char c)
{
@@ -353,7 +353,7 @@ static void IntUartInitialize(void)
to initiate a transmit sequence. Calling this routine enables Tx
interrupts.
***************************************************************************/
-static int IntUartInterruptWrite(int minor, const char *buf, int len)
+static ssize_t IntUartInterruptWrite(int minor, const char *buf, size_t len)
{
int level;
@@ -486,8 +486,9 @@ static int IntUartPollRead(int minor)
appropriate internal uart channel waiting till each one is sucessfully
transmitted.
***************************************************************************/
-static int IntUartPollWrite(int minor, const char *buf, int len)
+static ssize_t IntUartPollWrite(int minor, const char *buf, size_t len)
{
+ size_t retval = len;
/* loop over buffer */
while (len--) {
/* block until we can transmit */
@@ -496,7 +497,7 @@ static int IntUartPollWrite(int minor, const char *buf, int len)
/* transmit data byte */
MCF_UART_UTB(minor) = *buf++;
}
- return (0);
+ return retval;
}
/***************************************************************************
diff --git a/c/src/lib/libbsp/m68k/mrm332/ChangeLog b/c/src/lib/libbsp/m68k/mrm332/ChangeLog
index 54866faea0..e9eed33adb 100644
--- a/c/src/lib/libbsp/m68k/mrm332/ChangeLog
+++ b/c/src/lib/libbsp/m68k/mrm332/ChangeLog
@@ -1,3 +1,8 @@
+2009-12-16 Thomas Doerfler <Thomas.Doerfler@embedded-brains.de>
+
+ * console/sci.c: adapted to new prototype for *_write
+ function
+
2009-10-21 Ralf Corsépius <ralf.corsepius@rtems.org>
* make/custom/mrm332.cfg: Remove RTEMS_BSP_FAMILY.
diff --git a/c/src/lib/libbsp/m68k/mrm332/console/sci.c b/c/src/lib/libbsp/m68k/mrm332/console/sci.c
index c41f480e86..3460d567f7 100644
--- a/c/src/lib/libbsp/m68k/mrm332/console/sci.c
+++ b/c/src/lib/libbsp/m68k/mrm332/console/sci.c
@@ -154,15 +154,15 @@ rtems_device_driver SciControl( /* device driver api */
rtems_device_driver SciRead (
rtems_device_major_number, rtems_device_minor_number, void *);
-int SciInterruptOpen(int, int, void *); /* termios api */
-int SciInterruptClose(int, int, void *); /* termios api */
-int SciInterruptWrite(int, const char *, int); /* termios api */
+int SciInterruptOpen(int, int, void *); /* termios api */
+int SciInterruptClose(int, int, void *); /* termios api */
+ssize_t SciInterruptWrite(int, const char *, size_t); /* termios api */
-int SciSetAttributes(int, const struct termios*); /* termios api */
-int SciPolledOpen(int, int, void *); /* termios api */
-int SciPolledClose(int, int, void *); /* termios api */
-int SciPolledRead(int); /* termios api */
-int SciPolledWrite(int, const char *, int); /* termios api */
+int SciSetAttributes(int, const struct termios*); /* termios api */
+int SciPolledOpen(int, int, void *); /* termios api */
+int SciPolledClose(int, int, void *); /* termios api */
+int SciPolledRead(int); /* termios api */
+ssize_t SciPolledWrite(int, const char *, size_t); /* termios api */
static void SciSetBaud(uint32_t rate); /* hardware routine */
static void SciSetDataBits(uint16_t bits); /* hardware routine */
@@ -615,10 +615,10 @@ int SciInterruptClose(
* Scope: public API
****************************************************************************/
-int SciInterruptWrite(
+ssize_t SciInterruptWrite(
int minor,
const char *buf,
- int len
+ size_t len
)
{
/* We are using interrupt driven output so termios only sends us */
@@ -626,17 +626,17 @@ int SciInterruptWrite(
if ( !len ) /* no data? */
{
- return 0; /* return error */
+ return -1; /* return error */
}
if ( minor != SCI_MINOR ) /* check the minor dev num */
{
- return 0; /* return error */
+ return -1; /* return error */
}
if ( SciOpened == DRIVER_OPENED ) /* is the driver api open? */
{
- return 1; /* yep, throw this away */
+ return -1; /* yep, throw this away */
}
SciWriteCharNoWait(*buf); /* try to send a char */
@@ -645,7 +645,7 @@ int SciInterruptWrite(
SciEnableTransmitInterrupts(); /* enable the tx interrupt */
- return 1; /* return success */
+ return 0; /* return success */
}
@@ -860,13 +860,13 @@ int SciPolledRead(
* Scope: public termios API
****************************************************************************/
-int SciPolledWrite(
+ssize_t SciPolledWrite(
int minor,
const char *buf,
- int len
+ size_t len
)
{
- int32_t written = 0;
+ ssize_t written = 0;
if ( minor != SCI_MINOR ) /* check minor device num */
{
diff --git a/c/src/lib/libbsp/m68k/mvme162/console/console.c b/c/src/lib/libbsp/m68k/mvme162/console/console.c
index 3d87edabe2..6ace676400 100644
--- a/c/src/lib/libbsp/m68k/mvme162/console/console.c
+++ b/c/src/lib/libbsp/m68k/mvme162/console/console.c
@@ -126,7 +126,7 @@ bool char_ready(int port, char *ch)
char inbyte(int port)
{
- unsigned char tmp_char;
+ char tmp_char;
while ( !char_ready(port, &tmp_char) );
return tmp_char;
diff --git a/c/src/lib/libbsp/m68k/mvme167/ChangeLog b/c/src/lib/libbsp/m68k/mvme167/ChangeLog
index 03280ff37f..42a9af95ad 100644
--- a/c/src/lib/libbsp/m68k/mvme167/ChangeLog
+++ b/c/src/lib/libbsp/m68k/mvme167/ChangeLog
@@ -1,3 +1,8 @@
+2009-12-16 Thomas Doerfler <Thomas.Doerfler@embedded-brains.de>
+
+ * console/console.c: adapted to new prototype for *_write
+ function
+
2009-12-08 Eric Norum <wenorum@lbl.gov>
PR 1479/bsps
diff --git a/c/src/lib/libbsp/m68k/mvme167/console/console.c b/c/src/lib/libbsp/m68k/mvme167/console/console.c
index 66d8882953..11b546ed0a 100644
--- a/c/src/lib/libbsp/m68k/mvme167/console/console.c
+++ b/c/src/lib/libbsp/m68k/mvme167/console/console.c
@@ -153,10 +153,10 @@ int cd2401_lastClose( int major, int minor, void *arg );
int cd2401_setAttributes( int minor, const struct termios *t );
int cd2401_startRemoteTx( int minor );
int cd2401_stopRemoteTx( int minor );
-int cd2401_write( int minor, const char *buf, int len );
+ssize_t cd2401_write( int minor, const char *buf, size_t len );
int cd2401_drainOutput( int minor );
int _167Bug_pollRead( int minor );
-int _167Bug_pollWrite( int minor, const char *buf, int len );
+ssize_t _167Bug_pollWrite( int minor, const char *buf, size_t len );
/* Printk function */
static void _BSP_output_char( char c );
@@ -1134,10 +1134,10 @@ int cd2401_stopRemoteTx(
* console_write(). The processor is necessarily at interrupt level 1 in
* cd2401_tx_isr().
*/
-int cd2401_write(
+ssize_t cd2401_write(
int minor,
const char *buf,
- int len
+ size_t len
)
{
cd2401->car = minor; /* Select channel */
@@ -1173,7 +1173,7 @@ int cd2401_write(
cd2401->ier |= 0x01;
/* Return something */
- return RTEMS_SUCCESSFUL;
+ return len;
}
#if 0
@@ -1287,10 +1287,10 @@ int _167Bug_pollRead(
*
* CANNOT BE COMBINED WITH INTERRUPT DRIVEN I/O!
*/
-int _167Bug_pollWrite(
+ssize_t _167Bug_pollWrite(
int minor,
const char *buf,
- int len
+ size_t len
)
{
const char *endbuf = buf + len;
@@ -1304,7 +1304,7 @@ int _167Bug_pollWrite(
:: "a" (endbuf), "a" (buf), "d" (minor) );
/* Return something */
- return RTEMS_SUCCESSFUL;
+ return len;
}
/*
diff --git a/c/src/lib/libbsp/m68k/uC5282/ChangeLog b/c/src/lib/libbsp/m68k/uC5282/ChangeLog
index d1cbafcff7..4fb6a23196 100644
--- a/c/src/lib/libbsp/m68k/uC5282/ChangeLog
+++ b/c/src/lib/libbsp/m68k/uC5282/ChangeLog
@@ -1,3 +1,8 @@
+2009-12-16 Thomas Doerfler <Thomas.Doerfler@embedded-brains.de>
+
+ * console/console.c: adapted to new prototype for *_write
+ function
+
2009-11-03 Ralf Corsépius <ralf.corsepius@rtems.org>
* startup/bspstart.c: Add missing prototype.
diff --git a/c/src/lib/libbsp/m68k/uC5282/console/console.c b/c/src/lib/libbsp/m68k/uC5282/console/console.c
index 96ad4b095a..a213cbca2f 100644
--- a/c/src/lib/libbsp/m68k/uC5282/console/console.c
+++ b/c/src/lib/libbsp/m68k/uC5282/console/console.c
@@ -32,8 +32,8 @@
MCF5282_UART_USR_PE | \
MCF5282_UART_USR_OE )
-static int IntUartPollWrite(int minor, const char *buf, int len);
-static int IntUartInterruptWrite (int minor, const char *buf, int len);
+static ssize_t IntUartPollWrite(int minor, const char *buf, size_t len);
+static ssize_t IntUartInterruptWrite (int minor, const char *buf, size_t len);
static void
_BSP_null_char( char c )
@@ -406,8 +406,8 @@ IntUartInitialize(void)
to initiate a transmit sequence. Calling this routine enables Tx
interrupts.
***************************************************************************/
-static int
-IntUartInterruptWrite (int minor, const char *buf, int len)
+static ssize_t
+IntUartInterruptWrite (int minor, const char *buf, size_t len)
{
int level;
@@ -421,7 +421,7 @@ IntUartInterruptWrite (int minor, const char *buf, int len)
MCF5282_UART_UIMR(minor) = IntUartInfo[minor].uimr;
rtems_interrupt_enable(level);
- return( 0 );
+ return 0;
}
/***************************************************************************
@@ -447,9 +447,10 @@ IntUartInterruptOpen(int major, int minor, void *arg)
MCF5282_GPIO_PUAPAR |= MCF5282_GPIO_PUAPAR_PUAPA3|MCF5282_GPIO_PUAPAR_PUAPA2;
break;
case 2:
- MCF5282_GPIO_PASPAR = MCF5282_GPIO_PASPAR
- & ~(MCF5282_GPIO_PASPAR_PASPA3(3)|MCF5282_GPIO_PASPAR_PASPA2(3))
- | (MCF5282_GPIO_PASPAR_PASPA3(2)|MCF5282_GPIO_PASPAR_PASPA2(2));
+ MCF5282_GPIO_PASPAR =
+ (MCF5282_GPIO_PASPAR
+ & ~(MCF5282_GPIO_PASPAR_PASPA3(3)|MCF5282_GPIO_PASPAR_PASPA2(3)))
+ | (MCF5282_GPIO_PASPAR_PASPA3(2)|MCF5282_GPIO_PASPAR_PASPA2(2));
break;
}
rtems_interrupt_enable(level);
@@ -576,9 +577,10 @@ IntUartPollRead (int minor)
appropriate internal uart channel waiting till each one is sucessfully
transmitted.
***************************************************************************/
-static int
-IntUartPollWrite (int minor, const char *buf, int len)
+static ssize_t
+IntUartPollWrite (int minor, const char *buf, size_t len)
{
+ size_t retval = len;
/* loop over buffer */
while ( len-- )
{
@@ -588,7 +590,7 @@ IntUartPollWrite (int minor, const char *buf, int len)
/* transmit data byte */
MCF5282_UART_UTB(minor) = *buf++;
}
- return(0);
+ return retval;
}
/***************************************************************************
diff --git a/c/src/lib/libbsp/powerpc/ChangeLog b/c/src/lib/libbsp/powerpc/ChangeLog
index fc6477cc3b..963d354a31 100644
--- a/c/src/lib/libbsp/powerpc/ChangeLog
+++ b/c/src/lib/libbsp/powerpc/ChangeLog
@@ -1,3 +1,8 @@
+2009-12-16 Thomas Doerfler <Thomas.Doerfler@embedded-brains.de>
+
+ * shared/console/uart.c, shared/console/uart.h: adapted to new
+ prototype for *_write function
+
2009-12-11 Ralf Corsépius <ralf.corsepius@rtems.org>
PR 1483/cpukit
diff --git a/c/src/lib/libbsp/powerpc/ep1a/ChangeLog b/c/src/lib/libbsp/powerpc/ep1a/ChangeLog
index 77c7191bee..2b09c410a1 100644
--- a/c/src/lib/libbsp/powerpc/ep1a/ChangeLog
+++ b/c/src/lib/libbsp/powerpc/ep1a/ChangeLog
@@ -1,3 +1,8 @@
+2009-12-16 Thomas Doerfler <Thomas.Doerfler@embedded-brains.de>
+
+ * console/console.c: adapted to new prototype for *_write
+ function
+
2009-10-22 Sebastian Huber <sebastian.huber@embedded-brains.de>
* Makefile.am, preinstall.am: Update for exception support changes.
diff --git a/c/src/lib/libbsp/powerpc/ep1a/console/mc68360_scc.c b/c/src/lib/libbsp/powerpc/ep1a/console/mc68360_scc.c
index ede9133864..e9f07a6a50 100644
--- a/c/src/lib/libbsp/powerpc/ep1a/console/mc68360_scc.c
+++ b/c/src/lib/libbsp/powerpc/ep1a/console/mc68360_scc.c
@@ -859,15 +859,15 @@ int mc68360_scc_inbyte_nonblocking_polled(
*
*/
-int mc68360_scc_write_support_polled(
+ssize_t mc68360_scc_write_support_polled(
int minor,
const char *buf,
- int len
+ size_t len
)
{
printk("mc68360_scc_write_support_polled: minor %d char %c len %d\n",
minor, buf, len );
- return 0;
+ return len;
}
/*
diff --git a/c/src/lib/libbsp/powerpc/gen5200/ChangeLog b/c/src/lib/libbsp/powerpc/gen5200/ChangeLog
index 1fac04e115..b47db9875a 100644
--- a/c/src/lib/libbsp/powerpc/gen5200/ChangeLog
+++ b/c/src/lib/libbsp/powerpc/gen5200/ChangeLog
@@ -1,3 +1,8 @@
+2009-12-16 Thomas Doerfler <Thomas.Doerfler@embedded-brains.de>
+
+ * console/console.c: adapted to new prototype for *_write
+ function
+
2009-11-04 Ralf Corsépius <ralf.corsepius@rtems.org>
* ide/pcmcia_ide.c (mpc5200_pcmciaide_write_block,
diff --git a/c/src/lib/libbsp/powerpc/gen5200/console/console.c b/c/src/lib/libbsp/powerpc/gen5200/console/console.c
index 8062474c8d..84c38424e6 100644
--- a/c/src/lib/libbsp/powerpc/gen5200/console/console.c
+++ b/c/src/lib/libbsp/powerpc/gen5200/console/console.c
@@ -551,12 +551,13 @@ int mpc5200_uart_pollRead(
}
-int mpc5200_uart_pollWrite(
+ssize_t mpc5200_uart_pollWrite(
int minor,
const char *buf,
- int len
+ size_t len
)
{
+ size_t retval = len;
const char *tmp_buf = buf;
struct mpc5200_psc *psc =
(struct mpc5200_psc *)(&mpc5200.psc[psc_minor_to_regset[minor]]);
@@ -572,15 +573,14 @@ int mpc5200_uart_pollWrite(
tmp_buf++;
}
- return 0;
+ return retval;
}
-
-int mpc5200_uart_write(
+ssize_t mpc5200_uart_write(
int minor,
const char *buf,
- int len
+ size_t len
)
{
int frame_len = len;
@@ -648,7 +648,7 @@ static int A_BSP_get_char(void)
*/
#if !defined(HAS_UBOOT)
if (console_initialized == false)
- return;
+ return -1;
#endif
return mpc5200_uart_pollRead(0);
diff --git a/c/src/lib/libbsp/powerpc/haleakala/ChangeLog b/c/src/lib/libbsp/powerpc/haleakala/ChangeLog
index 074421c5b3..2cefc9a222 100644
--- a/c/src/lib/libbsp/powerpc/haleakala/ChangeLog
+++ b/c/src/lib/libbsp/powerpc/haleakala/ChangeLog
@@ -1,3 +1,7 @@
+2009-12-16 Thomas Doerfler <Thomas.Doerfler@embedded-brains.de>
+
+ * startup/bspstart.c: warning removal
+
2009-11-12 Ralf Corsépius <ralf.corsepius@rtems.org>
* INSTALL: Remove.
diff --git a/c/src/lib/libbsp/powerpc/haleakala/startup/bspstart.c b/c/src/lib/libbsp/powerpc/haleakala/startup/bspstart.c
index 9ca78b959b..88e61f38d1 100644
--- a/c/src/lib/libbsp/powerpc/haleakala/startup/bspstart.c
+++ b/c/src/lib/libbsp/powerpc/haleakala/startup/bspstart.c
@@ -71,6 +71,8 @@
#include <stdio.h>
+LINKER_SYMBOL(intrStack_start);
+LINKER_SYMBOL(intrStack_size);
/*
* Driver configuration parameters
*/
@@ -170,8 +172,6 @@ BSP_output_char_function_type BSP_output_char = DirectUARTWrite;
void bsp_start( void )
{
rtems_status_code sc = RTEMS_SUCCESSFUL;
- LINKER_SYMBOL(intrStack_start);
- LINKER_SYMBOL(intrStack_size);
ppc_cpu_id_t myCpu;
ppc_cpu_revision_t myCpuRevision;
diff --git a/c/src/lib/libbsp/powerpc/mbx8xx/ChangeLog b/c/src/lib/libbsp/powerpc/mbx8xx/ChangeLog
index 5560144064..940b6158e4 100644
--- a/c/src/lib/libbsp/powerpc/mbx8xx/ChangeLog
+++ b/c/src/lib/libbsp/powerpc/mbx8xx/ChangeLog
@@ -1,3 +1,8 @@
+2009-12-16 Thomas Doerfler <Thomas.Doerfler@embedded-brains.de>
+
+ * console/console.c: adapted to new prototype for *_write
+ function
+
2009-10-23 Sebastian Huber <sebastian.huber@embedded-brains.de>
* vectors/vectors.h, vectors/vectors_init.c, vectors/vectors.S,
diff --git a/c/src/lib/libbsp/powerpc/mbx8xx/console/console.c b/c/src/lib/libbsp/powerpc/mbx8xx/console/console.c
index 09b1d3943b..b6148164fc 100644
--- a/c/src/lib/libbsp/powerpc/mbx8xx/console/console.c
+++ b/c/src/lib/libbsp/powerpc/mbx8xx/console/console.c
@@ -83,7 +83,7 @@
#include <bsp/mbx.h>
static int _EPPCBug_pollRead( int minor );
-static int _EPPCBug_pollWrite( int minor, const char *buf, int len );
+static ssize_t _EPPCBug_pollWrite( int minor, const char *buf, size_t len );
static void _BSP_output_char( char c );
static rtems_status_code do_poll_read( rtems_device_major_number major, rtems_device_minor_number minor, void * arg);
static rtems_status_code do_poll_write( rtems_device_major_number major, rtems_device_minor_number minor, void * arg);
@@ -214,16 +214,16 @@ static int _EPPCBug_pollRead(
*
* Return value: IGNORED
*/
-static int _EPPCBug_pollWrite(
+static ssize_t _EPPCBug_pollWrite(
int minor,
const char *buf,
- int len
+ size_t len
)
{
extern volatile m8xx_t m8xx;
volatile int simask;
- int i, retval;
+ int i;
ISR_Level level;
struct {
@@ -249,8 +249,6 @@ static int _EPPCBug_pollWrite(
} u;
} volatile output_params;
- retval = -1;
-
input_params.clun = 0;
input_params.reserved = 0;
@@ -315,7 +313,7 @@ static int _EPPCBug_pollWrite(
/* Return something */
m8xx.simask = simask;
_ISR_Enable( level );
- return RTEMS_SUCCESSFUL;
+ return len;
error:
m8xx.simask = simask;
@@ -422,7 +420,7 @@ static rtems_status_code do_poll_write(
#if NVRAM_CONFIGURE == 1
- int (*pollWrite)(int minor, const char *buf, int len);
+ ssize_t (*pollWrite)(int minor, const char *buf, size_t len);
if ( (nvram->console_mode & 0x06) == 0x04 )
pollWrite = _EPPCBug_pollWrite;
diff --git a/c/src/lib/libbsp/powerpc/score603e/ChangeLog b/c/src/lib/libbsp/powerpc/score603e/ChangeLog
index 09d06133c6..a62913f473 100644
--- a/c/src/lib/libbsp/powerpc/score603e/ChangeLog
+++ b/c/src/lib/libbsp/powerpc/score603e/ChangeLog
@@ -1,3 +1,8 @@
+2009-12-16 Thomas Doerfler <Thomas.Doerfler@embedded-brains.de>
+
+ * console/console.c: adapted to new prototype for *_write
+ function
+
2009-10-22 Sebastian Huber <sebastian.huber@embedded-brains.de>
* Makefile.am, preinstall.am: Update for exception support changes.
diff --git a/c/src/lib/libbsp/powerpc/score603e/console/console.c b/c/src/lib/libbsp/powerpc/score603e/console/console.c
index 60baac3bb5..c2e9952f3d 100644
--- a/c/src/lib/libbsp/powerpc/score603e/console/console.c
+++ b/c/src/lib/libbsp/powerpc/score603e/console/console.c
@@ -254,10 +254,10 @@ rtems_device_driver console_initialize(
* Console Termios output entry point.
*
*/
-int console_write_support(
+ssize_t console_write_support(
int minor,
const char *buf,
- int len)
+ size_t len)
{
int nwrite = 0;
volatile uint8_t *csr;
diff --git a/c/src/lib/libbsp/powerpc/shared/console/uart.c b/c/src/lib/libbsp/powerpc/shared/console/uart.c
index 3e89701666..81cada4062 100644
--- a/c/src/lib/libbsp/powerpc/shared/console/uart.c
+++ b/c/src/lib/libbsp/powerpc/shared/console/uart.c
@@ -554,8 +554,8 @@ BSP_uart_termios_set(int uart, void *p)
return;
}
-int
-BSP_uart_termios_write_polled(int minor, const char *buf, int len)
+ssize_t
+BSP_uart_termios_write_polled(int minor, const char *buf, size_t len)
{
int uart=minor; /* could differ, theoretically */
int nwrite;
@@ -569,8 +569,8 @@ BSP_uart_termios_write_polled(int minor, const char *buf, int len)
return nwrite;
}
-int
-BSP_uart_termios_write_com(int minor, const char *buf, int len)
+ssize_t
+BSP_uart_termios_write_com(int minor, const char *buf, size_t len)
{
int uart=minor; /* could differ, theoretically */
assert(buf != NULL);
diff --git a/c/src/lib/libbsp/powerpc/shared/console/uart.h b/c/src/lib/libbsp/powerpc/shared/console/uart.h
index a067003638..405d2ea637 100644
--- a/c/src/lib/libbsp/powerpc/shared/console/uart.h
+++ b/c/src/lib/libbsp/powerpc/shared/console/uart.h
@@ -15,26 +15,26 @@
#include <sys/ioctl.h>
#include <rtems/libio.h>
-void BSP_uart_init(int uart, int baud, int hwFlow);
-void BSP_uart_set_baud(int uart, int baud);
-void BSP_uart_intr_ctrl(int uart, int cmd);
-void BSP_uart_throttle(int uart);
-void BSP_uart_unthrottle(int uart);
-int BSP_uart_polled_status(int uart);
-void BSP_uart_polled_write(int uart, int val);
-int BSP_uart_polled_read(int uart);
-void BSP_uart_termios_set(int uart, void *ttyp);
-int BSP_uart_termios_write_com(int minor, const char *buf, int len);
-int BSP_uart_termios_read_com (int minor);
-void BSP_uart_termios_isr_com1(void *unused);
-void BSP_uart_termios_isr_com2(void *unused);
-void BSP_uart_dbgisr_com1(void);
-void BSP_uart_dbgisr_com2(void);
-int BSP_uart_install_isr(int uart, rtems_irq_hdl handler);
-int BSP_uart_remove_isr(int uart, rtems_irq_hdl handler);
-int BSP_uart_termios_write_polled(int minor, const char *buf, int len);
-int BSP_uart_get_break_cb(int uart, rtems_libio_ioctl_args_t *arg);
-int BSP_uart_set_break_cb(int uart, rtems_libio_ioctl_args_t *arg);
+void BSP_uart_init(int uart, int baud, int hwFlow);
+void BSP_uart_set_baud(int uart, int baud);
+void BSP_uart_intr_ctrl(int uart, int cmd);
+void BSP_uart_throttle(int uart);
+void BSP_uart_unthrottle(int uart);
+int BSP_uart_polled_status(int uart);
+void BSP_uart_polled_write(int uart, int val);
+int BSP_uart_polled_read(int uart);
+void BSP_uart_termios_set(int uart, void *ttyp);
+ssize_t BSP_uart_termios_write_com(int minor, const char *buf, size_t len);
+int BSP_uart_termios_read_com (int minor);
+void BSP_uart_termios_isr_com1(void *unused);
+void BSP_uart_termios_isr_com2(void *unused);
+void BSP_uart_dbgisr_com1(void);
+void BSP_uart_dbgisr_com2(void);
+int BSP_uart_install_isr(int uart, rtems_irq_hdl handler);
+int BSP_uart_remove_isr(int uart, rtems_irq_hdl handler);
+ssize_t BSP_uart_termios_write_polled(int minor, const char *buf, size_t len);
+int BSP_uart_get_break_cb(int uart, rtems_libio_ioctl_args_t *arg);
+int BSP_uart_set_break_cb(int uart, rtems_libio_ioctl_args_t *arg);
extern unsigned BSP_poll_char_via_serial(void);
extern void BSP_output_char_via_serial(const char val);
diff --git a/c/src/lib/libbsp/powerpc/tqm8xx/ChangeLog b/c/src/lib/libbsp/powerpc/tqm8xx/ChangeLog
index 0920fed553..226ad27d6a 100644
--- a/c/src/lib/libbsp/powerpc/tqm8xx/ChangeLog
+++ b/c/src/lib/libbsp/powerpc/tqm8xx/ChangeLog
@@ -1,3 +1,8 @@
+2009-12-16 Thomas Doerfler <Thomas.Doerfler@embedded-brains.de>
+
+ * console/console.c: adapted to new prototype for *_write
+ function
+
2009-11-06 Ralf Corsépius <ralf.corsepius@rtems.org>
* configure.ac: Add RTEMS_BSP_LINKCMDS.
diff --git a/c/src/lib/libbsp/powerpc/tqm8xx/console/console.c b/c/src/lib/libbsp/powerpc/tqm8xx/console/console.c
index 90ac1a4aed..80f1cbd412 100644
--- a/c/src/lib/libbsp/powerpc/tqm8xx/console/console.c
+++ b/c/src/lib/libbsp/powerpc/tqm8xx/console/console.c
@@ -776,8 +776,8 @@ sccPollRead (int minor)
* Polling devices:
* Transmit all characters.
*/
-static int
-sccInterruptWrite (int minor, const char *buf, int len)
+static ssize_t
+sccInterruptWrite (int minor, const char *buf, size_t len)
{
int chan = minor;
@@ -802,12 +802,13 @@ sccInterruptWrite (int minor, const char *buf, int len)
return 0;
}
-static int
-sccPollWrite (int minor, const char *buf, int len)
+static ssize_t
+sccPollWrite (int minor, const char *buf, size_t len)
{
static char txBuf[CONS_CHN_CNT][SCC_TXBD_CNT];
int chan = minor;
int bd_used;
+ size_t retval = len;
while (len--) {
while (sccPrepTxBd[chan]->status & M8xx_BD_READY)
@@ -829,7 +830,7 @@ sccPollWrite (int minor, const char *buf, int len)
sccPrepTxBd[chan]++;
}
}
- return 0;
+ return retval;
}
/*
diff --git a/c/src/lib/libcpu/m68k/ChangeLog b/c/src/lib/libcpu/m68k/ChangeLog
index 1c3b5423ac..9ed0ce6643 100644
--- a/c/src/lib/libcpu/m68k/ChangeLog
+++ b/c/src/lib/libcpu/m68k/ChangeLog
@@ -1,3 +1,8 @@
+2009-12-16 Thomas Doerfler <Thomas.Doerfler@embedded-brains.de>
+
+ * mcf5206/include/mcfuart.h, mcf5206/include/mcfuart.c: adapted to
+ new prototype for *_write function
+
2009-10-15 Thomas Doefler <thomas.doerfler@embedded-brains.de>
* Makefile.am, mcf548x/mcdma/MCD_dma.h, mcf548x/mcdma/MCD_dmaApi.c,
@@ -9,7 +14,7 @@
2009-10-08 Thomas Doefler <thomas.doerfler@embedded-brains.de>
* mcf5282/include/mcf5282.h: add missing (x) params to four
- macros, added paranthesis around usage of x in some macros
+ macros, added paranthesis around usage of x in some macros
2009-09-10 Till Straumann <strauman@slac.stanford.edu>
diff --git a/c/src/lib/libcpu/m68k/mcf5206/console/mcfuart.c b/c/src/lib/libcpu/m68k/mcf5206/console/mcfuart.c
index d17e63423b..7ec30a5289 100644
--- a/c/src/lib/libcpu/m68k/mcf5206/console/mcfuart.c
+++ b/c/src/lib/libcpu/m68k/mcf5206/console/mcfuart.c
@@ -395,15 +395,17 @@ mcfuart_poll_read(mcfuart *uart)
* RETURNS:
* 0
*/
-int
-mcfuart_poll_write(mcfuart *uart, const char *buf, int len)
+ssize_t
+mcfuart_poll_write(mcfuart *uart, const char *buf, size_t len)
{
+ size_t retval = len;
+
while (len--)
{
while ((*MCF5206E_USR(MBAR, uart->chn) & MCF5206E_USR_TXRDY) == 0);
*MCF5206E_UTB(MBAR, uart->chn) = *buf++;
}
- return 0;
+ return retval;
}
/* mcfuart_interrupt_handler --
@@ -517,8 +519,8 @@ mcfuart_interrupt_handler(rtems_vector_number vec)
* RETURNS:
* 0
*/
-int
-mcfuart_interrupt_write(mcfuart *uart, const char *buf, int len)
+ssize_t
+mcfuart_interrupt_write(mcfuart *uart, const char *buf, size_t len)
{
int level;
rtems_interrupt_disable(level);
diff --git a/c/src/lib/libcpu/m68k/mcf5206/include/mcfuart.h b/c/src/lib/libcpu/m68k/mcf5206/include/mcfuart.h
index 7ad1de2935..dd5ea0bb37 100644
--- a/c/src/lib/libcpu/m68k/mcf5206/include/mcfuart.h
+++ b/c/src/lib/libcpu/m68k/mcf5206/include/mcfuart.h
@@ -89,14 +89,14 @@ mcfuart_poll_read(mcfuart *uart);
/* mcfuart_interrupt_write --
* This function initiate transmitting of the buffer in interrupt mode.
*/
-int
-mcfuart_interrupt_write(mcfuart *uart, const char *buf, int len);
+ssize_t
+mcfuart_interrupt_write(mcfuart *uart, const char *buf, size_t len);
/* mcfuart_poll_write --
* This function transmit buffer byte-by-byte in polling mode.
*/
-int
-mcfuart_poll_write(mcfuart *uart, const char *buf, int len);
+ssize_t
+mcfuart_poll_write(mcfuart *uart, const char *buf, size_t len);
/* mcfuart_stop_remote_tx --
* This function stop data flow from remote device.
diff --git a/c/src/lib/libcpu/powerpc/ChangeLog b/c/src/lib/libcpu/powerpc/ChangeLog
index 1e3c9fd804..6aa5363802 100644
--- a/c/src/lib/libcpu/powerpc/ChangeLog
+++ b/c/src/lib/libcpu/powerpc/ChangeLog
@@ -1,3 +1,17 @@
+2009-12-17 Thomas Doerfler <Thomas.Doerfler@embedded-brains.de>
+
+ * mpc5xx/irq/irq.c: removed warning
+
+2009-12-16 Thomas Doerfler <Thomas.Doerfler@embedded-brains.de>
+
+ * mpc5xx/include/console.h,
+ mpc5xx/console-generic/console-generic.c,
+ mpc8xx/include/console.h,
+ mpc8xx/console-generic/console-generic.c,
+ mpc8260/include/console.h,
+ mpc8260/console-generic/console-generic.c: adapted to new prototype
+ for *_write function
+
2009-12-04 Sebastian Huber <sebastian.huber@embedded-brains.de>
* new-exceptions/bspsupport/ppc_exc_bspsupp.h: Removed file.
@@ -12,7 +26,7 @@
new-exceptions/bspsupport/vectors.h:
Added AltiVec support (save/restore volatile vregs
across exceptions).
-
+
2009-12-01 Till Straumann <strauman@slac.stanford.edu>
* Makefile.am, mpc6xx/altivec: new directory implementing
@@ -31,16 +45,16 @@
for firmware I/O.
Added entries for AltiVec on PSIM.
-
+
2009-11-15 Till Straumann <strauman@slac.stanford.edu>
* shared/include/cpuIdent.c: Set 604 features + altivec if
running on PSIM.
-
+
2009-11-03 Thomas Doerfler <Thomas.Doerfler@imd-systems.de>
* shared/include/powerpc-utility.h, shared/include/byteorder.h,
- shared/include/cpuIdent.h:
+ shared/include/cpuIdent.h:
add c++ declaration brackets
* Makefile.am, mpc8260/clock: removed mpc8260 specific clock
driver
diff --git a/c/src/lib/libcpu/powerpc/mpc5xx/console-generic/console-generic.c b/c/src/lib/libcpu/powerpc/mpc5xx/console-generic/console-generic.c
index 19072a3781..16b44c2b94 100644
--- a/c/src/lib/libcpu/powerpc/mpc5xx/console-generic/console-generic.c
+++ b/c/src/lib/libcpu/powerpc/mpc5xx/console-generic/console-generic.c
@@ -139,11 +139,10 @@ m5xx_uart_pollRead(
return c;
}
-int
-m5xx_uart_write(
+ssize_t m5xx_uart_write(
int minor,
const char *buf,
- int len
+ size_t len
)
{
volatile m5xxSCIRegisters_t *regs = sci_descs[minor].regs;
@@ -153,21 +152,22 @@ m5xx_uart_write(
return 0;
}
-int
-m5xx_uart_pollWrite(
+ssize_t m5xx_uart_pollWrite(
int minor,
const char *buf,
- int len
+ size_t len
)
{
volatile m5xxSCIRegisters_t *regs = sci_descs[minor].regs;
+ size_t retval = len;
while ( len-- ) {
while ( (regs->scsr & QSMCM_SCI_TDRE) == 0 )
;
regs->scdr = *buf++;
}
- return 0;
+
+ return retval;
}
int
diff --git a/c/src/lib/libcpu/powerpc/mpc5xx/include/console.h b/c/src/lib/libcpu/powerpc/mpc5xx/include/console.h
index 027754b709..e765d88731 100644
--- a/c/src/lib/libcpu/powerpc/mpc5xx/include/console.h
+++ b/c/src/lib/libcpu/powerpc/mpc5xx/include/console.h
@@ -24,8 +24,8 @@ void m5xx_uart_initialize(int minor);
int m5xx_uart_firstOpen(int maj, int min, void *arg);
int m5xx_uart_lastClose(int maj, int min, void *arg);
int m5xx_uart_pollRead(int minor);
-int m5xx_uart_pollWrite(int minor, const char* buf, int len);
-int m5xx_uart_write(int minor, const char *buf, int len);
+ssize_t m5xx_uart_pollWrite(int minor, const char* buf, size_t len);
+ssize_t m5xx_uart_write (int minor, const char *buf, size_t len);
int m5xx_uart_setAttributes(int, const struct termios* t);
#define NUM_PORTS 2 /* number of serial ports */
diff --git a/c/src/lib/libcpu/powerpc/mpc5xx/irq/irq.c b/c/src/lib/libcpu/powerpc/mpc5xx/irq/irq.c
index 443340a914..8ae7079489 100644
--- a/c/src/lib/libcpu/powerpc/mpc5xx/irq/irq.c
+++ b/c/src/lib/libcpu/powerpc/mpc5xx/irq/irq.c
@@ -119,7 +119,7 @@ const static unsigned int USIU_IvectMask[CPU_USIU_IRQ_COUNT] =
* is already set and that the tables it contains are still valid
* and accessible.
*/
-static void compute_USIU_IvectMask_from_prio ()
+static void compute_USIU_IvectMask_from_prio (void)
{
/*
* In theory this is feasible. No time to code it yet. See i386/shared/irq.c
diff --git a/c/src/lib/libcpu/powerpc/mpc8260/console-generic/console-generic.c b/c/src/lib/libcpu/powerpc/mpc8260/console-generic/console-generic.c
index 68d857dd2e..0182cdf4e5 100644
--- a/c/src/lib/libcpu/powerpc/mpc8260/console-generic/console-generic.c
+++ b/c/src/lib/libcpu/powerpc/mpc8260/console-generic/console-generic.c
@@ -1098,11 +1098,11 @@ m8xx_uart_pollRead(
/*
* TODO: Get a free buffer and set it up.
*/
-int
+ssize_t
m8xx_uart_write(
int minor,
const char *buf,
- int len
+ size_t len
)
{
while( (TxBd[minor]->status) & M8260_BD_READY );
@@ -1115,13 +1115,14 @@ m8xx_uart_write(
}
-int
+ssize_t
m8xx_uart_pollWrite(
int minor,
const char *buf,
- int len
+ size_t len
)
{
+ size_t retval = len;
while (len--) {
while (TxBd[minor]->status & M8260_BD_READY)
@@ -1133,5 +1134,5 @@ m8xx_uart_pollWrite(
TxBd[minor]->status = M8260_BD_READY | M8260_BD_WRAP;
}
- return 0;
+ return retval;
}
diff --git a/c/src/lib/libcpu/powerpc/mpc8260/include/console.h b/c/src/lib/libcpu/powerpc/mpc8260/include/console.h
index 04781f6341..2ad1120d3e 100644
--- a/c/src/lib/libcpu/powerpc/mpc8260/include/console.h
+++ b/c/src/lib/libcpu/powerpc/mpc8260/include/console.h
@@ -14,8 +14,8 @@ void m8xx_uart_smc_initialize (int minor);
/* Termios callbacks */
int m8xx_uart_pollRead(int minor);
-int m8xx_uart_pollWrite(int minor, const char* buf, int len);
-int m8xx_uart_write(int minor, const char *buf, int len);
+ssize_t m8xx_uart_pollWrite(int minor, const char* buf, size_t len);
+ssize_t m8xx_uart_write(int minor, const char *buf, size_t len);
int m8xx_uart_setAttributes(int, const struct termios* t);
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 b8dff4683b..f92a956fef 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
@@ -1057,11 +1057,11 @@ m8xx_uart_pollRead(
/*
* TODO: Get a free buffer and set it up.
*/
-int
+ssize_t
m8xx_uart_write(
int minor,
const char *buf,
- int len
+ size_t len
)
{
rtems_cache_flush_multiple_data_lines( buf, len );
@@ -1072,11 +1072,11 @@ m8xx_uart_write(
}
-int
+ssize_t
m8xx_uart_pollWrite(
int minor,
const char *buf,
- int len
+ size_t len
)
{
while (len--) {
@@ -1088,5 +1088,5 @@ m8xx_uart_pollWrite(
TxBd[minor]->length = 1;
TxBd[minor]->status = M8xx_BD_READY | M8xx_BD_WRAP;
}
- return 0;
+ return len;
}
diff --git a/c/src/lib/libcpu/powerpc/mpc8xx/include/console.h b/c/src/lib/libcpu/powerpc/mpc8xx/include/console.h
index e327ad42cd..618ecf081e 100644
--- a/c/src/lib/libcpu/powerpc/mpc8xx/include/console.h
+++ b/c/src/lib/libcpu/powerpc/mpc8xx/include/console.h
@@ -14,8 +14,8 @@ void m8xx_uart_smc_initialize (int minor);
/* Termios callbacks */
int m8xx_uart_pollRead(int minor);
-int m8xx_uart_pollWrite(int minor, const char* buf, int len);
-int m8xx_uart_write(int minor, const char *buf, int len);
+ssize_t m8xx_uart_pollWrite(int minor, const char* buf, size_t len);
+ssize_t m8xx_uart_write(int minor, const char *buf, size_t len);
int m8xx_uart_setAttributes(int, const struct termios* t);