Lines Matching refs:slave
147 u8 slave; in mlx4_gen_slave_eqe() local
152 slave = eqe->slave_id; in mlx4_gen_slave_eqe()
155 if (slave == ALL_SLAVES) { in mlx4_gen_slave_eqe()
173 if (mlx4_GEN_EQE(dev, slave, eqe)) in mlx4_gen_slave_eqe()
175 slave); in mlx4_gen_slave_eqe()
182 static void slave_event(struct mlx4_dev *dev, u8 slave, struct mlx4_eqe *eqe) in slave_event() argument
194 slave); in slave_event()
200 s_eqe->slave_id = slave; in slave_event()
211 static void mlx4_slave_event(struct mlx4_dev *dev, int slave, in mlx4_slave_event() argument
216 if (slave < 0 || slave > dev->persist->num_vfs || in mlx4_slave_event()
217 slave == dev->caps.function || in mlx4_slave_event()
218 !priv->mfunc.master.slave_state[slave].active) in mlx4_slave_event()
221 slave_event(dev, slave, eqe); in mlx4_slave_event()
240 int mlx4_gen_pkey_eqe(struct mlx4_dev *dev, int slave, u8 port) in mlx4_gen_pkey_eqe() argument
245 struct mlx4_slave_state *s_slave = &priv->mfunc.master.slave_state[slave]; in mlx4_gen_pkey_eqe()
254 eqe.event.port_mgmt_change.port = mlx4_phys_to_slave_port(dev, slave, port); in mlx4_gen_pkey_eqe()
256 return mlx4_GEN_EQE(dev, slave, &eqe); in mlx4_gen_pkey_eqe()
260 int mlx4_gen_guid_change_eqe(struct mlx4_dev *dev, int slave, u8 port) in mlx4_gen_guid_change_eqe() argument
265 if (dev->persist->num_vfs < slave) in mlx4_gen_guid_change_eqe()
271 eqe.event.port_mgmt_change.port = mlx4_phys_to_slave_port(dev, slave, port); in mlx4_gen_guid_change_eqe()
273 return mlx4_GEN_EQE(dev, slave, &eqe); in mlx4_gen_guid_change_eqe()
277 int mlx4_gen_port_state_change_eqe(struct mlx4_dev *dev, int slave, u8 port, in mlx4_gen_port_state_change_eqe() argument
281 u8 slave_port = mlx4_phys_to_slave_port(dev, slave, port); in mlx4_gen_port_state_change_eqe()
284 if (dev->persist->num_vfs < slave) in mlx4_gen_port_state_change_eqe()
293 port_subtype_change, slave, port); in mlx4_gen_port_state_change_eqe()
294 return mlx4_GEN_EQE(dev, slave, &eqe); in mlx4_gen_port_state_change_eqe()
298 enum slave_port_state mlx4_get_slave_port_state(struct mlx4_dev *dev, int slave, u8 port) in mlx4_get_slave_port_state() argument
302 struct mlx4_active_ports actv_ports = mlx4_get_active_ports(dev, slave); in mlx4_get_slave_port_state()
304 if (slave >= dev->num_slaves || port > dev->caps.num_ports || in mlx4_get_slave_port_state()
307 __func__, slave, port); in mlx4_get_slave_port_state()
310 return s_state[slave].port_state[port]; in mlx4_get_slave_port_state()
314 static int mlx4_set_slave_port_state(struct mlx4_dev *dev, int slave, u8 port, in mlx4_set_slave_port_state() argument
319 struct mlx4_active_ports actv_ports = mlx4_get_active_ports(dev, slave); in mlx4_set_slave_port_state()
321 if (slave >= dev->num_slaves || port > dev->caps.num_ports || in mlx4_set_slave_port_state()
324 __func__, slave, port); in mlx4_set_slave_port_state()
327 s_state[slave].port_state[port] = state; in mlx4_set_slave_port_state()
353 int set_and_calc_slave_port_state(struct mlx4_dev *dev, int slave, in set_and_calc_slave_port_state() argument
361 struct mlx4_active_ports actv_ports = mlx4_get_active_ports(dev, slave); in set_and_calc_slave_port_state()
363 mlx4_get_slave_port_state(dev, slave, port); in set_and_calc_slave_port_state()
367 if (slave >= dev->num_slaves || port > dev->caps.num_ports || in set_and_calc_slave_port_state()
370 __func__, slave, port); in set_and_calc_slave_port_state()
374 ctx = &priv->mfunc.master.slave_state[slave]; in set_and_calc_slave_port_state()
380 mlx4_set_slave_port_state(dev, slave, port, in set_and_calc_slave_port_state()
385 mlx4_set_slave_port_state(dev, slave, port, in set_and_calc_slave_port_state()
388 mlx4_set_slave_port_state(dev, slave, port, in set_and_calc_slave_port_state()
395 mlx4_set_slave_port_state(dev, slave, port, in set_and_calc_slave_port_state()
400 mlx4_set_slave_port_state(dev, slave, port, in set_and_calc_slave_port_state()
407 __func__, slave, port); in set_and_calc_slave_port_state()
410 ret = mlx4_get_slave_port_state(dev, slave, port); in set_and_calc_slave_port_state()
489 int slave = 0; in mlx4_eq_int() local
526 & 0xffffff, &slave); in mlx4_eq_int()
534 if (!ret && slave != dev->caps.function) { in mlx4_eq_int()
535 mlx4_slave_event(dev, slave, eqe); in mlx4_eq_int()
554 &slave); in mlx4_eq_int()
562 __func__, slave, in mlx4_eq_int()
566 if (!ret && slave != dev->caps.function) { in mlx4_eq_int()
569 eqe->subtype, slave); in mlx4_eq_int()
570 mlx4_slave_event(dev, slave, eqe); in mlx4_eq_int()
670 & 0xffffff, &slave); in mlx4_eq_int()
678 if (!ret && slave != dev->caps.function) { in mlx4_eq_int()
679 mlx4_slave_event(dev, slave, eqe); in mlx4_eq_int()
858 int mlx4_MAP_EQ_wrapper(struct mlx4_dev *dev, int slave, in mlx4_MAP_EQ_wrapper() argument
866 priv->mfunc.master.slave_state[slave].event_eq; in mlx4_MAP_EQ_wrapper()
873 if (slave == dev->caps.function) in mlx4_MAP_EQ_wrapper()