serial: cyclades: allow overriding ISA defaults also when the driver is built-in
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
a357e777b5
commit
2090436357
@@ -158,13 +158,11 @@ static unsigned int cy_isa_addresses[] = {
|
|||||||
|
|
||||||
#define NR_ISA_ADDRS ARRAY_SIZE(cy_isa_addresses)
|
#define NR_ISA_ADDRS ARRAY_SIZE(cy_isa_addresses)
|
||||||
|
|
||||||
#ifdef MODULE
|
|
||||||
static long maddr[NR_CARDS];
|
static long maddr[NR_CARDS];
|
||||||
static int irq[NR_CARDS];
|
static int irq[NR_CARDS];
|
||||||
|
|
||||||
module_param_array(maddr, long, NULL, 0);
|
module_param_array(maddr, long, NULL, 0);
|
||||||
module_param_array(irq, int, NULL, 0);
|
module_param_array(irq, int, NULL, 0);
|
||||||
#endif
|
|
||||||
|
|
||||||
#endif /* CONFIG_ISA */
|
#endif /* CONFIG_ISA */
|
||||||
|
|
||||||
@@ -3310,13 +3308,10 @@ static int __init cy_detect_isa(void)
|
|||||||
unsigned short cy_isa_irq, nboard;
|
unsigned short cy_isa_irq, nboard;
|
||||||
void __iomem *cy_isa_address;
|
void __iomem *cy_isa_address;
|
||||||
unsigned short i, j, cy_isa_nchan;
|
unsigned short i, j, cy_isa_nchan;
|
||||||
#ifdef MODULE
|
|
||||||
int isparam = 0;
|
int isparam = 0;
|
||||||
#endif
|
|
||||||
|
|
||||||
nboard = 0;
|
nboard = 0;
|
||||||
|
|
||||||
#ifdef MODULE
|
|
||||||
/* Check for module parameters */
|
/* Check for module parameters */
|
||||||
for (i = 0; i < NR_CARDS; i++) {
|
for (i = 0; i < NR_CARDS; i++) {
|
||||||
if (maddr[i] || i) {
|
if (maddr[i] || i) {
|
||||||
@@ -3326,7 +3321,6 @@ static int __init cy_detect_isa(void)
|
|||||||
if (!maddr[i])
|
if (!maddr[i])
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
|
|
||||||
/* scan the address table probing for Cyclom-Y/ISA boards */
|
/* scan the address table probing for Cyclom-Y/ISA boards */
|
||||||
for (i = 0; i < NR_ISA_ADDRS; i++) {
|
for (i = 0; i < NR_ISA_ADDRS; i++) {
|
||||||
@@ -3347,11 +3341,10 @@ static int __init cy_detect_isa(void)
|
|||||||
iounmap(cy_isa_address);
|
iounmap(cy_isa_address);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
#ifdef MODULE
|
|
||||||
if (isparam && i < NR_CARDS && irq[i])
|
if (isparam && i < NR_CARDS && irq[i])
|
||||||
cy_isa_irq = irq[i];
|
cy_isa_irq = irq[i];
|
||||||
else
|
else
|
||||||
#endif
|
|
||||||
/* find out the board's irq by probing */
|
/* find out the board's irq by probing */
|
||||||
cy_isa_irq = detect_isa_irq(cy_isa_address);
|
cy_isa_irq = detect_isa_irq(cy_isa_address);
|
||||||
if (cy_isa_irq == 0) {
|
if (cy_isa_irq == 0) {
|
||||||
|
Reference in New Issue
Block a user