21
21
* software in any way with any other Broadcom software provided under a license
22
22
* other than the GPL, without Broadcom's express prior written consent.
23
23
*
24
- * $Id: bcmsdh_linux.c 281719 2011-09-02 23:50:57Z $
24
+ * $Id: bcmsdh_linux.c,v 1.72.6.5 2010-12-23 01:13:15 Exp $
25
25
*/
26
26
27
27
/**
@@ -238,9 +238,9 @@ int bcmsdh_probe(struct device *dev)
238
238
/* chain SDIO Host Controller info together */
239
239
sdhc -> next = sdhcinfo ;
240
240
sdhcinfo = sdhc ;
241
-
242
241
/* Read the vendor/device ID from the CIS */
243
242
vendevid = bcmsdh_query_device (sdh );
243
+
244
244
/* try to attach to the target device */
245
245
if (!(sdhc -> ch = drvinfo .attach ((vendevid >> 16 ),
246
246
(vendevid & 0xFFFF ), 0 , 0 , 0 , 0 ,
@@ -274,7 +274,6 @@ int bcmsdh_remove(struct device *dev)
274
274
sdhc = sdhcinfo ;
275
275
drvinfo .detach (sdhc -> ch );
276
276
bcmsdh_detach (sdhc -> osh , sdhc -> sdh );
277
-
278
277
/* find the SDIO Host Controller state for this pdev and take it out from the list */
279
278
for (sdhc = sdhcinfo , prev = NULL ; sdhc ; sdhc = sdhc -> next ) {
280
279
if (sdhc -> dev == (void * )dev ) {
@@ -291,6 +290,7 @@ int bcmsdh_remove(struct device *dev)
291
290
return 0 ;
292
291
}
293
292
293
+
294
294
/* release SDIO Host Controller info */
295
295
osh = sdhc -> osh ;
296
296
MFREE (osh , sdhc , sizeof (bcmsdh_hc_t ));
@@ -599,14 +599,9 @@ static irqreturn_t wlan_oob_irq(int irq, void *dev_id)
599
599
600
600
dhdp = (dhd_pub_t * )dev_get_drvdata (sdhcinfo -> dev );
601
601
602
- #ifdef HW_OOB
603
602
bcmsdh_oob_intr_set (0 );
604
- #endif
605
603
606
604
if (dhdp == NULL ) {
607
- #ifndef HW_OOB
608
- bcmsdh_oob_intr_set (0 );
609
- #endif
610
605
SDLX_MSG (("Out of band GPIO interrupt fired way too early\n" ));
611
606
return IRQ_HANDLED ;
612
607
}
@@ -616,6 +611,13 @@ static irqreturn_t wlan_oob_irq(int irq, void *dev_id)
616
611
return IRQ_HANDLED ;
617
612
}
618
613
614
+ void * bcmsdh_get_drvdata (void )
615
+ {
616
+ if (!sdhcinfo )
617
+ return NULL ;
618
+ return dev_get_drvdata (sdhcinfo -> dev );
619
+ }
620
+
619
621
int bcmsdh_register_oob_intr (void * dhdp )
620
622
{
621
623
int error = 0 ;
@@ -643,13 +645,6 @@ int bcmsdh_register_oob_intr(void * dhdp)
643
645
return 0 ;
644
646
}
645
647
646
- void * bcmsdh_get_drvdata (void )
647
- {
648
- if (!sdhcinfo )
649
- return NULL ;
650
- return dev_get_drvdata (sdhcinfo -> dev );
651
- }
652
-
653
648
void bcmsdh_set_irq (int flag )
654
649
{
655
650
if (sdhcinfo -> oob_irq_registered && sdhcinfo -> oob_irq_enable_flag != flag ) {
@@ -676,7 +671,6 @@ void bcmsdh_unregister_oob_intr(void)
676
671
}
677
672
}
678
673
#endif /* defined(OOB_INTR_ONLY) */
679
-
680
674
/* Module parameters specific to each host-controller driver */
681
675
682
676
extern uint sd_msglevel ; /* Debug message level */
@@ -700,9 +694,6 @@ module_param(sd_hiok, uint, 0);
700
694
extern uint sd_f2_blocksize ;
701
695
module_param (sd_f2_blocksize , int , 0 );
702
696
703
- #ifdef BCMSDIOH_STD
704
- module_param (sd_uhsimode , int , 0 );
705
- #endif
706
697
707
698
#ifdef BCMSDH_MODULE
708
699
EXPORT_SYMBOL (bcmsdh_attach );
0 commit comments