This is the mail archive of the
ecos-patches@sourceware.org
mailing list for the eCos project.
Re: RLTK8139 interrupt priority patch
Hello Andrew
Andrew Lunn wrote:
When I used an IRL level in SH4, interrupt is not called for ever if
a level was zero. This patch can change priority sequence by
private variable. An initial value is set in 0 with a compiler.
When a change is necessary, a developer initializes this variable.
How does the developer initialize this variable? Looking at the
dreamcast example, it does not look easy. You cannot do it in
CYGHWR_RLTK_8139_PLF_INIT() because that is called after the interrupt
has been created.
Could you show us how you do it for your platform?
Because it is not possible in CYGHWR_RLTK_8139_PLF_INIT(), I define
it in a static struct in an INL file.
Please look at the following as an example.
// Example edit file
devs/eth/sh/dreamcast/include/devs_eth_sh_dreamcast_rltk8139.inl
// Before editing.
static Rltk8139_t rltk8139_eth0_priv_data = {
0, 0, 0
};
// After editing
static Rltk8139_t rltk8139_eth0_priv_data = {
device_num: (cyg_uint32)0,
rx_ring: (cyg_uint8 *)0,
tx_buffer: (cyg_uint8 *)0,
isr_priority: (cyg_priority_t)13
};
Thanks
Hajime Ishitani
.