Lines Matching refs:devlink
10 static int ena_devlink_enable_phc_validate(struct devlink *devlink, u32 id, in ena_devlink_enable_phc_validate() argument
14 struct ena_adapter *adapter = ENA_DEVLINK_PRIV(devlink); in ena_devlink_enable_phc_validate()
35 void ena_devlink_params_get(struct devlink *devlink) in ena_devlink_params_get() argument
37 struct ena_adapter *adapter = ENA_DEVLINK_PRIV(devlink); in ena_devlink_params_get()
41 err = devl_param_driverinit_value_get(devlink, in ena_devlink_params_get()
52 void ena_devlink_disable_phc_param(struct devlink *devlink) in ena_devlink_disable_phc_param() argument
57 devl_param_driverinit_value_set(devlink, in ena_devlink_disable_phc_param()
62 static void ena_devlink_port_register(struct devlink *devlink) in ena_devlink_port_register() argument
64 struct ena_adapter *adapter = ENA_DEVLINK_PRIV(devlink); in ena_devlink_port_register()
69 devl_port_register(devlink, &adapter->devlink_port, 0); in ena_devlink_port_register()
72 static void ena_devlink_port_unregister(struct devlink *devlink) in ena_devlink_port_unregister() argument
74 struct ena_adapter *adapter = ENA_DEVLINK_PRIV(devlink); in ena_devlink_port_unregister()
79 static int ena_devlink_reload_down(struct devlink *devlink, in ena_devlink_reload_down() argument
85 struct ena_adapter *adapter = ENA_DEVLINK_PRIV(devlink); in ena_devlink_reload_down()
93 ena_devlink_port_unregister(devlink); in ena_devlink_reload_down()
102 static int ena_devlink_reload_up(struct devlink *devlink, in ena_devlink_reload_up() argument
108 struct ena_adapter *adapter = ENA_DEVLINK_PRIV(devlink); in ena_devlink_reload_up()
121 ena_devlink_port_register(devlink); in ena_devlink_reload_up()
135 static int ena_devlink_configure_params(struct devlink *devlink) in ena_devlink_configure_params() argument
137 struct ena_adapter *adapter = ENA_DEVLINK_PRIV(devlink); in ena_devlink_configure_params()
141 rc = devlink_params_register(devlink, ena_devlink_params, in ena_devlink_configure_params()
149 devl_param_driverinit_value_set(devlink, in ena_devlink_configure_params()
156 struct devlink *ena_devlink_alloc(struct ena_adapter *adapter) in ena_devlink_alloc()
159 struct devlink *devlink; in ena_devlink_alloc() local
161 devlink = devlink_alloc(&ena_devlink_ops, in ena_devlink_alloc()
164 if (!devlink) { in ena_devlink_alloc()
170 ENA_DEVLINK_PRIV(devlink) = adapter; in ena_devlink_alloc()
171 adapter->devlink = devlink; in ena_devlink_alloc()
173 if (ena_devlink_configure_params(devlink)) in ena_devlink_alloc()
176 return devlink; in ena_devlink_alloc()
179 devlink_free(devlink); in ena_devlink_alloc()
183 static void ena_devlink_configure_params_clean(struct devlink *devlink) in ena_devlink_configure_params_clean() argument
185 devlink_params_unregister(devlink, ena_devlink_params, in ena_devlink_configure_params_clean()
189 void ena_devlink_free(struct devlink *devlink) in ena_devlink_free() argument
191 ena_devlink_configure_params_clean(devlink); in ena_devlink_free()
193 devlink_free(devlink); in ena_devlink_free()
196 void ena_devlink_register(struct devlink *devlink, struct device *dev) in ena_devlink_register() argument
198 devl_lock(devlink); in ena_devlink_register()
199 ena_devlink_port_register(devlink); in ena_devlink_register()
200 devl_register(devlink); in ena_devlink_register()
201 devl_unlock(devlink); in ena_devlink_register()
204 void ena_devlink_unregister(struct devlink *devlink) in ena_devlink_unregister() argument
206 devl_lock(devlink); in ena_devlink_unregister()
207 ena_devlink_port_unregister(devlink); in ena_devlink_unregister()
208 devl_unregister(devlink); in ena_devlink_unregister()
209 devl_unlock(devlink); in ena_devlink_unregister()