mirror of
https://github.com/followmsi/android_kernel_google_msm.git
synced 2024-11-06 23:17:41 +00:00
[PATCH] parport: section mismatches with HOTPLUG=n
When CONFIG_HOTPLUG=n, parport_pc calls some __devinit == __init code that could be discarded. These calls are made from parport_irq_probe(), which is called from parport_pc_probe_port(), which is an exported symbol, so the calls could (possibly) happen after init time. WARNING: drivers/parport/parport_pc.o - Section mismatch: reference to .init.text: from .text between 'parport_irq_probe' (at offset 0x31d) and 'parport_pc_probe_port' WARNING: drivers/parport/parport_pc.o - Section mismatch: reference to .init.text: from .text between 'parport_irq_probe' (at offset 0x346) and 'parport_pc_probe_port' Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
parent
9711ef9945
commit
4438982f56
1 changed files with 4 additions and 4 deletions
|
@ -1975,7 +1975,7 @@ static int __devinit parport_ECPPS2_supported(struct parport *pb){return 0;}
|
||||||
/* --- IRQ detection -------------------------------------- */
|
/* --- IRQ detection -------------------------------------- */
|
||||||
|
|
||||||
/* Only if supports ECP mode */
|
/* Only if supports ECP mode */
|
||||||
static int __devinit programmable_irq_support(struct parport *pb)
|
static int programmable_irq_support(struct parport *pb)
|
||||||
{
|
{
|
||||||
int irq, intrLine;
|
int irq, intrLine;
|
||||||
unsigned char oecr = inb (ECONTROL (pb));
|
unsigned char oecr = inb (ECONTROL (pb));
|
||||||
|
@ -1992,7 +1992,7 @@ static int __devinit programmable_irq_support(struct parport *pb)
|
||||||
return irq;
|
return irq;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int __devinit irq_probe_ECP(struct parport *pb)
|
static int irq_probe_ECP(struct parport *pb)
|
||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
unsigned long irqs;
|
unsigned long irqs;
|
||||||
|
@ -2020,7 +2020,7 @@ static int __devinit irq_probe_ECP(struct parport *pb)
|
||||||
* This detection seems that only works in National Semiconductors
|
* This detection seems that only works in National Semiconductors
|
||||||
* This doesn't work in SMC, LGS, and Winbond
|
* This doesn't work in SMC, LGS, and Winbond
|
||||||
*/
|
*/
|
||||||
static int __devinit irq_probe_EPP(struct parport *pb)
|
static int irq_probe_EPP(struct parport *pb)
|
||||||
{
|
{
|
||||||
#ifndef ADVANCED_DETECT
|
#ifndef ADVANCED_DETECT
|
||||||
return PARPORT_IRQ_NONE;
|
return PARPORT_IRQ_NONE;
|
||||||
|
@ -2059,7 +2059,7 @@ static int __devinit irq_probe_EPP(struct parport *pb)
|
||||||
#endif /* Advanced detection */
|
#endif /* Advanced detection */
|
||||||
}
|
}
|
||||||
|
|
||||||
static int __devinit irq_probe_SPP(struct parport *pb)
|
static int irq_probe_SPP(struct parport *pb)
|
||||||
{
|
{
|
||||||
/* Don't even try to do this. */
|
/* Don't even try to do this. */
|
||||||
return PARPORT_IRQ_NONE;
|
return PARPORT_IRQ_NONE;
|
||||||
|
|
Loading…
Reference in a new issue