OpenWrt – Diff between revs 2 and 3

Subversion Repositories:
Rev:
Show entire fileIgnore whitespace
Rev 2 Rev 3
Line 1... Line 1...
1 --- a/drivers/pcmcia/yenta_socket.c 1 --- a/drivers/pcmcia/yenta_socket.c
2 +++ b/drivers/pcmcia/yenta_socket.c 2 +++ b/drivers/pcmcia/yenta_socket.c
3 @@ -920,6 +920,8 @@ static unsigned int yenta_probe_irq(stru 3 @@ -919,6 +919,8 @@ static unsigned int yenta_probe_irq(stru
4 * Probe for usable interrupts using the force 4 * Probe for usable interrupts using the force
5 * register to generate bogus card status events. 5 * register to generate bogus card status events.
6 */ 6 */
7 +#ifndef CONFIG_BCM47XX 7 +#ifndef CONFIG_BCM47XX
8 + /* WRT54G3G does not like this */ 8 + /* WRT54G3G does not like this */
9 cb_writel(socket, CB_SOCKET_EVENT, -1); 9 cb_writel(socket, CB_SOCKET_EVENT, -1);
10 cb_writel(socket, CB_SOCKET_MASK, CB_CSTSMASK); 10 cb_writel(socket, CB_SOCKET_MASK, CB_CSTSMASK);
11 reg = exca_readb(socket, I365_CSCINT); 11 reg = exca_readb(socket, I365_CSCINT);
12 @@ -935,6 +937,7 @@ static unsigned int yenta_probe_irq(stru 12 @@ -934,6 +936,7 @@ static unsigned int yenta_probe_irq(stru
13 } 13 }
14 cb_writel(socket, CB_SOCKET_MASK, 0); 14 cb_writel(socket, CB_SOCKET_MASK, 0);
15 exca_writeb(socket, I365_CSCINT, reg); 15 exca_writeb(socket, I365_CSCINT, reg);
16 +#endif 16 +#endif
Line 17... Line 17...
17 17
Line 18... Line 18...
18 mask = probe_irq_mask(val) & 0xffff; 18 mask = probe_irq_mask(val) & 0xffff;
19 19
20 @@ -1019,6 +1022,10 @@ static void yenta_get_socket_capabilitie 20 @@ -1018,6 +1021,10 @@ static void yenta_get_socket_capabilitie
Line 21... Line 21...
21 else 21 else
22 socket->socket.irq_mask = 0; 22 socket->socket.irq_mask = 0;
23 23
24 + /* irq mask probing is broken for the WRT54G3G */ 24 + /* irq mask probing is broken for the WRT54G3G */
25 + if (socket->socket.irq_mask == 0) 25 + if (socket->socket.irq_mask == 0)
26 + socket->socket.irq_mask = 0x6f8; 26 + socket->socket.irq_mask = 0x6f8;
27 + 27 +
28 dev_info(&socket->dev->dev, "ISA IRQ mask 0x%04x, PCI irq %d\n", 28 dev_info(&socket->dev->dev, "ISA IRQ mask 0x%04x, PCI irq %d\n",
29 socket->socket.irq_mask, socket->cb_irq); 29 socket->socket.irq_mask, socket->cb_irq);
30 } 30 }
Line 31... Line 31...
31 @@ -1251,6 +1258,15 @@ static int yenta_probe(struct pci_dev *d 31 @@ -1250,6 +1257,15 @@ static int yenta_probe(struct pci_dev *d
32 dev_info(&dev->dev, "Socket status: %08x\n", 32 dev_info(&dev->dev, "Socket status: %08x\n",