hc
2024-05-10 9999e48639b3cecb08ffb37358bcba3b48161b29
kernel/include/linux/firmware/meson/meson_sm.h
....@@ -1,13 +1,7 @@
1
+/* SPDX-License-Identifier: GPL-2.0-only */
12 /*
23 * Copyright (C) 2016 Endless Mobile, Inc.
34 * Author: Carlo Caione <carlo@endlessm.com>
4
- *
5
- * This program is free software; you can redistribute it and/or
6
- * modify it under the terms of the GNU General Public License
7
- * version 2 as published by the Free Software Foundation.
8
- *
9
- * You should have received a copy of the GNU General Public License
10
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
115 */
126
137 #ifndef _MESON_SM_FW_H_
....@@ -17,15 +11,21 @@
1711 SM_EFUSE_READ,
1812 SM_EFUSE_WRITE,
1913 SM_EFUSE_USER_MAX,
14
+ SM_GET_CHIP_ID,
15
+ SM_A1_PWRC_SET,
16
+ SM_A1_PWRC_GET,
2017 };
2118
2219 struct meson_sm_firmware;
2320
24
-int meson_sm_call(unsigned int cmd_index, u32 *ret, u32 arg0, u32 arg1,
25
- u32 arg2, u32 arg3, u32 arg4);
26
-int meson_sm_call_write(void *buffer, unsigned int b_size, unsigned int cmd_index,
27
- u32 arg0, u32 arg1, u32 arg2, u32 arg3, u32 arg4);
28
-int meson_sm_call_read(void *buffer, unsigned int bsize, unsigned int cmd_index,
29
- u32 arg0, u32 arg1, u32 arg2, u32 arg3, u32 arg4);
21
+int meson_sm_call(struct meson_sm_firmware *fw, unsigned int cmd_index,
22
+ u32 *ret, u32 arg0, u32 arg1, u32 arg2, u32 arg3, u32 arg4);
23
+int meson_sm_call_write(struct meson_sm_firmware *fw, void *buffer,
24
+ unsigned int b_size, unsigned int cmd_index, u32 arg0,
25
+ u32 arg1, u32 arg2, u32 arg3, u32 arg4);
26
+int meson_sm_call_read(struct meson_sm_firmware *fw, void *buffer,
27
+ unsigned int bsize, unsigned int cmd_index, u32 arg0,
28
+ u32 arg1, u32 arg2, u32 arg3, u32 arg4);
29
+struct meson_sm_firmware *meson_sm_get(struct device_node *firmware_node);
3030
3131 #endif /* _MESON_SM_FW_H_ */