1 /* SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause) */ 2 /* Do not edit directly, auto-generated from: */ 3 /* Documentation/netlink/specs/devlink.yaml */ 4 /* YNL-GEN kernel header */ 5 /* To regenerate run: tools/net/ynl/ynl-regen.sh */ 6 7 #ifndef _LINUX_DEVLINK_GEN_H 8 #define _LINUX_DEVLINK_GEN_H 9 10 #include <net/netlink.h> 11 #include <net/genetlink.h> 12 13 #include <uapi/linux/devlink.h> 14 15 /* Common nested types */ 16 extern const struct nla_policy devlink_dl_parent_dev_nl_policy[DEVLINK_ATTR_INDEX + 1]; 17 extern const struct nla_policy devlink_dl_port_function_nl_policy[DEVLINK_PORT_FN_ATTR_CAPS + 1]; 18 extern const struct nla_policy devlink_dl_rate_tc_bws_nl_policy[DEVLINK_RATE_TC_ATTR_BW + 1]; 19 extern const struct nla_policy devlink_dl_selftest_id_nl_policy[DEVLINK_ATTR_SELFTEST_ID_FLASH + 1]; 20 21 /* Ops table for devlink */ 22 extern const struct genl_split_ops devlink_nl_ops[75]; 23 24 int devlink_nl_pre_doit(const struct genl_split_ops *ops, struct sk_buff *skb, 25 struct genl_info *info); 26 int devlink_nl_pre_doit_port(const struct genl_split_ops *ops, 27 struct sk_buff *skb, struct genl_info *info); 28 int devlink_nl_pre_doit_port_optional(const struct genl_split_ops *ops, 29 struct sk_buff *skb, 30 struct genl_info *info); 31 int devlink_nl_pre_doit_dev_lock(const struct genl_split_ops *ops, 32 struct sk_buff *skb, struct genl_info *info); 33 int devlink_nl_pre_doit_parent_dev_optional(const struct genl_split_ops *ops, 34 struct sk_buff *skb, 35 struct genl_info *info); 36 void 37 devlink_nl_post_doit(const struct genl_split_ops *ops, struct sk_buff *skb, 38 struct genl_info *info); 39 void 40 devlink_nl_post_doit_dev_lock(const struct genl_split_ops *ops, 41 struct sk_buff *skb, struct genl_info *info); 42 void 43 devlink_nl_post_doit_parent_dev_optional(const struct genl_split_ops *ops, 44 struct sk_buff *skb, 45 struct genl_info *info); 46 47 int devlink_nl_get_doit(struct sk_buff *skb, struct genl_info *info); 48 int devlink_nl_get_dumpit(struct sk_buff *skb, struct netlink_callback *cb); 49 int devlink_nl_port_get_doit(struct sk_buff *skb, struct genl_info *info); 50 int devlink_nl_port_get_dumpit(struct sk_buff *skb, 51 struct netlink_callback *cb); 52 int devlink_nl_port_set_doit(struct sk_buff *skb, struct genl_info *info); 53 int devlink_nl_port_new_doit(struct sk_buff *skb, struct genl_info *info); 54 int devlink_nl_port_del_doit(struct sk_buff *skb, struct genl_info *info); 55 int devlink_nl_port_split_doit(struct sk_buff *skb, struct genl_info *info); 56 int devlink_nl_port_unsplit_doit(struct sk_buff *skb, struct genl_info *info); 57 int devlink_nl_sb_get_doit(struct sk_buff *skb, struct genl_info *info); 58 int devlink_nl_sb_get_dumpit(struct sk_buff *skb, struct netlink_callback *cb); 59 int devlink_nl_sb_pool_get_doit(struct sk_buff *skb, struct genl_info *info); 60 int devlink_nl_sb_pool_get_dumpit(struct sk_buff *skb, 61 struct netlink_callback *cb); 62 int devlink_nl_sb_pool_set_doit(struct sk_buff *skb, struct genl_info *info); 63 int devlink_nl_sb_port_pool_get_doit(struct sk_buff *skb, 64 struct genl_info *info); 65 int devlink_nl_sb_port_pool_get_dumpit(struct sk_buff *skb, 66 struct netlink_callback *cb); 67 int devlink_nl_sb_port_pool_set_doit(struct sk_buff *skb, 68 struct genl_info *info); 69 int devlink_nl_sb_tc_pool_bind_get_doit(struct sk_buff *skb, 70 struct genl_info *info); 71 int devlink_nl_sb_tc_pool_bind_get_dumpit(struct sk_buff *skb, 72 struct netlink_callback *cb); 73 int devlink_nl_sb_tc_pool_bind_set_doit(struct sk_buff *skb, 74 struct genl_info *info); 75 int devlink_nl_sb_occ_snapshot_doit(struct sk_buff *skb, 76 struct genl_info *info); 77 int devlink_nl_sb_occ_max_clear_doit(struct sk_buff *skb, 78 struct genl_info *info); 79 int devlink_nl_eswitch_get_doit(struct sk_buff *skb, struct genl_info *info); 80 int devlink_nl_eswitch_set_doit(struct sk_buff *skb, struct genl_info *info); 81 int devlink_nl_dpipe_table_get_doit(struct sk_buff *skb, 82 struct genl_info *info); 83 int devlink_nl_dpipe_entries_get_doit(struct sk_buff *skb, 84 struct genl_info *info); 85 int devlink_nl_dpipe_headers_get_doit(struct sk_buff *skb, 86 struct genl_info *info); 87 int devlink_nl_dpipe_table_counters_set_doit(struct sk_buff *skb, 88 struct genl_info *info); 89 int devlink_nl_resource_set_doit(struct sk_buff *skb, struct genl_info *info); 90 int devlink_nl_resource_dump_doit(struct sk_buff *skb, struct genl_info *info); 91 int devlink_nl_resource_dump_dumpit(struct sk_buff *skb, 92 struct netlink_callback *cb); 93 int devlink_nl_reload_doit(struct sk_buff *skb, struct genl_info *info); 94 int devlink_nl_param_get_doit(struct sk_buff *skb, struct genl_info *info); 95 int devlink_nl_param_get_dumpit(struct sk_buff *skb, 96 struct netlink_callback *cb); 97 int devlink_nl_param_set_doit(struct sk_buff *skb, struct genl_info *info); 98 int devlink_nl_region_get_doit(struct sk_buff *skb, struct genl_info *info); 99 int devlink_nl_region_get_dumpit(struct sk_buff *skb, 100 struct netlink_callback *cb); 101 int devlink_nl_region_new_doit(struct sk_buff *skb, struct genl_info *info); 102 int devlink_nl_region_del_doit(struct sk_buff *skb, struct genl_info *info); 103 int devlink_nl_region_read_dumpit(struct sk_buff *skb, 104 struct netlink_callback *cb); 105 int devlink_nl_port_param_get_doit(struct sk_buff *skb, struct genl_info *info); 106 int devlink_nl_port_param_get_dumpit(struct sk_buff *skb, 107 struct netlink_callback *cb); 108 int devlink_nl_port_param_set_doit(struct sk_buff *skb, struct genl_info *info); 109 int devlink_nl_info_get_doit(struct sk_buff *skb, struct genl_info *info); 110 int devlink_nl_info_get_dumpit(struct sk_buff *skb, 111 struct netlink_callback *cb); 112 int devlink_nl_health_reporter_get_doit(struct sk_buff *skb, 113 struct genl_info *info); 114 int devlink_nl_health_reporter_get_dumpit(struct sk_buff *skb, 115 struct netlink_callback *cb); 116 int devlink_nl_health_reporter_set_doit(struct sk_buff *skb, 117 struct genl_info *info); 118 int devlink_nl_health_reporter_recover_doit(struct sk_buff *skb, 119 struct genl_info *info); 120 int devlink_nl_health_reporter_diagnose_doit(struct sk_buff *skb, 121 struct genl_info *info); 122 int devlink_nl_health_reporter_dump_get_dumpit(struct sk_buff *skb, 123 struct netlink_callback *cb); 124 int devlink_nl_health_reporter_dump_clear_doit(struct sk_buff *skb, 125 struct genl_info *info); 126 int devlink_nl_flash_update_doit(struct sk_buff *skb, struct genl_info *info); 127 int devlink_nl_trap_get_doit(struct sk_buff *skb, struct genl_info *info); 128 int devlink_nl_trap_get_dumpit(struct sk_buff *skb, 129 struct netlink_callback *cb); 130 int devlink_nl_trap_set_doit(struct sk_buff *skb, struct genl_info *info); 131 int devlink_nl_trap_group_get_doit(struct sk_buff *skb, struct genl_info *info); 132 int devlink_nl_trap_group_get_dumpit(struct sk_buff *skb, 133 struct netlink_callback *cb); 134 int devlink_nl_trap_group_set_doit(struct sk_buff *skb, struct genl_info *info); 135 int devlink_nl_trap_policer_get_doit(struct sk_buff *skb, 136 struct genl_info *info); 137 int devlink_nl_trap_policer_get_dumpit(struct sk_buff *skb, 138 struct netlink_callback *cb); 139 int devlink_nl_trap_policer_set_doit(struct sk_buff *skb, 140 struct genl_info *info); 141 int devlink_nl_health_reporter_test_doit(struct sk_buff *skb, 142 struct genl_info *info); 143 int devlink_nl_rate_get_doit(struct sk_buff *skb, struct genl_info *info); 144 int devlink_nl_rate_get_dumpit(struct sk_buff *skb, 145 struct netlink_callback *cb); 146 int devlink_nl_rate_set_doit(struct sk_buff *skb, struct genl_info *info); 147 int devlink_nl_rate_new_doit(struct sk_buff *skb, struct genl_info *info); 148 int devlink_nl_rate_del_doit(struct sk_buff *skb, struct genl_info *info); 149 int devlink_nl_linecard_get_doit(struct sk_buff *skb, struct genl_info *info); 150 int devlink_nl_linecard_get_dumpit(struct sk_buff *skb, 151 struct netlink_callback *cb); 152 int devlink_nl_linecard_set_doit(struct sk_buff *skb, struct genl_info *info); 153 int devlink_nl_selftests_get_doit(struct sk_buff *skb, struct genl_info *info); 154 int devlink_nl_selftests_get_dumpit(struct sk_buff *skb, 155 struct netlink_callback *cb); 156 int devlink_nl_selftests_run_doit(struct sk_buff *skb, struct genl_info *info); 157 int devlink_nl_notify_filter_set_doit(struct sk_buff *skb, 158 struct genl_info *info); 159 160 #endif /* _LINUX_DEVLINK_GEN_H */ 161