xref: /linux/drivers/dpll/zl3073x/prop.h (revision 8be4d31cb8aaeea27bde4b7ddb26e28a89062ebf)
1 /* SPDX-License-Identifier: GPL-2.0-only */
2 
3 #ifndef _ZL3073X_PROP_H
4 #define _ZL3073X_PROP_H
5 
6 #include <linux/dpll.h>
7 
8 #include "core.h"
9 
10 struct fwnode_handle;
11 
12 /**
13  * struct zl3073x_pin_props - pin properties
14  * @fwnode: pin firmware node
15  * @dpll_props: DPLL core pin properties
16  * @package_label: pin package label
17  * @esync_control: embedded sync support
18  */
19 struct zl3073x_pin_props {
20 	struct fwnode_handle		*fwnode;
21 	struct dpll_pin_properties	dpll_props;
22 	char				package_label[8];
23 	bool				esync_control;
24 };
25 
26 enum dpll_type zl3073x_prop_dpll_type_get(struct zl3073x_dev *zldev, u8 index);
27 
28 struct zl3073x_pin_props *zl3073x_pin_props_get(struct zl3073x_dev *zldev,
29 						enum dpll_pin_direction dir,
30 						u8 index);
31 
32 void zl3073x_pin_props_put(struct zl3073x_pin_props *props);
33 
34 #endif /* _ZL3073X_PROP_H */
35