Lines Matching refs:devlink
24 struct devlink { struct
51 struct devlink *devlink; argument
344 int (*get)(struct devlink *devlink, u32 id,
346 int (*set)(struct devlink *devlink, u32 id,
348 int (*validate)(struct devlink *devlink, u32 id,
411 int (*reload)(struct devlink *devlink, struct netlink_ext_ack *extack);
414 int (*port_split)(struct devlink *devlink, unsigned int port_index,
416 int (*port_unsplit)(struct devlink *devlink, unsigned int port_index,
418 int (*sb_pool_get)(struct devlink *devlink, unsigned int sb_index,
421 int (*sb_pool_set)(struct devlink *devlink, unsigned int sb_index,
440 int (*sb_occ_snapshot)(struct devlink *devlink,
442 int (*sb_occ_max_clear)(struct devlink *devlink,
453 int (*eswitch_mode_get)(struct devlink *devlink, u16 *p_mode);
454 int (*eswitch_mode_set)(struct devlink *devlink, u16 mode);
455 int (*eswitch_inline_mode_get)(struct devlink *devlink, u8 *p_inline_mode);
456 int (*eswitch_inline_mode_set)(struct devlink *devlink, u8 inline_mode);
457 int (*eswitch_encap_mode_get)(struct devlink *devlink, u8 *p_encap_mode);
458 int (*eswitch_encap_mode_set)(struct devlink *devlink, u8 encap_mode);
461 static inline void *devlink_priv(struct devlink *devlink) in devlink_priv() argument
463 BUG_ON(!devlink); in devlink_priv()
464 return &devlink->priv; in devlink_priv()
467 static inline struct devlink *priv_to_devlink(void *priv) in priv_to_devlink()
470 return container_of(priv, struct devlink, priv); in priv_to_devlink()
477 struct devlink *devlink_alloc(const struct devlink_ops *ops, size_t priv_size);
478 int devlink_register(struct devlink *devlink, struct device *dev);
479 void devlink_unregister(struct devlink *devlink);
480 void devlink_free(struct devlink *devlink);
481 int devlink_port_register(struct devlink *devlink,
496 int devlink_sb_register(struct devlink *devlink, unsigned int sb_index,
500 void devlink_sb_unregister(struct devlink *devlink, unsigned int sb_index);
501 int devlink_dpipe_table_register(struct devlink *devlink,
505 void devlink_dpipe_table_unregister(struct devlink *devlink,
507 int devlink_dpipe_headers_register(struct devlink *devlink,
509 void devlink_dpipe_headers_unregister(struct devlink *devlink);
510 bool devlink_dpipe_table_counter_enabled(struct devlink *devlink,
525 int devlink_resource_register(struct devlink *devlink,
531 void devlink_resources_unregister(struct devlink *devlink,
533 int devlink_resource_size_get(struct devlink *devlink,
536 int devlink_dpipe_table_resource_set(struct devlink *devlink,
539 void devlink_resource_occ_get_register(struct devlink *devlink,
543 void devlink_resource_occ_get_unregister(struct devlink *devlink,
545 int devlink_params_register(struct devlink *devlink,
548 void devlink_params_unregister(struct devlink *devlink,
551 int devlink_param_driverinit_value_get(struct devlink *devlink, u32 param_id,
553 int devlink_param_driverinit_value_set(struct devlink *devlink, u32 param_id,
555 void devlink_param_value_changed(struct devlink *devlink, u32 param_id);
558 struct devlink_region *devlink_region_create(struct devlink *devlink,
563 u32 devlink_region_shapshot_id_get(struct devlink *devlink);
570 static inline struct devlink *devlink_alloc(const struct devlink_ops *ops, in devlink_alloc()
573 return kzalloc(sizeof(struct devlink) + priv_size, GFP_KERNEL); in devlink_alloc()
576 static inline int devlink_register(struct devlink *devlink, struct device *dev) in devlink_register() argument
581 static inline void devlink_unregister(struct devlink *devlink) in devlink_unregister() argument
585 static inline void devlink_free(struct devlink *devlink) in devlink_free() argument
587 kfree(devlink); in devlink_free()
590 static inline int devlink_port_register(struct devlink *devlink, in devlink_port_register() argument
629 static inline int devlink_sb_register(struct devlink *devlink, in devlink_sb_register() argument
639 static inline void devlink_sb_unregister(struct devlink *devlink, in devlink_sb_unregister() argument
645 devlink_dpipe_table_register(struct devlink *devlink, in devlink_dpipe_table_register() argument
653 static inline void devlink_dpipe_table_unregister(struct devlink *devlink, in devlink_dpipe_table_unregister() argument
658 static inline int devlink_dpipe_headers_register(struct devlink *devlink, in devlink_dpipe_headers_register() argument
665 static inline void devlink_dpipe_headers_unregister(struct devlink *devlink) in devlink_dpipe_headers_unregister() argument
669 static inline bool devlink_dpipe_table_counter_enabled(struct devlink *devlink, in devlink_dpipe_table_counter_enabled() argument
714 devlink_resource_register(struct devlink *devlink, in devlink_resource_register() argument
725 devlink_resources_unregister(struct devlink *devlink, in devlink_resources_unregister() argument
731 devlink_resource_size_get(struct devlink *devlink, u64 resource_id, in devlink_resource_size_get() argument
738 devlink_dpipe_table_resource_set(struct devlink *devlink, in devlink_dpipe_table_resource_set() argument
746 devlink_resource_occ_get_register(struct devlink *devlink, in devlink_resource_occ_get_register() argument
754 devlink_resource_occ_get_unregister(struct devlink *devlink, in devlink_resource_occ_get_unregister() argument
760 devlink_params_register(struct devlink *devlink, in devlink_params_register() argument
768 devlink_params_unregister(struct devlink *devlink, in devlink_params_unregister() argument
776 devlink_param_driverinit_value_get(struct devlink *devlink, u32 param_id, in devlink_param_driverinit_value_get() argument
783 devlink_param_driverinit_value_set(struct devlink *devlink, u32 param_id, in devlink_param_driverinit_value_set() argument
790 devlink_param_value_changed(struct devlink *devlink, u32 param_id) in devlink_param_value_changed() argument
801 devlink_region_create(struct devlink *devlink, in devlink_region_create() argument
815 devlink_region_shapshot_id_get(struct devlink *devlink) in devlink_region_shapshot_id_get() argument