xref: /linux/drivers/reset/amlogic/reset-meson.h (revision 0cf32b1f37180bba9b7d2c54e902eadc44a4f7a7)
1 /* SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause */
2 /*
3  * Copyright (c) 2024 BayLibre, SAS.
4  * Author: Jerome Brunet <jbrunet@baylibre.com>
5  */
6 
7 #ifndef __MESON_RESET_H
8 #define __MESON_RESET_H
9 
10 #include <linux/module.h>
11 #include <linux/regmap.h>
12 #include <linux/reset-controller.h>
13 
14 struct meson_reset_param {
15 	const struct reset_control_ops *reset_ops;
16 	unsigned int reset_num;
17 	unsigned int reset_offset;
18 	unsigned int level_offset;
19 	bool level_low_reset;
20 };
21 
22 int meson_reset_controller_register(struct device *dev, struct regmap *map,
23 				    const struct meson_reset_param *param);
24 
25 extern const struct reset_control_ops meson_reset_ops;
26 extern const struct reset_control_ops meson_reset_toggle_ops;
27 
28 #endif /* __MESON_RESET_H */
29