Lines Matching refs:idev
16 struct ionic_dev *idev = &ionic->idev; in ionic_init_devinfo() local
18 idev->dev_info.asic_type = ioread8(&idev->dev_info_regs->asic_type); in ionic_init_devinfo()
19 idev->dev_info.asic_rev = ioread8(&idev->dev_info_regs->asic_rev); in ionic_init_devinfo()
21 memcpy_fromio(idev->dev_info.fw_version, in ionic_init_devinfo()
22 idev->dev_info_regs->fw_version, in ionic_init_devinfo()
25 memcpy_fromio(idev->dev_info.serial_num, in ionic_init_devinfo()
26 idev->dev_info_regs->serial_num, in ionic_init_devinfo()
29 idev->dev_info.fw_version[IONIC_DEVINFO_FWVERS_BUFLEN] = 0; in ionic_init_devinfo()
30 idev->dev_info.serial_num[IONIC_DEVINFO_SERIAL_BUFLEN] = 0; in ionic_init_devinfo()
32 dev_dbg(ionic->dev, "fw_version %s\n", idev->dev_info.fw_version); in ionic_init_devinfo()
39 struct ionic_dev *idev = &ionic->idev; in ionic_dev_setup() local
55 idev->dev_info_regs = bar->vaddr + IONIC_BAR0_DEV_INFO_REGS_OFFSET; in ionic_dev_setup()
56 idev->dev_cmd_regs = bar->vaddr + IONIC_BAR0_DEV_CMD_REGS_OFFSET; in ionic_dev_setup()
57 idev->intr_status = bar->vaddr + IONIC_BAR0_INTR_STATUS_OFFSET; in ionic_dev_setup()
58 idev->intr_ctrl = bar->vaddr + IONIC_BAR0_INTR_CTRL_OFFSET; in ionic_dev_setup()
60 sig = ioread32(&idev->dev_info_regs->signature); in ionic_dev_setup()
75 idev->db_pages = bar->vaddr; in ionic_dev_setup()
76 idev->phy_db_pages = bar->bus_addr; in ionic_dev_setup()
87 u8 ionic_dev_cmd_status(struct ionic_dev *idev) in ionic_dev_cmd_status() argument
89 return ioread8(&idev->dev_cmd_regs->comp.comp.status); in ionic_dev_cmd_status()
92 bool ionic_dev_cmd_done(struct ionic_dev *idev) in ionic_dev_cmd_done() argument
94 return ioread32(&idev->dev_cmd_regs->done) & IONIC_DEV_CMD_DONE; in ionic_dev_cmd_done()
97 void ionic_dev_cmd_comp(struct ionic_dev *idev, union ionic_dev_cmd_comp *comp) in ionic_dev_cmd_comp() argument
99 memcpy_fromio(comp, &idev->dev_cmd_regs->comp, sizeof(*comp)); in ionic_dev_cmd_comp()
102 void ionic_dev_cmd_go(struct ionic_dev *idev, union ionic_dev_cmd *cmd) in ionic_dev_cmd_go() argument
104 memcpy_toio(&idev->dev_cmd_regs->cmd, cmd, sizeof(*cmd)); in ionic_dev_cmd_go()
105 iowrite32(0, &idev->dev_cmd_regs->done); in ionic_dev_cmd_go()
106 iowrite32(1, &idev->dev_cmd_regs->doorbell); in ionic_dev_cmd_go()
110 void ionic_dev_cmd_identify(struct ionic_dev *idev, u8 ver) in ionic_dev_cmd_identify() argument
117 ionic_dev_cmd_go(idev, &cmd); in ionic_dev_cmd_identify()
120 void ionic_dev_cmd_init(struct ionic_dev *idev) in ionic_dev_cmd_init() argument
127 ionic_dev_cmd_go(idev, &cmd); in ionic_dev_cmd_init()
130 void ionic_dev_cmd_reset(struct ionic_dev *idev) in ionic_dev_cmd_reset() argument
136 ionic_dev_cmd_go(idev, &cmd); in ionic_dev_cmd_reset()
140 void ionic_dev_cmd_port_identify(struct ionic_dev *idev) in ionic_dev_cmd_port_identify() argument
147 ionic_dev_cmd_go(idev, &cmd); in ionic_dev_cmd_port_identify()
150 void ionic_dev_cmd_port_init(struct ionic_dev *idev) in ionic_dev_cmd_port_init() argument
155 .port_init.info_pa = cpu_to_le64(idev->port_info_pa), in ionic_dev_cmd_port_init()
158 ionic_dev_cmd_go(idev, &cmd); in ionic_dev_cmd_port_init()
161 void ionic_dev_cmd_port_reset(struct ionic_dev *idev) in ionic_dev_cmd_port_reset() argument
168 ionic_dev_cmd_go(idev, &cmd); in ionic_dev_cmd_port_reset()
171 void ionic_dev_cmd_port_state(struct ionic_dev *idev, u8 state) in ionic_dev_cmd_port_state() argument
180 ionic_dev_cmd_go(idev, &cmd); in ionic_dev_cmd_port_state()
183 void ionic_dev_cmd_port_speed(struct ionic_dev *idev, u32 speed) in ionic_dev_cmd_port_speed() argument
192 ionic_dev_cmd_go(idev, &cmd); in ionic_dev_cmd_port_speed()
195 void ionic_dev_cmd_port_autoneg(struct ionic_dev *idev, u8 an_enable) in ionic_dev_cmd_port_autoneg() argument
204 ionic_dev_cmd_go(idev, &cmd); in ionic_dev_cmd_port_autoneg()
207 void ionic_dev_cmd_port_fec(struct ionic_dev *idev, u8 fec_type) in ionic_dev_cmd_port_fec() argument
216 ionic_dev_cmd_go(idev, &cmd); in ionic_dev_cmd_port_fec()
219 void ionic_dev_cmd_port_pause(struct ionic_dev *idev, u8 pause_type) in ionic_dev_cmd_port_pause() argument
228 ionic_dev_cmd_go(idev, &cmd); in ionic_dev_cmd_port_pause()
232 void ionic_dev_cmd_lif_identify(struct ionic_dev *idev, u8 type, u8 ver) in ionic_dev_cmd_lif_identify() argument
240 ionic_dev_cmd_go(idev, &cmd); in ionic_dev_cmd_lif_identify()
243 void ionic_dev_cmd_lif_init(struct ionic_dev *idev, u16 lif_index, in ionic_dev_cmd_lif_init() argument
252 ionic_dev_cmd_go(idev, &cmd); in ionic_dev_cmd_lif_init()
255 void ionic_dev_cmd_lif_reset(struct ionic_dev *idev, u16 lif_index) in ionic_dev_cmd_lif_reset() argument
262 ionic_dev_cmd_go(idev, &cmd); in ionic_dev_cmd_lif_reset()
265 void ionic_dev_cmd_adminq_init(struct ionic_dev *idev, struct ionic_qcq *qcq, in ionic_dev_cmd_adminq_init() argument
285 ionic_dev_cmd_go(idev, &cmd); in ionic_dev_cmd_adminq_init()
373 int ionic_q_init(struct ionic_lif *lif, struct ionic_dev *idev, in ionic_q_init() argument
390 q->idev = idev; in ionic_q_init()