<html>
<head>
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
OK. When my build finishes, I will commit this unless someone<br>
beats me to it.<br>
<br>
--joel<br>
<div class="moz-cite-prefix">On 10/13/2014 1:30 PM, Hesham Moustafa
wrote:<br>
</div>
<blockquote
cite="mid:CA+wsVCA6bFYm8eLTfuN3uqThkQh83SqpsK4LWZwwtaQzMF+t9Q@mail.gmail.com"
type="cite">
<div dir="ltr"><br>
<div class="gmail_extra"><br>
<div class="gmail_quote">On Mon, Oct 13, 2014 at 8:24 PM, Joel
Sherrill <span dir="ltr"><<a moz-do-not-send="true"
href="mailto:joel.sherrill@oarcorp.com" target="_blank">joel.sherrill@oarcorp.com</a>></span>
wrote:<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px
0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<div bgcolor="#FFFFFF" text="#000000"><span class=""> <br>
<div>On 10/13/2014 1:06 PM, Hesham Moustafa wrote:<br>
</div>
<blockquote type="cite">
<div dir="ltr">Please have a look at this patch.</div>
<div class="gmail_extra"><br>
<div class="gmail_quote">On Fri, Oct 10, 2014 at
6:45 PM, Hesham ALMatary <span dir="ltr"><<a
moz-do-not-send="true"
href="mailto:heshamelmatary@gmail.com"
target="_blank">heshamelmatary@gmail.com</a>></span>
wrote:<br>
<blockquote class="gmail_quote"
style="margin:0px 0px 0px
0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">---<br>
c/src/lib/libbsp/or1k/or1ksim/clock/clockdrv.c
| 2 +-<br>
c/src/lib/libbsp/or1k/or1ksim/console/uart.c
| 15 +++++++++++----<br>
2 files changed, 12 insertions(+), 5
deletions(-)<br>
<br>
diff --git
a/c/src/lib/libbsp/or1k/or1ksim/clock/clockdrv.c
b/c/src/lib/libbsp/or1k/or1ksim/clock/clockdrv.c<br>
index ad49d07..4169a11 100644<br>
---
a/c/src/lib/libbsp/or1k/or1ksim/clock/clockdrv.c<br>
+++
b/c/src/lib/libbsp/or1k/or1ksim/clock/clockdrv.c<br>
@@ -137,8 +137,8 @@ CPU_Counter_ticks
_CPU_Counter_difference(<br>
<br>
#define Clock_driver_support_install_isr(isr,
old_isr) \<br>
do {
\<br>
- or1ksim_clock_handler_install(isr,
old_isr); \<br>
old_isr = NULL;
\<br>
+ or1ksim_clock_handler_install(isr,
old_isr); \<br>
} while (0)<br>
<br>
</blockquote>
</div>
</div>
</blockquote>
</span> Is old_isr an ISR or a pointer to an ISR method?
I was wondering<br>
if that should be *old_isr and be set in
or1k_clock_handler_install.</div>
</blockquote>
<div>It's a pointer to the ISR method, and initially 0
(Null) within the ISR vector table. Since
Clock_driver_support_install_isr is first called when
installing the clock driver, old_isr would be always Null.
Other BSPs do the same thing. </div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px
0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<div bgcolor="#FFFFFF" text="#000000"><span class=""><br>
<blockquote type="cite">
<div class="gmail_extra">
<div class="gmail_quote">
<blockquote class="gmail_quote"
style="margin:0px 0px 0px
0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
#define
Clock_driver_support_shutdown_hardware()
or1ksim_clock_cleanup()<br>
diff --git
a/c/src/lib/libbsp/or1k/or1ksim/console/uart.c
b/c/src/lib/libbsp/or1k/or1ksim/console/uart.c<br>
index 7ceca81..31cdce6 100644<br>
---
a/c/src/lib/libbsp/or1k/or1ksim/console/uart.c<br>
+++
b/c/src/lib/libbsp/or1k/or1ksim/console/uart.c<br>
</blockquote>
</div>
</div>
</blockquote>
</span> This all looks right. I did this same thing to a
LOT of BSPs. :(
<div>
<div class="h5"><br>
<blockquote type="cite">
<div class="gmail_extra">
<div class="gmail_quote">
<blockquote class="gmail_quote"
style="margin:0px 0px 0px
0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
@@ -21,6 +21,14 @@<br>
#include <bsp/uart.h><br>
#include <rtems/score/isr.h><br>
<br>
+static void uart_initialize(int minor);<br>
+static int uart_first_open(int major, int
minor, void *arg);<br>
+static int uart_last_close(int major, int
minor, void *arg);<br>
+static int uart_read_polled(int minor);<br>
+static ssize_t uart_write(int minor, const
char *buf, size_t len);<br>
+static void uart_write_polled(int minor,
char c);<br>
+static int uart_set_attributes(int minor,
const struct termios *t);<br>
+<br>
static rtems_vector_number
uart_get_irq_number(const console_tbl *ct)<br>
{<br>
return ct->ulIntVector;<br>
@@ -86,10 +94,9 @@ static int
uart_last_close(int major, int minor, void
*arg)<br>
return 0;<br>
}<br>
<br>
-static char uart_read_polled(int minor)<br>
+static int uart_read_polled(int minor)<br>
{<br>
unsigned char lsr;<br>
- char c;<br>
<br>
/* Get a character when avaiable */<br>
do {<br>
@@ -120,7 +127,7 @@ static void
uart_write_polled(int minor, char c)<br>
} while ( (lsr & transmit_finished)
!= transmit_finished );<br>
}<br>
<br>
-static ssize_t uart_write_support_polled(<br>
+static ssize_t uart_write(<br>
int minor,<br>
const char *s,<br>
size_t n<br>
@@ -145,7 +152,7 @@ const console_fns
or1ksim_uart_fns = {<br>
.deviceFirstOpen = uart_first_open,<br>
.deviceLastClose = uart_last_close,<br>
.deviceRead = uart_read_polled,<br>
- .deviceWrite = uart_write_support_polled,<br>
+ .deviceWrite = uart_write,<br>
.deviceInitialize = uart_initialize,<br>
.deviceWritePolled = uart_write_polled,<br>
.deviceSetAttributes =
uart_set_attributes,<br>
<span><font color="#888888">--<br>
1.9.3<br>
<br>
</font></span></blockquote>
</div>
<br>
</div>
</blockquote>
<br>
</div>
</div>
<span class=""><font color="#888888">
<pre cols="72">--
Joel Sherrill, Ph.D. Director of Research & Development
<a moz-do-not-send="true" href="mailto:joel.sherrill@OARcorp.com" target="_blank">joel.sherrill@OARcorp.com</a> On-Line Applications Research
Ask me about RTEMS: a free RTOS Huntsville AL 35805
Support Available (256) 722-9985</pre>
</font></span></div>
</blockquote>
</div>
<br>
</div>
</div>
</blockquote>
<br>
<pre class="moz-signature" cols="72">--
Joel Sherrill, Ph.D. Director of Research & Development
<a class="moz-txt-link-abbreviated" href="mailto:joel.sherrill@OARcorp.com">joel.sherrill@OARcorp.com</a> On-Line Applications Research
Ask me about RTEMS: a free RTOS Huntsville AL 35805
Support Available (256) 722-9985</pre>
</body>
</html>