Skip to contentSkip to conversation

: fix bug - kernel warning detected if built in Bluetooth CF driver

PATCH In review Bryan Wu 3 participants 4 messages May 12, 2008 – May 13, 2008 Bluetooth drivers

lore
Share & tools
lore

Bryan Wu

author
#0 lore raw

PATCH 1/1 : fix bug - kernel warning detected if built in Bluetooth CF driver

From: Michael Hennerich <[email protected]>

https://blackfin.uclinux.org/gf/project/uclinux-dist/tracker/?action=TrackerItemEdit&tracker_item_id=2650

---
 drivers/bluetooth/bluecard_cs.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
drivers/bluetooth/bluecard_cs.c +1 -1
index bcf5792..3b330a0 100644
@@ -867,7 +867,7 @@ static int bluecard_probe(struct pcmcia_device *link)
 
 	link->io.Attributes1 = IO_DATA_PATH_WIDTH_8;
 	link->io.NumPorts1 = 8;
-	link->irq.Attributes = IRQ_TYPE_EXCLUSIVE | IRQ_HANDLE_PRESENT;
+	link->irq.Attributes = IRQ_TYPE_DYNAMIC_SHARING | IRQ_HANDLE_PRESENT;
 	link->irq.IRQInfo1 = IRQ_LEVEL_ID;
 
 	link->irq.Handler = bluecard_interrupt;
Signature · 1 line
1.5.5
maintainer
#1 lore raw

Hi Brian,

Quoted 13 lines

https://blackfin.uclinux.org/gf/project/uclinux-dist/tracker/?action=TrackerItemEdit&tracker_item_id=2650

---
 drivers/bluetooth/bluecard_cs.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
drivers/bluetooth/bluecard_cs.c +0 -0
index bcf5792..3b330a0 100644

drivers/bluetooth/bluecard_cs.c static int bluecard_probe(struct pcmcia_device *link) · line 873

Quoted 8 lines
drivers/bluetooth/bluecard_cs.c +1 -1
@@ -867,7 +867,7 @@ static int bluecard_probe(struct pcmcia_device *link)
 
 	link->io.Attributes1 = IO_DATA_PATH_WIDTH_8;
 	link->io.NumPorts1 = 8;
-	link->irq.Attributes = IRQ_TYPE_EXCLUSIVE | IRQ_HANDLE_PRESENT;
+	link->irq.Attributes = IRQ_TYPE_DYNAMIC_SHARING | IRQ_HANDLE_PRESENT;
 	link->irq.IRQInfo1 = IRQ_LEVEL_ID;
 
 	link->irq.Handler = bluecard_interrupt;

all Bluetooth PCMCIA drivers use an exclusive IRQ:

bluecard_cs.c: link->irq.Attributes = IRQ_TYPE_EXCLUSIVE | IRQ_HANDLE_PRESENT;
bt3c_cs.c: link->irq.Attributes = IRQ_TYPE_EXCLUSIVE | IRQ_HANDLE_PRESENT;
btuart_cs.c: link->irq.Attributes = IRQ_TYPE_EXCLUSIVE | IRQ_HANDLE_PRESENT;
dtl1_cs.c: link->irq.Attributes = IRQ_TYPE_EXCLUSIVE | IRQ_HANDLE_PRESENT;

There was a reason for that when these drivers where written. I am not sure if it is still valid or not. Does anybody at least have tested that the cards still work if you use a shared IRQ.

Regards

Marcel

#2 lore raw

RE: [PATCH 1/1] [bluetooth]: fix bug - kernel warning detected ifbuilt in Bluetooth CF driver

Quoted 7 lines

-----Original Message-----
From: Marcel Holtmann [mailto:[email protected]]
Sent: Montag, 12. Mai 2008 15:10
To: Bryan Wu
Cc: [email protected]; [email protected];

Michael

Quoted 15 lines

Hennerich
Subject: Re: [PATCH 1/1] [bluetooth]: fix bug - kernel warning detected ifbuilt in Bluetooth CF driver

Hi Brian,

Quoted 1 line

https://blackfin.uclinux.org/gf/project/uclinux-

dist/tracker/?action=TrackerItemEdit&tracker_item_id=2650

Quoted 7 lines
---
 drivers/bluetooth/bluecard_cs.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
Quoted 6 lines

Review

Quoted 1 line
(quoted diff) +0 -0

b/drivers/bluetooth/bluecard_cs.c

drivers/bluetooth/bluecard_cs.c static int bluecard_probe(struct pcmcia_device

Quoted 4 lines

index bcf5792..3b330a0 100644

drivers/bluetooth/bluecard_cs.c +0 -0
@@ -867,7 +867,7 @@ static int bluecard_probe(struct pcmcia_device

*link)

Quoted 5 lines

drivers/bluetooth/bluecard_cs.c static int bluecard_probe(struct pcmcia_device *link)

Quoted 5 lines
drivers/bluetooth/bluecard_cs.c +1 -1
 	link->io.Attributes1 = IO_DATA_PATH_WIDTH_8;
 	link->io.NumPorts1 = 8;
-	link->irq.Attributes = IRQ_TYPE_EXCLUSIVE | IRQ_HANDLE_PRESENT;
+	link->irq.Attributes = IRQ_TYPE_DYNAMIC_SHARING |

IRQ_HANDLE_PRESENT;

Quoted 9 lines

drivers/bluetooth/bluecard_cs.c static int bluecard_probe(struct pcmcia_device *link) · line 873

Quoted 3 lines
drivers/bluetooth/bluecard_cs.c +0 -0
 	link->irq.IRQInfo1 = IRQ_LEVEL_ID;
 
 	link->irq.Handler = bluecard_interrupt;

all Bluetooth PCMCIA drivers use an exclusive IRQ:

bluecard_cs.c: link->irq.Attributes = IRQ_TYPE_EXCLUSIVE |
IRQ_HANDLE_PRESENT;
bt3c_cs.c: link->irq.Attributes = IRQ_TYPE_EXCLUSIVE |

IRQ_HANDLE_PRESENT;

Quoted 3 lines

btuart_cs.c: link->irq.Attributes = IRQ_TYPE_EXCLUSIVE |
IRQ_HANDLE_PRESENT;
dtl1_cs.c: link->irq.Attributes = IRQ_TYPE_EXCLUSIVE |

IRQ_HANDLE_PRESENT;

Quoted 3 lines

There was a reason for that when these drivers where written. I am not sure if it is still valid or not. Does anybody at least have tested

that

Quoted 5 lines

the cards still work if you use a shared IRQ.

Regards

Marcel

Please disregard this patch. It's a leftover and not really necessary. Some time ago the Blackfin PCMCIA driver also requested the Card IRQ in order to shut up some irq handling noise. However this is no longer the case.

Best regards,
Michael

author
#3 lore raw

Re: [PATCH 1/1] [bluetooth]: fix bug - kernel warning detected ifbuilt in Bluetooth CF driver

Quoted 57 lines · Michael
Quoted 8 lines

-----Original Message-----
From: Marcel Holtmann [mailto:[email protected]]
Sent: Montag, 12. Mai 2008 15:10
To: Bryan Wu
Cc: [email protected]; [email protected];

Michael

Quoted 15 lines

Hennerich
Subject: Re: [PATCH 1/1] [bluetooth]: fix bug - kernel warning detected ifbuilt in Bluetooth CF driver

Hi Brian,

Quoted 1 line

https://blackfin.uclinux.org/gf/project/uclinux-

dist/tracker/?action=TrackerItemEdit&tracker_item_id=2650

Quoted 7 lines
---
 drivers/bluetooth/bluecard_cs.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
Quoted 6 lines

Review

Quoted 1 line
(quoted diff) +0 -0

b/drivers/bluetooth/bluecard_cs.c

drivers/bluetooth/bluecard_cs.c static int bluecard_probe(struct pcmcia_device

Quoted 4 lines

index bcf5792..3b330a0 100644

drivers/bluetooth/bluecard_cs.c +0 -0
@@ -867,7 +867,7 @@ static int bluecard_probe(struct pcmcia_device

*link)

Quoted 5 lines

drivers/bluetooth/bluecard_cs.c static int bluecard_probe(struct pcmcia_device *link)

Quoted 5 lines
drivers/bluetooth/bluecard_cs.c +1 -1
     link->io.Attributes1 = IO_DATA_PATH_WIDTH_8;
     link->io.NumPorts1 = 8;
-    link->irq.Attributes = IRQ_TYPE_EXCLUSIVE | IRQ_HANDLE_PRESENT;
+    link->irq.Attributes = IRQ_TYPE_DYNAMIC_SHARING |

IRQ_HANDLE_PRESENT;

Quoted 9 lines

drivers/bluetooth/bluecard_cs.c static int bluecard_probe(struct pcmcia_device *link) · line 873

Quoted 3 lines
drivers/bluetooth/bluecard_cs.c +0 -0
     link->irq.IRQInfo1 = IRQ_LEVEL_ID;
 
     link->irq.Handler = bluecard_interrupt;

all Bluetooth PCMCIA drivers use an exclusive IRQ:

bluecard_cs.c: link->irq.Attributes = IRQ_TYPE_EXCLUSIVE | IRQ_HANDLE_PRESENT;
bt3c_cs.c: link->irq.Attributes = IRQ_TYPE_EXCLUSIVE |

IRQ_HANDLE_PRESENT;

Quoted 3 lines

btuart_cs.c: link->irq.Attributes = IRQ_TYPE_EXCLUSIVE |
IRQ_HANDLE_PRESENT;
dtl1_cs.c: link->irq.Attributes = IRQ_TYPE_EXCLUSIVE |

IRQ_HANDLE_PRESENT;

Quoted 3 lines

There was a reason for that when these drivers where written. I am not sure if it is still valid or not. Does anybody at least have tested

that

Quoted 2 lines

the cards still work if you use a shared IRQ.

Quoted 9 lines
Quoted 3 lines

Regards

Marcel

Please disregard this patch. It's a leftover and not really necessary. Some time ago the Blackfin PCMCIA driver also requested the Card IRQ in order to shut up some irq handling noise. However this is no longer the case.

OK, no problem. I will drop this.

Thanks
-Bryan