diff options
author | Peter Denison <openwrt@marshadder.org> | 2008-06-04 19:47:48 +0000 |
---|---|---|
committer | Peter Denison <openwrt@marshadder.org> | 2008-06-04 19:47:48 +0000 |
commit | 86e3679130d3b325b9532ffd002ae31559de0ea5 (patch) | |
tree | 5ea8b6867078a974baa98cc68115a0426a086319 /package/b43/src/pcmcia.c | |
parent | 47e2253544b7e3e88b1cebd6b7e678ab2a245a22 (diff) | |
download | upstream-86e3679130d3b325b9532ffd002ae31559de0ea5.tar.gz upstream-86e3679130d3b325b9532ffd002ae31559de0ea5.tar.bz2 upstream-86e3679130d3b325b9532ffd002ae31559de0ea5.zip |
Update b43 from compat-wireless-2008-05-26 codebase
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@11358 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/b43/src/pcmcia.c')
-rw-r--r-- | package/b43/src/pcmcia.c | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/package/b43/src/pcmcia.c b/package/b43/src/pcmcia.c index b79a6bd539..b8aa16307f 100644 --- a/package/b43/src/pcmcia.c +++ b/package/b43/src/pcmcia.c @@ -43,14 +43,16 @@ MODULE_DEVICE_TABLE(pcmcia, b43_pcmcia_tbl); #ifdef CONFIG_PM static int b43_pcmcia_suspend(struct pcmcia_device *dev) { - //TODO - return 0; + struct ssb_bus *ssb = dev->priv; + + return ssb_bus_suspend(ssb); } static int b43_pcmcia_resume(struct pcmcia_device *dev) { - //TODO - return 0; + struct ssb_bus *ssb = dev->priv; + + return ssb_bus_resume(ssb); } #else /* CONFIG_PM */ # define b43_pcmcia_suspend NULL @@ -91,6 +93,8 @@ static int __devinit b43_pcmcia_probe(struct pcmcia_device *dev) dev->conf.ConfigBase = parse.config.base; dev->conf.Present = parse.config.rmask[0]; + dev->conf.Attributes = CONF_ENABLE_IRQ; + dev->conf.IntType = INT_MEMORY_AND_IO; dev->io.BasePort2 = 0; dev->io.NumPorts2 = 0; @@ -112,8 +116,8 @@ static int __devinit b43_pcmcia_probe(struct pcmcia_device *dev) if (res != CS_SUCCESS) goto err_disable; - dev->irq.Attributes = IRQ_TYPE_DYNAMIC_SHARING | IRQ_FIRST_SHARED; - dev->irq.IRQInfo1 = IRQ_LEVEL_ID | IRQ_SHARE_ID; + dev->irq.Attributes = IRQ_TYPE_DYNAMIC_SHARING; + dev->irq.IRQInfo1 = IRQ_LEVEL_ID; dev->irq.Handler = NULL; /* The handler is registered later. */ dev->irq.Instance = NULL; res = pcmcia_request_irq(dev, &dev->irq); |