struct mt76_bus_ops *bus_ops;
struct mt792x_dev *dev;
struct mt76_dev *mdev;
+ void __iomem *regs;
u16 cmd, chipid;
u8 features;
int ret;
if (ret)
return ret;
- ret = pcim_iomap_regions(pdev, BIT(0), pci_name(pdev));
- if (ret)
- return ret;
-
pci_read_config_word(pdev, PCI_COMMAND, &cmd);
if (!(cmd & PCI_COMMAND_MEMORY)) {
cmd |= PCI_COMMAND_MEMORY;
pci_set_drvdata(pdev, mdev);
+ regs = pcim_iomap_region(pdev, 0, pci_name(pdev));
+ if (IS_ERR(regs))
+ return PTR_ERR(regs);
+
dev = container_of(mdev, struct mt792x_dev, mt76);
dev->fw_features = features;
dev->hif_ops = &mt7921_pcie_ops;
dev->irq_map = &irq_map;
- mt76_mmio_init(&dev->mt76, pcim_iomap_table(pdev)[0]);
+ mt76_mmio_init(&dev->mt76, regs);
tasklet_init(&mdev->irq_tasklet, mt792x_irq_tasklet, (unsigned long)dev);
dev->phy.dev = dev;