diff options
Diffstat (limited to 'drivers/net/wireless/libertas/if_cs.c')
-rw-r--r-- | drivers/net/wireless/libertas/if_cs.c | 16 |
1 files changed, 5 insertions, 11 deletions
diff --git a/drivers/net/wireless/libertas/if_cs.c b/drivers/net/wireless/libertas/if_cs.c index 031f3e6da3c9..2c6f28ac5197 100644 --- a/drivers/net/wireless/libertas/if_cs.c +++ b/drivers/net/wireless/libertas/if_cs.c | |||
@@ -794,20 +794,12 @@ static void if_cs_release(struct pcmcia_device *p_dev) | |||
794 | * insertion event. | 794 | * insertion event. |
795 | */ | 795 | */ |
796 | 796 | ||
797 | static int if_cs_ioprobe(struct pcmcia_device *p_dev, | 797 | static int if_cs_ioprobe(struct pcmcia_device *p_dev, void *priv_data) |
798 | cistpl_cftable_entry_t *cfg, | ||
799 | cistpl_cftable_entry_t *dflt, | ||
800 | void *priv_data) | ||
801 | { | 798 | { |
799 | p_dev->resource[0]->flags &= ~IO_DATA_PATH_WIDTH; | ||
802 | p_dev->resource[0]->flags |= IO_DATA_PATH_WIDTH_AUTO; | 800 | p_dev->resource[0]->flags |= IO_DATA_PATH_WIDTH_AUTO; |
803 | p_dev->resource[0]->start = cfg->io.win[0].base; | ||
804 | p_dev->resource[0]->end = cfg->io.win[0].len; | ||
805 | 801 | ||
806 | /* Do we need to allocate an interrupt? */ | 802 | if (p_dev->resource[1]->end) { |
807 | p_dev->config_flags |= CONF_ENABLE_IRQ; | ||
808 | |||
809 | /* IO window settings */ | ||
810 | if (cfg->io.nwin != 1) { | ||
811 | lbs_pr_err("wrong CIS (check number of IO windows)\n"); | 803 | lbs_pr_err("wrong CIS (check number of IO windows)\n"); |
812 | return -ENODEV; | 804 | return -ENODEV; |
813 | } | 805 | } |
@@ -833,6 +825,8 @@ static int if_cs_probe(struct pcmcia_device *p_dev) | |||
833 | card->p_dev = p_dev; | 825 | card->p_dev = p_dev; |
834 | p_dev->priv = card; | 826 | p_dev->priv = card; |
835 | 827 | ||
828 | p_dev->config_flags |= CONF_ENABLE_IRQ | CONF_AUTO_SET_IO; | ||
829 | |||
836 | if (pcmcia_loop_config(p_dev, if_cs_ioprobe, NULL)) { | 830 | if (pcmcia_loop_config(p_dev, if_cs_ioprobe, NULL)) { |
837 | lbs_pr_err("error in pcmcia_loop_config\n"); | 831 | lbs_pr_err("error in pcmcia_loop_config\n"); |
838 | goto out1; | 832 | goto out1; |