diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2010-03-12 19:00:54 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2010-03-12 19:00:54 -0500 |
commit | dca1d9f6d7ae428c193f32bd3e9a4ca13176648b (patch) | |
tree | 02de8c3503c1c811754423d2fa3f3b4978044f6e /drivers/pcmcia | |
parent | 9ff99339447de403a46be5e3f23d0c794d540b06 (diff) | |
parent | 91e013827c0bcbb187ecf02213c5446b6f62d445 (diff) |
Merge branch 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm
* 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm: (370 commits)
ARM: S3C2443: Add set_rate and round_rate calls for armdiv clock
ARM: S3C2443: Remove #if 0 for clk_mpll
ARM: S3C2443: Update notes on MPLLREF clock
ARM: S3C2443: Further clksrc-clk conversions
ARM: S3C2443: Change to using plat-samsung clksrc-clk implementation
USB: Fix s3c-hsotg build following Samsung platform header moves
ARM: S3C64XX: Reintroduce unconditional build of audio device
ARM: 5961/1: ux500: fix CLKRST addresses
ARM: 5977/1: arm: Enable backtrace printing on oops when PC is corrupted
ASoC: Fix S3C64xx IIS driver for Samsung header reorg
ARM: S3C2440: Fix plat-s3c24xx move of s3c2440/s3c2442 support
[ARM] pxa: fix typo in mxm8x10.h
[ARM] pxa/raumfeld: set GPIO drive bits for LED pins
[ARM] pxa/zeus: Add support for mcp2515 CAN bus
[ARM] pxa/zeus: Add support for onboard max6369 watchdog
[ARM] pxa/zeus: Add Eurotech as the manufacturer
[ARM] pxa/zeus: Correct the USB host initialisation flags
[ARM] pxa/zeus: Allow usage of 8250-compatible UART in uncompress
[ARM] pxa: refactor uncompress.h for non-PXA uarts
[ARM] mmp2: fix incorrect calling of chip->mask_ack() for 2nd level cascaded IRQs
...
Diffstat (limited to 'drivers/pcmcia')
-rw-r--r-- | drivers/pcmcia/sa1111_generic.c | 25 |
1 files changed, 20 insertions, 5 deletions
diff --git a/drivers/pcmcia/sa1111_generic.c b/drivers/pcmcia/sa1111_generic.c index de6bc333d299..db79ca61cf96 100644 --- a/drivers/pcmcia/sa1111_generic.c +++ b/drivers/pcmcia/sa1111_generic.c | |||
@@ -21,11 +21,18 @@ | |||
21 | 21 | ||
22 | #include "sa1111_generic.h" | 22 | #include "sa1111_generic.h" |
23 | 23 | ||
24 | #define IDX_IRQ_S0_READY_NINT (0) | ||
25 | #define IDX_IRQ_S0_CD_VALID (1) | ||
26 | #define IDX_IRQ_S0_BVD1_STSCHG (2) | ||
27 | #define IDX_IRQ_S1_READY_NINT (3) | ||
28 | #define IDX_IRQ_S1_CD_VALID (4) | ||
29 | #define IDX_IRQ_S1_BVD1_STSCHG (5) | ||
30 | |||
24 | static struct pcmcia_irqs irqs[] = { | 31 | static struct pcmcia_irqs irqs[] = { |
25 | { 0, IRQ_S0_CD_VALID, "SA1111 PCMCIA card detect" }, | 32 | { 0, NO_IRQ, "SA1111 PCMCIA card detect" }, |
26 | { 0, IRQ_S0_BVD1_STSCHG, "SA1111 PCMCIA BVD1" }, | 33 | { 0, NO_IRQ, "SA1111 PCMCIA BVD1" }, |
27 | { 1, IRQ_S1_CD_VALID, "SA1111 CF card detect" }, | 34 | { 1, NO_IRQ, "SA1111 CF card detect" }, |
28 | { 1, IRQ_S1_BVD1_STSCHG, "SA1111 CF BVD1" }, | 35 | { 1, NO_IRQ, "SA1111 CF BVD1" }, |
29 | }; | 36 | }; |
30 | 37 | ||
31 | static int sa1111_pcmcia_hw_init(struct soc_pcmcia_socket *skt) | 38 | static int sa1111_pcmcia_hw_init(struct soc_pcmcia_socket *skt) |
@@ -136,7 +143,9 @@ int sa1111_pcmcia_add(struct sa1111_dev *dev, struct pcmcia_low_level *ops, | |||
136 | s->soc.ops = ops; | 143 | s->soc.ops = ops; |
137 | s->soc.socket.owner = ops->owner; | 144 | s->soc.socket.owner = ops->owner; |
138 | s->soc.socket.dev.parent = &dev->dev; | 145 | s->soc.socket.dev.parent = &dev->dev; |
139 | s->soc.socket.pci_irq = s->soc.nr ? IRQ_S1_READY_NINT : IRQ_S0_READY_NINT; | 146 | s->soc.socket.pci_irq = s->soc.nr ? |
147 | dev->irq[IDX_IRQ_S0_READY_NINT] : | ||
148 | dev->irq[IDX_IRQ_S1_READY_NINT]; | ||
140 | s->dev = dev; | 149 | s->dev = dev; |
141 | 150 | ||
142 | ret = add(&s->soc); | 151 | ret = add(&s->soc); |
@@ -162,6 +171,12 @@ static int pcmcia_probe(struct sa1111_dev *dev) | |||
162 | 171 | ||
163 | base = dev->mapbase; | 172 | base = dev->mapbase; |
164 | 173 | ||
174 | /* Initialize PCMCIA IRQs */ | ||
175 | irqs[0].irq = dev->irq[IDX_IRQ_S0_CD_VALID]; | ||
176 | irqs[1].irq = dev->irq[IDX_IRQ_S0_BVD1_STSCHG]; | ||
177 | irqs[2].irq = dev->irq[IDX_IRQ_S1_CD_VALID]; | ||
178 | irqs[3].irq = dev->irq[IDX_IRQ_S1_BVD1_STSCHG]; | ||
179 | |||
165 | /* | 180 | /* |
166 | * Initialise the suspend state. | 181 | * Initialise the suspend state. |
167 | */ | 182 | */ |