Lines Matching refs:rt2x00dev
55 static bool rt2800pci_hwcrypt_disabled(struct rt2x00_dev *rt2x00dev) in rt2800pci_hwcrypt_disabled() argument
60 static void rt2800pci_mcu_status(struct rt2x00_dev *rt2x00dev, const u8 token) in rt2800pci_mcu_status() argument
68 if (rt2x00_is_soc(rt2x00dev)) in rt2800pci_mcu_status()
72 rt2x00mmio_register_read(rt2x00dev, H2M_MAILBOX_CID, ®); in rt2800pci_mcu_status()
84 rt2x00_err(rt2x00dev, "MCU request failed, no response from hardware\n"); in rt2800pci_mcu_status()
86 rt2x00mmio_register_write(rt2x00dev, H2M_MAILBOX_STATUS, ~0); in rt2800pci_mcu_status()
87 rt2x00mmio_register_write(rt2x00dev, H2M_MAILBOX_CID, ~0); in rt2800pci_mcu_status()
92 struct rt2x00_dev *rt2x00dev = eeprom->data; in rt2800pci_eepromregister_read() local
95 rt2x00mmio_register_read(rt2x00dev, E2PROM_CSR, ®); in rt2800pci_eepromregister_read()
107 struct rt2x00_dev *rt2x00dev = eeprom->data; in rt2800pci_eepromregister_write() local
117 rt2x00mmio_register_write(rt2x00dev, E2PROM_CSR, reg); in rt2800pci_eepromregister_write()
120 static int rt2800pci_read_eeprom_pci(struct rt2x00_dev *rt2x00dev) in rt2800pci_read_eeprom_pci() argument
125 rt2x00mmio_register_read(rt2x00dev, E2PROM_CSR, ®); in rt2800pci_read_eeprom_pci()
127 eeprom.data = rt2x00dev; in rt2800pci_read_eeprom_pci()
147 eeprom_93cx6_multiread(&eeprom, EEPROM_BASE, rt2x00dev->eeprom, in rt2800pci_read_eeprom_pci()
153 static int rt2800pci_efuse_detect(struct rt2x00_dev *rt2x00dev) in rt2800pci_efuse_detect() argument
155 return rt2800_efuse_detect(rt2x00dev); in rt2800pci_efuse_detect()
158 static inline int rt2800pci_read_eeprom_efuse(struct rt2x00_dev *rt2x00dev) in rt2800pci_read_eeprom_efuse() argument
160 return rt2800_read_eeprom_efuse(rt2x00dev); in rt2800pci_read_eeprom_efuse()
166 static char *rt2800pci_get_firmware_name(struct rt2x00_dev *rt2x00dev) in rt2800pci_get_firmware_name() argument
171 if (rt2x00_rt(rt2x00dev, RT3290)) in rt2800pci_get_firmware_name()
177 static int rt2800pci_write_firmware(struct rt2x00_dev *rt2x00dev, in rt2800pci_write_firmware() argument
187 rt2x00mmio_register_write(rt2x00dev, PBF_SYS_CTRL, reg); in rt2800pci_write_firmware()
192 rt2x00mmio_register_multiwrite(rt2x00dev, FIRMWARE_IMAGE_BASE, in rt2800pci_write_firmware()
195 rt2x00mmio_register_write(rt2x00dev, PBF_SYS_CTRL, 0x00000); in rt2800pci_write_firmware()
196 rt2x00mmio_register_write(rt2x00dev, PBF_SYS_CTRL, 0x00001); in rt2800pci_write_firmware()
198 rt2x00mmio_register_write(rt2x00dev, H2M_BBP_AGENT, 0); in rt2800pci_write_firmware()
199 rt2x00mmio_register_write(rt2x00dev, H2M_MAILBOX_CSR, 0); in rt2800pci_write_firmware()
207 static int rt2800pci_enable_radio(struct rt2x00_dev *rt2x00dev) in rt2800pci_enable_radio() argument
211 retval = rt2800mmio_enable_radio(rt2x00dev); in rt2800pci_enable_radio()
216 rt2x00mmio_register_write(rt2x00dev, H2M_MAILBOX_STATUS, ~0); in rt2800pci_enable_radio()
217 rt2x00mmio_register_write(rt2x00dev, H2M_MAILBOX_CID, ~0); in rt2800pci_enable_radio()
219 rt2800_mcu_request(rt2x00dev, MCU_SLEEP, TOKEN_RADIO_OFF, 0xff, 0x02); in rt2800pci_enable_radio()
220 rt2800pci_mcu_status(rt2x00dev, TOKEN_RADIO_OFF); in rt2800pci_enable_radio()
222 rt2800_mcu_request(rt2x00dev, MCU_WAKEUP, TOKEN_WAKEUP, 0, 0); in rt2800pci_enable_radio()
223 rt2800pci_mcu_status(rt2x00dev, TOKEN_WAKEUP); in rt2800pci_enable_radio()
228 static int rt2800pci_set_state(struct rt2x00_dev *rt2x00dev, in rt2800pci_set_state() argument
232 rt2800_mcu_request(rt2x00dev, MCU_WAKEUP, TOKEN_WAKEUP, in rt2800pci_set_state()
234 rt2800pci_mcu_status(rt2x00dev, TOKEN_WAKEUP); in rt2800pci_set_state()
236 rt2x00mmio_register_write(rt2x00dev, H2M_MAILBOX_STATUS, in rt2800pci_set_state()
238 rt2x00mmio_register_write(rt2x00dev, H2M_MAILBOX_CID, in rt2800pci_set_state()
240 rt2800_mcu_request(rt2x00dev, MCU_SLEEP, TOKEN_SLEEP, in rt2800pci_set_state()
247 static int rt2800pci_set_device_state(struct rt2x00_dev *rt2x00dev, in rt2800pci_set_device_state() argument
254 retval = rt2800pci_enable_radio(rt2x00dev); in rt2800pci_set_device_state()
261 rt2800pci_set_state(rt2x00dev, STATE_SLEEP); in rt2800pci_set_device_state()
265 rt2800mmio_toggle_irq(rt2x00dev, state); in rt2800pci_set_device_state()
271 retval = rt2800pci_set_state(rt2x00dev, state); in rt2800pci_set_device_state()
279 rt2x00_err(rt2x00dev, "Device failed to enter state %d (%d)\n", in rt2800pci_set_device_state()
288 static int rt2800pci_read_eeprom(struct rt2x00_dev *rt2x00dev) in rt2800pci_read_eeprom() argument
292 if (rt2800pci_efuse_detect(rt2x00dev)) in rt2800pci_read_eeprom()
293 retval = rt2800pci_read_eeprom_efuse(rt2x00dev); in rt2800pci_read_eeprom()
295 retval = rt2800pci_read_eeprom_pci(rt2x00dev); in rt2800pci_read_eeprom()