|
@@ -58,7 +58,7 @@ static inline int get_prev_map_irq(int cb_no)
|
|
{
|
|
{
|
|
int i;
|
|
int i;
|
|
|
|
|
|
- for (i = 0; i < cb->int_max; i++)
|
|
|
|
|
|
+ for (i = cb->int_max - 1; i >= 0; i--)
|
|
if (cb->irq_map[i] == cb_no)
|
|
if (cb->irq_map[i] == cb_no)
|
|
return i;
|
|
return i;
|
|
|
|
|
|
@@ -69,7 +69,7 @@ static inline int allocate_free_irq(int cb_no)
|
|
{
|
|
{
|
|
int i;
|
|
int i;
|
|
|
|
|
|
- for (i = 0; i < cb->int_max; i++) {
|
|
|
|
|
|
+ for (i = cb->int_max - 1; i >= 0; i--) {
|
|
if (cb->irq_map[i] == IRQ_FREE) {
|
|
if (cb->irq_map[i] == IRQ_FREE) {
|
|
cb->irq_map[i] = cb_no;
|
|
cb->irq_map[i] = cb_no;
|
|
return i;
|
|
return i;
|