Lines Matching +full:dual +full:- +full:radio
2 * Copyright (c) 2008-2009 Atheros Communications Inc.
38 struct ath5k_hw *ah = common->priv; in ath5k_ahb_eeprom_read()
39 struct platform_device *pdev = to_platform_device(ah->dev); in ath5k_ahb_eeprom_read()
40 struct ar231x_board_config *bcfg = dev_get_platdata(&pdev->dev); in ath5k_ahb_eeprom_read()
43 eeprom = (u16 *) bcfg->radio; in ath5k_ahb_eeprom_read()
44 eeprom_end = ((void *) bcfg->config) + BOARD_CONFIG_BUFSZ; in ath5k_ahb_eeprom_read()
56 struct platform_device *pdev = to_platform_device(ah->dev); in ath5k_hw_read_srev()
57 struct ar231x_board_config *bcfg = dev_get_platdata(&pdev->dev); in ath5k_hw_read_srev()
58 ah->ah_mac_srev = bcfg->devid; in ath5k_hw_read_srev()
64 struct platform_device *pdev = to_platform_device(ah->dev); in ath5k_ahb_eeprom_read_mac()
65 struct ar231x_board_config *bcfg = dev_get_platdata(&pdev->dev); in ath5k_ahb_eeprom_read_mac()
68 if (to_platform_device(ah->dev)->id == 0) in ath5k_ahb_eeprom_read_mac()
69 cfg_mac = bcfg->config->wlan0_mac; in ath5k_ahb_eeprom_read_mac()
71 cfg_mac = bcfg->config->wlan1_mac; in ath5k_ahb_eeprom_read_mac()
87 struct ar231x_board_config *bcfg = dev_get_platdata(&pdev->dev); in ath_ahb_probe()
96 if (!dev_get_platdata(&pdev->dev)) { in ath_ahb_probe()
97 dev_err(&pdev->dev, "no platform data specified\n"); in ath_ahb_probe()
98 ret = -EINVAL; in ath_ahb_probe()
104 dev_err(&pdev->dev, "no memory resource found\n"); in ath_ahb_probe()
105 ret = -ENXIO; in ath_ahb_probe()
109 mem = ioremap(res->start, resource_size(res)); in ath_ahb_probe()
111 dev_err(&pdev->dev, "ioremap failed\n"); in ath_ahb_probe()
112 ret = -ENOMEM; in ath_ahb_probe()
124 dev_err(&pdev->dev, "no memory for ieee80211_hw\n"); in ath_ahb_probe()
125 ret = -ENOMEM; in ath_ahb_probe()
129 ah = hw->priv; in ath_ahb_probe()
130 ah->hw = hw; in ath_ahb_probe()
131 ah->dev = &pdev->dev; in ath_ahb_probe()
132 ah->iobase = mem; in ath_ahb_probe()
133 ah->irq = irq; in ath_ahb_probe()
134 ah->devid = bcfg->devid; in ath_ahb_probe()
136 if (bcfg->devid >= AR5K_SREV_AR2315_R6) { in ath_ahb_probe()
150 if (to_platform_device(ah->dev)->id == 0) in ath_ahb_probe()
157 * On a dual-band AR5312, the multiband radio is only in ath_ahb_probe()
158 * used as pass-through. Disable 2 GHz support in the in ath_ahb_probe()
161 if (to_platform_device(ah->dev)->id == 0 && in ath_ahb_probe()
162 (bcfg->config->flags & (BD_WLAN0 | BD_WLAN1)) == in ath_ahb_probe()
164 ah->ah_capabilities.cap_needs_2GHz_ovr = true; in ath_ahb_probe()
166 ah->ah_capabilities.cap_needs_2GHz_ovr = false; in ath_ahb_probe()
171 dev_err(&pdev->dev, "failed to attach device, err=%d\n", ret); in ath_ahb_probe()
172 ret = -ENODEV; in ath_ahb_probe()
190 struct ar231x_board_config *bcfg = dev_get_platdata(&pdev->dev); in ath_ahb_remove()
198 ah = hw->priv; in ath_ahb_remove()
200 if (bcfg->devid >= AR5K_SREV_AR2315_R6) { in ath_ahb_remove()
208 if (to_platform_device(ah->dev)->id == 0) in ath_ahb_remove()
216 iounmap(ah->iobase); in ath_ahb_remove()
226 .name = "ar231x-wmac",