xref: /linux/drivers/dpll/dpll_nl.h (revision 8be4d31cb8aaeea27bde4b7ddb26e28a89062ebf)
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/dpll.yaml */
4 /* YNL-GEN kernel header */
5 
6 #ifndef _LINUX_DPLL_GEN_H
7 #define _LINUX_DPLL_GEN_H
8 
9 #include <net/netlink.h>
10 #include <net/genetlink.h>
11 
12 #include <uapi/linux/dpll.h>
13 
14 /* Common nested types */
15 extern const struct nla_policy dpll_pin_parent_device_nl_policy[DPLL_A_PIN_PHASE_OFFSET + 1];
16 extern const struct nla_policy dpll_pin_parent_pin_nl_policy[DPLL_A_PIN_STATE + 1];
17 extern const struct nla_policy dpll_reference_sync_nl_policy[DPLL_A_PIN_STATE + 1];
18 
19 int dpll_lock_doit(const struct genl_split_ops *ops, struct sk_buff *skb,
20 		   struct genl_info *info);
21 int dpll_pre_doit(const struct genl_split_ops *ops, struct sk_buff *skb,
22 		  struct genl_info *info);
23 int dpll_pin_pre_doit(const struct genl_split_ops *ops, struct sk_buff *skb,
24 		      struct genl_info *info);
25 void
26 dpll_unlock_doit(const struct genl_split_ops *ops, struct sk_buff *skb,
27 		 struct genl_info *info);
28 void
29 dpll_post_doit(const struct genl_split_ops *ops, struct sk_buff *skb,
30 	       struct genl_info *info);
31 void
32 dpll_pin_post_doit(const struct genl_split_ops *ops, struct sk_buff *skb,
33 		   struct genl_info *info);
34 
35 int dpll_nl_device_id_get_doit(struct sk_buff *skb, struct genl_info *info);
36 int dpll_nl_device_get_doit(struct sk_buff *skb, struct genl_info *info);
37 int dpll_nl_device_get_dumpit(struct sk_buff *skb, struct netlink_callback *cb);
38 int dpll_nl_device_set_doit(struct sk_buff *skb, struct genl_info *info);
39 int dpll_nl_pin_id_get_doit(struct sk_buff *skb, struct genl_info *info);
40 int dpll_nl_pin_get_doit(struct sk_buff *skb, struct genl_info *info);
41 int dpll_nl_pin_get_dumpit(struct sk_buff *skb, struct netlink_callback *cb);
42 int dpll_nl_pin_set_doit(struct sk_buff *skb, struct genl_info *info);
43 
44 enum {
45 	DPLL_NLGRP_MONITOR,
46 };
47 
48 extern struct genl_family dpll_nl_family;
49 
50 #endif /* _LINUX_DPLL_GEN_H */
51