• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright (C) 2022 Beken Corporation
2 //
3 // Licensed under the Apache License, Version 2.0 (the "License");
4 // you may not use this file except in compliance with the License.
5 // You may obtain a copy of the License at
6 //
7 //     http://www.apache.org/licenses/LICENSE-2.0
8 //
9 // Unless required by applicable law or agreed to in writing, software
10 // distributed under the License is distributed on an "AS IS" BASIS,
11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 // See the License for the specific language governing permissions and
13 // limitations under the License.
14 
15 #include "sys_hal.h"
16 #include "sys_driver.h"
17 #include "sys_driver_common.h"
18 
19 /**  Platform Start **/
20 //Platform
21 
22 /** Platform Misc Start **/
sys_drv_init()23 void sys_drv_init()
24 {
25 	uint32_t int_level = rtos_disable_int();
26 
27 	sys_amp_res_init();
28 	sys_hal_init();
29 
30 	rtos_enable_int(int_level);
31 }
32 
33 /** Platform Misc End **/
34 
sys_drv_get_chip_id(void)35 uint32 sys_drv_get_chip_id(void)
36 {
37 	uint32 reg = 0;
38 	uint32_t int_level = rtos_disable_int();
39 
40 	reg = sys_hal_get_chip_id();
41 
42 	rtos_enable_int(int_level);
43 
44 	return reg;
45 }
46 
47 // Replace sddev_control(DD_DEV_TYPE_SCTRL,CMD_GET_DEVICE_ID, NULL)
sys_drv_get_device_id(void)48 uint32 sys_drv_get_device_id(void)
49 {
50 	uint32 reg = 0;
51 	uint32_t int_level = rtos_disable_int();
52 
53 	reg = sys_hal_get_device_id();
54 
55 	rtos_enable_int(int_level);
56 
57 	return reg;
58 }
59 
sys_drv_set_jtag_mode(uint32 param)60 int32 sys_drv_set_jtag_mode(uint32 param)
61 {
62 	int32 ret = 0;
63 	uint32_t int_level = rtos_disable_int();
64 
65 	ret = sys_hal_set_jtag_mode(param);
66 	rtos_enable_int(int_level);
67 
68 	return ret;
69 }
70 
sys_drv_get_jtag_mode(void)71 uint32 sys_drv_get_jtag_mode(void)
72 {
73 	int32 ret = 0;
74 	uint32_t int_level = rtos_disable_int();
75 
76 	ret = sys_hal_get_jtag_mode();
77 	rtos_enable_int(int_level);
78 
79 	return ret;
80 }
81 
sys_drv_en_tempdet(uint32_t value)82 void sys_drv_en_tempdet(uint32_t value)
83 {
84     uint32_t int_level = rtos_disable_int();
85 
86     sys_hal_en_tempdet(value);
87     rtos_enable_int(int_level);
88 }
89 /**  Platform End **/
90 
sys_drv_get_cpu_storage_connect_op_select_flash_sel(void)91 uint32_t sys_drv_get_cpu_storage_connect_op_select_flash_sel(void)
92 {
93 	return 	sys_hal_get_cpu_storage_connect_op_select_flash_sel();
94 }
95 
sys_drv_set_cpu_storage_connect_op_select_flash_sel(uint32_t value)96 void sys_drv_set_cpu_storage_connect_op_select_flash_sel(uint32_t value)
97 {
98 	sys_hal_set_cpu_storage_connect_op_select_flash_sel(value);
99 }
100 
101 /**  Misc Start **/
102 //Misc
103 /**  Misc End **/
104 
105 #if 1
system_driver_set_bts_wakeup_platform_en(bool value)106 void system_driver_set_bts_wakeup_platform_en(bool value)
107 {
108 	uint32_t ret = SYS_DRV_FAILURE;
109 	ret = sys_amp_res_acquire();
110 
111 	if(value)
112 		sys_hal_set_bts_wakeup_platform_en(1);
113 	else
114 		sys_hal_set_bts_wakeup_platform_en(0);
115 
116 	if(!ret)
117 		ret = sys_amp_res_release();
118 
119 }
system_driver_get_bts_wakeup_platform_en()120 uint32_t system_driver_get_bts_wakeup_platform_en()
121 {
122 	return sys_hal_get_bts_wakeup_platform_en();
123 }
124 
system_driver_set_bts_sleep_exit_req(bool value)125 void system_driver_set_bts_sleep_exit_req(bool value)
126 {
127 	if(value)
128 		sys_hal_set_bts_sleep_exit_req(1);
129 	else
130 		sys_hal_set_bts_sleep_exit_req(0);
131 }
system_driver_get_bts_sleep_exit_req()132 uint32_t system_driver_get_bts_sleep_exit_req()
133 {
134 	return sys_hal_get_bts_sleep_exit_req();
135 }
136 #endif
137 
sys_drv_set_ana_trxt_tst_enable(uint32_t value)138 void sys_drv_set_ana_trxt_tst_enable(uint32_t value)
139 {
140     uint32_t int_level = rtos_disable_int();
141 
142     sys_hal_set_ana_trxt_tst_enable(value);
143     rtos_enable_int(int_level);
144 }
sys_drv_set_ana_scal_en(uint32_t value)145 void sys_drv_set_ana_scal_en(uint32_t value)
146 {
147     uint32_t int_level = rtos_disable_int();
148 
149     sys_hal_set_ana_scal_en(value);
150     rtos_enable_int(int_level);
151 }
sys_drv_set_ana_gadc_buf_ictrl(uint32_t value)152 void sys_drv_set_ana_gadc_buf_ictrl(uint32_t value)
153 {
154    uint32_t int_level = rtos_disable_int();
155 
156     sys_hal_set_ana_gadc_buf_ictrl(value);
157     rtos_enable_int(int_level);
158 }
sys_drv_set_ana_gadc_cmp_ictrl(uint32_t value)159 void sys_drv_set_ana_gadc_cmp_ictrl(uint32_t value)
160 {
161     uint32_t int_level = rtos_disable_int();
162 
163     sys_hal_set_ana_gadc_cmp_ictrl(value);
164     rtos_enable_int(int_level);
165 }
166 
sys_drv_set_ana_pwd_gadc_buf(uint32_t value)167 void sys_drv_set_ana_pwd_gadc_buf(uint32_t value)
168 {
169     uint32_t int_level = rtos_disable_int();
170 
171     sys_hal_set_ana_pwd_gadc_buf(value);
172     rtos_enable_int(int_level);
173 }
sys_drv_set_ana_vref_sel(uint32_t value)174 void sys_drv_set_ana_vref_sel(uint32_t value)
175 {
176     uint32_t int_level = rtos_disable_int();
177 
178     sys_hal_set_ana_vref_sel(value);
179     rtos_enable_int(int_level);
180 }
sys_drv_set_ana_cb_cal_manu(uint32_t value)181 void sys_drv_set_ana_cb_cal_manu(uint32_t value)
182 {
183     uint32_t int_level = rtos_disable_int();
184 
185     sys_hal_set_ana_cb_cal_manu(value);
186     rtos_enable_int(int_level);
187 }
sys_drv_set_ana_cb_cal_trig(uint32_t value)188 void sys_drv_set_ana_cb_cal_trig(uint32_t value)
189 {
190     uint32_t int_level = rtos_disable_int();
191 
192     sys_hal_set_ana_cb_cal_trig(value);
193     rtos_enable_int(int_level);
194 }
sys_drv_set_ana_cb_cal_manu_val(uint32_t value)195 void sys_drv_set_ana_cb_cal_manu_val(uint32_t value)
196 {
197     uint32_t int_level = rtos_disable_int();
198 
199     sys_hal_set_ana_cb_cal_manu_val(value);
200     rtos_enable_int(int_level);
201 }
202 
sys_drv_set_ana_vlsel_ldodig(uint32_t value)203 void sys_drv_set_ana_vlsel_ldodig(uint32_t value)
204 {
205     uint32_t int_level = rtos_disable_int();
206     sys_hal_set_ana_vlsel_ldodig(value);
207     rtos_enable_int(int_level);
208 }
sys_drv_set_ana_vhsel_ldodig(uint32_t value)209 void sys_drv_set_ana_vhsel_ldodig(uint32_t value)
210 {
211     uint32_t int_level = rtos_disable_int();
212     sys_hal_set_ana_vhsel_ldodig(value);
213     rtos_enable_int(int_level);
214 }
215 
sys_drv_set_ana_vctrl_sysldo(uint32_t value)216 void sys_drv_set_ana_vctrl_sysldo(uint32_t value)
217 {
218     uint32_t int_level = rtos_disable_int();
219     sys_hal_set_ana_vctrl_sysldo(value);
220     rtos_enable_int(int_level);
221 }
222 
sys_drv_set_ana_vtempsel(uint32_t value)223 void sys_drv_set_ana_vtempsel(uint32_t value)
224 {
225     uint32_t int_level = rtos_disable_int();
226     sys_hal_set_ana_vtempsel(value);
227     rtos_enable_int(int_level);
228 }
229 
230 
231