* [frank-w-bpi-r2-4.14:5.14-otg 8/30] drivers/misc/mediatek/connectivity/common/conn_soc/mt7623/mtk_wcn_consys_hw.c:191:6: error: no previous prototype for function 'mtk_wcn_consys_power_on'
@ 2021-08-27 3:51 kernel test robot
0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2021-08-27 3:51 UTC (permalink / raw)
To: kbuild-all
[-- Attachment #1: Type: text/plain, Size: 26822 bytes --]
tree: https://github.com/frank-w/BPI-R2-4.14 5.14-otg
head: f3b07278bea4aa5050ab2f975a93fd20ef65a5ff
commit: daf840cab15926e075953cf836e903114868c074 [8/30] mt6625l: add changes outside driver dir
config: arm-buildonly-randconfig-r003-20210827 (attached as .config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project ea08c4cd1c0869ec5024a8bb3f5cdf06ab03ae83)
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# install arm cross compiling tool for clang build
# apt-get install binutils-arm-linux-gnueabi
# https://github.com/frank-w/BPI-R2-4.14/commit/daf840cab15926e075953cf836e903114868c074
git remote add frank-w-bpi-r2-4.14 https://github.com/frank-w/BPI-R2-4.14
git fetch --no-tags frank-w-bpi-r2-4.14 5.14-otg
git checkout daf840cab15926e075953cf836e903114868c074
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=arm
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
All errors (new ones prefixed by >>):
>> drivers/misc/mediatek/connectivity/common/conn_soc/mt7623/mtk_wcn_consys_hw.c:191:6: error: no previous prototype for function 'mtk_wcn_consys_power_on' [-Werror,-Wmissing-prototypes]
VOID mtk_wcn_consys_power_on(VOID)
^
drivers/misc/mediatek/connectivity/common/conn_soc/mt7623/mtk_wcn_consys_hw.c:191:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
VOID mtk_wcn_consys_power_on(VOID)
^
static
>> drivers/misc/mediatek/connectivity/common/conn_soc/mt7623/mtk_wcn_consys_hw.c:207:6: error: no previous prototype for function 'mtk_wcn_consys_power_off' [-Werror,-Wmissing-prototypes]
VOID mtk_wcn_consys_power_off(VOID)
^
drivers/misc/mediatek/connectivity/common/conn_soc/mt7623/mtk_wcn_consys_hw.c:207:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
VOID mtk_wcn_consys_power_off(VOID)
^
static
>> drivers/misc/mediatek/connectivity/common/conn_soc/mt7623/mtk_wcn_consys_hw.c:224:7: error: no previous prototype for function 'mtk_wcn_consys_hw_reg_ctrl' [-Werror,-Wmissing-prototypes]
INT32 mtk_wcn_consys_hw_reg_ctrl(UINT32 on, UINT32 co_clock_type)
^
drivers/misc/mediatek/connectivity/common/conn_soc/mt7623/mtk_wcn_consys_hw.c:224:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
INT32 mtk_wcn_consys_hw_reg_ctrl(UINT32 on, UINT32 co_clock_type)
^
static
>> drivers/misc/mediatek/connectivity/common/conn_soc/mt7623/mtk_wcn_consys_hw.c:335:7: error: no previous prototype for function 'mtk_wcn_consys_hw_gpio_ctrl' [-Werror,-Wmissing-prototypes]
INT32 mtk_wcn_consys_hw_gpio_ctrl(UINT32 on)
^
drivers/misc/mediatek/connectivity/common/conn_soc/mt7623/mtk_wcn_consys_hw.c:335:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
INT32 mtk_wcn_consys_hw_gpio_ctrl(UINT32 on)
^
static
>> drivers/misc/mediatek/connectivity/common/conn_soc/mt7623/mtk_wcn_consys_hw.c:539:7: error: no previous prototype for function 'mtk_wcn_consys_hw_restore' [-Werror,-Wmissing-prototypes]
INT32 mtk_wcn_consys_hw_restore(struct device *device)
^
drivers/misc/mediatek/connectivity/common/conn_soc/mt7623/mtk_wcn_consys_hw.c:539:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
INT32 mtk_wcn_consys_hw_restore(struct device *device)
^
static
>> drivers/misc/mediatek/connectivity/common/conn_soc/mt7623/mtk_wcn_consys_hw.c:592:5: error: no previous prototype for function 'reserve_memory_consys_fn' [-Werror,-Wmissing-prototypes]
int reserve_memory_consys_fn(struct reserved_mem *rmem)
^
drivers/misc/mediatek/connectivity/common/conn_soc/mt7623/mtk_wcn_consys_hw.c:592:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
int reserve_memory_consys_fn(struct reserved_mem *rmem)
^
static
6 errors generated.
--
static
drivers/misc/mediatek/connectivity/common/conn_soc/linux/pri/wmt_dev.c:1303:7: error: no previous prototype for function 'wmt_dev_dbg_remove' [-Werror,-Wmissing-prototypes]
INT32 wmt_dev_dbg_remove(VOID)
^
drivers/misc/mediatek/connectivity/common/conn_soc/linux/pri/wmt_dev.c:1303:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
INT32 wmt_dev_dbg_remove(VOID)
^
static
drivers/misc/mediatek/connectivity/common/conn_soc/linux/pri/wmt_dev.c:1376:31: error: unused variable 'wmt_aee_fops' [-Werror,-Wunused-variable]
static const struct proc_ops wmt_aee_fops = {
^
drivers/misc/mediatek/connectivity/common/conn_soc/linux/pri/wmt_dev.c:1374:7: error: no previous prototype for function 'wmt_dev_proc_for_aee_setup' [-Werror,-Wmissing-prototypes]
INT32 wmt_dev_proc_for_aee_setup(VOID)
^
drivers/misc/mediatek/connectivity/common/conn_soc/linux/pri/wmt_dev.c:1374:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
INT32 wmt_dev_proc_for_aee_setup(VOID)
^
static
drivers/misc/mediatek/connectivity/common/conn_soc/linux/pri/wmt_dev.c:1390:7: error: no previous prototype for function 'wmt_dev_proc_for_aee_remove' [-Werror,-Wmissing-prototypes]
INT32 wmt_dev_proc_for_aee_remove(VOID)
^
drivers/misc/mediatek/connectivity/common/conn_soc/linux/pri/wmt_dev.c:1390:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
INT32 wmt_dev_proc_for_aee_remove(VOID)
^
static
drivers/misc/mediatek/connectivity/common/conn_soc/linux/pri/wmt_dev.c:1435:7: error: no previous prototype for function 'wmt_dev_read_file' [-Werror,-Wmissing-prototypes]
INT32 wmt_dev_read_file(PUINT8 pName, const PPUINT8 ppBufPtr, INT32 offset, INT32 padSzBuf)
^
drivers/misc/mediatek/connectivity/common/conn_soc/linux/pri/wmt_dev.c:1435:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
INT32 wmt_dev_read_file(PUINT8 pName, const PPUINT8 ppBufPtr, INT32 offset, INT32 padSzBuf)
^
static
drivers/misc/mediatek/connectivity/common/conn_soc/linux/pri/wmt_dev.c:1597:14: error: no previous prototype for function 'wmt_dev_is_file_exist' [-Werror,-Wmissing-prototypes]
MTK_WCN_BOOL wmt_dev_is_file_exist(PUINT8 pFileName)
^
drivers/misc/mediatek/connectivity/common/conn_soc/linux/pri/wmt_dev.c:1597:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
MTK_WCN_BOOL wmt_dev_is_file_exist(PUINT8 pFileName)
^
static
drivers/misc/mediatek/connectivity/common/conn_soc/linux/pri/wmt_dev.c:1645:14: error: no previous prototype for function 'wmt_dev_tra_bitf_update' [-Werror,-Wmissing-prototypes]
extern INT32 wmt_dev_tra_bitf_update(void)
^
drivers/misc/mediatek/connectivity/common/conn_soc/linux/pri/wmt_dev.c:1645:8: note: declare 'static' if the function is not intended to be used outside of this translation unit
extern INT32 wmt_dev_tra_bitf_update(void)
^
drivers/misc/mediatek/connectivity/common/conn_soc/linux/pri/wmt_dev.c:1703:6: error: no previous prototype for function 'wmt_dev_tm_temp_query' [-Werror,-Wmissing-prototypes]
long wmt_dev_tm_temp_query(void)
^
drivers/misc/mediatek/connectivity/common/conn_soc/linux/pri/wmt_dev.c:1703:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
long wmt_dev_tm_temp_query(void)
^
static
drivers/misc/mediatek/connectivity/common/conn_soc/linux/pri/wmt_dev.c:1801:9: error: no previous prototype for function 'WMT_write' [-Werror,-Wmissing-prototypes]
ssize_t WMT_write(struct file *filp, const char __user *buf, size_t count, loff_t *f_pos)
^
drivers/misc/mediatek/connectivity/common/conn_soc/linux/pri/wmt_dev.c:1801:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
ssize_t WMT_write(struct file *filp, const char __user *buf, size_t count, loff_t *f_pos)
^
static
drivers/misc/mediatek/connectivity/common/conn_soc/linux/pri/wmt_dev.c:1834:9: error: no previous prototype for function 'WMT_read' [-Werror,-Wmissing-prototypes]
ssize_t WMT_read(struct file *filp, char __user *buf, size_t count, loff_t *f_pos)
^
drivers/misc/mediatek/connectivity/common/conn_soc/linux/pri/wmt_dev.c:1834:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
ssize_t WMT_read(struct file *filp, char __user *buf, size_t count, loff_t *f_pos)
^
static
drivers/misc/mediatek/connectivity/common/conn_soc/linux/pri/wmt_dev.c:1865:14: error: no previous prototype for function 'WMT_poll' [-Werror,-Wmissing-prototypes]
unsigned int WMT_poll(struct file *filp, poll_table *wait)
^
drivers/misc/mediatek/connectivity/common/conn_soc/linux/pri/wmt_dev.c:1865:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
unsigned int WMT_poll(struct file *filp, poll_table *wait)
^
static
drivers/misc/mediatek/connectivity/common/conn_soc/linux/pri/wmt_dev.c:1985:11: error: variable 'u4Wait' set but not used [-Werror,-Wunused-but-set-variable]
UINT32 u4Wait;
^
drivers/misc/mediatek/connectivity/common/conn_soc/linux/pri/wmt_dev.c:2154:21: error: variable 'pTemp' set but not used [-Werror,-Wunused-but-set-variable]
P_WMT_PATCH_INFO pTemp = NULL;
^
drivers/misc/mediatek/connectivity/common/conn_soc/linux/pri/wmt_dev.c:1885:6: error: no previous prototype for function 'WMT_unlocked_ioctl' [-Werror,-Wmissing-prototypes]
long WMT_unlocked_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
^
drivers/misc/mediatek/connectivity/common/conn_soc/linux/pri/wmt_dev.c:1885:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
long WMT_unlocked_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
^
static
drivers/misc/mediatek/connectivity/common/conn_soc/linux/pri/wmt_dev.c:2368:6: error: no previous prototype for function 'wmt_dev_bgw_desense_init' [-Werror,-Wmissing-prototypes]
void wmt_dev_bgw_desense_init(VOID)
^
drivers/misc/mediatek/connectivity/common/conn_soc/linux/pri/wmt_dev.c:2368:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
void wmt_dev_bgw_desense_init(VOID)
^
static
drivers/misc/mediatek/connectivity/common/conn_soc/linux/pri/wmt_dev.c:2373:6: error: no previous prototype for function 'wmt_dev_bgw_desense_deinit' [-Werror,-Wmissing-prototypes]
void wmt_dev_bgw_desense_deinit(VOID)
^
drivers/misc/mediatek/connectivity/common/conn_soc/linux/pri/wmt_dev.c:2373:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
void wmt_dev_bgw_desense_deinit(VOID)
^
static
>> drivers/misc/mediatek/connectivity/common/conn_soc/linux/pri/wmt_dev.c:2544:5: error: no previous prototype for function 'mtk_wcn_soc_common_drv_init' [-Werror,-Wmissing-prototypes]
int mtk_wcn_soc_common_drv_init(void)
^
drivers/misc/mediatek/connectivity/common/conn_soc/linux/pri/wmt_dev.c:2544:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
int mtk_wcn_soc_common_drv_init(void)
^
static
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
vim +/mtk_wcn_consys_power_on +191 drivers/misc/mediatek/connectivity/common/conn_soc/mt7623/mtk_wcn_consys_hw.c
2b190f4faaa462 Frank Wunderlich 2021-07-12 190
2b190f4faaa462 Frank Wunderlich 2021-07-12 @191 VOID mtk_wcn_consys_power_on(VOID)
2b190f4faaa462 Frank Wunderlich 2021-07-12 192 {
2b190f4faaa462 Frank Wunderlich 2021-07-12 193 INT32 iRet = -1;
2b190f4faaa462 Frank Wunderlich 2021-07-12 194 iRet = pm_runtime_get_sync(&my_pdev->dev);
2b190f4faaa462 Frank Wunderlich 2021-07-12 195 if (iRet)
2b190f4faaa462 Frank Wunderlich 2021-07-12 196 WMT_PLAT_ERR_FUNC("pm_runtime_get_sync() fail(%d)\n", iRet);
2b190f4faaa462 Frank Wunderlich 2021-07-12 197 else
2b190f4faaa462 Frank Wunderlich 2021-07-12 198 WMT_PLAT_INFO_FUNC("pm_runtime_get_sync() CONSYS ok\n");
2b190f4faaa462 Frank Wunderlich 2021-07-12 199
2b190f4faaa462 Frank Wunderlich 2021-07-12 200 iRet = device_init_wakeup(&my_pdev->dev, true);
2b190f4faaa462 Frank Wunderlich 2021-07-12 201 if (iRet)
2b190f4faaa462 Frank Wunderlich 2021-07-12 202 WMT_PLAT_ERR_FUNC("device_init_wakeup(true) fail.\n");
2b190f4faaa462 Frank Wunderlich 2021-07-12 203 else
2b190f4faaa462 Frank Wunderlich 2021-07-12 204 WMT_PLAT_INFO_FUNC("device_init_wakeup(true) CONSYS ok\n");
2b190f4faaa462 Frank Wunderlich 2021-07-12 205 }
2b190f4faaa462 Frank Wunderlich 2021-07-12 206
2b190f4faaa462 Frank Wunderlich 2021-07-12 @207 VOID mtk_wcn_consys_power_off(VOID)
2b190f4faaa462 Frank Wunderlich 2021-07-12 208 {
2b190f4faaa462 Frank Wunderlich 2021-07-12 209 INT32 iRet = -1;
2b190f4faaa462 Frank Wunderlich 2021-07-12 210
2b190f4faaa462 Frank Wunderlich 2021-07-12 211 iRet = pm_runtime_put_sync(&my_pdev->dev);
2b190f4faaa462 Frank Wunderlich 2021-07-12 212 if (iRet)
2b190f4faaa462 Frank Wunderlich 2021-07-12 213 WMT_PLAT_ERR_FUNC("pm_runtime_put_sync() fail.\n");
2b190f4faaa462 Frank Wunderlich 2021-07-12 214 else
2b190f4faaa462 Frank Wunderlich 2021-07-12 215 WMT_PLAT_INFO_FUNC("pm_runtime_put_sync() CONSYS ok\n");
2b190f4faaa462 Frank Wunderlich 2021-07-12 216
2b190f4faaa462 Frank Wunderlich 2021-07-12 217 iRet = device_init_wakeup(&my_pdev->dev, false);
2b190f4faaa462 Frank Wunderlich 2021-07-12 218 if (iRet)
2b190f4faaa462 Frank Wunderlich 2021-07-12 219 WMT_PLAT_ERR_FUNC("device_init_wakeup(false) fail.\n");
2b190f4faaa462 Frank Wunderlich 2021-07-12 220 else
2b190f4faaa462 Frank Wunderlich 2021-07-12 221 WMT_PLAT_INFO_FUNC("device_init_wakeup(false) CONSYS ok\n");
2b190f4faaa462 Frank Wunderlich 2021-07-12 222 }
2b190f4faaa462 Frank Wunderlich 2021-07-12 223
2b190f4faaa462 Frank Wunderlich 2021-07-12 @224 INT32 mtk_wcn_consys_hw_reg_ctrl(UINT32 on, UINT32 co_clock_type)
2b190f4faaa462 Frank Wunderlich 2021-07-12 225 {
2b190f4faaa462 Frank Wunderlich 2021-07-12 226 UINT32 retry = 10;
2b190f4faaa462 Frank Wunderlich 2021-07-12 227 UINT32 consysHwChipId = 0;
2b190f4faaa462 Frank Wunderlich 2021-07-12 228
2b190f4faaa462 Frank Wunderlich 2021-07-12 229 WMT_PLAT_DBG_FUNC("CONSYS-HW-REG-CTRL(0x%08x),start\n", on);
2b190f4faaa462 Frank Wunderlich 2021-07-12 230 if (on) {
2b190f4faaa462 Frank Wunderlich 2021-07-12 231 WMT_PLAT_DBG_FUNC("++\n");
2b190f4faaa462 Frank Wunderlich 2021-07-12 232 /*need PMIC driver provide new API protocol */
2b190f4faaa462 Frank Wunderlich 2021-07-12 233 /*1.AP power on VCN_1V8 LDO (with PMIC_WRAP API) VCN_1V8 */
2b190f4faaa462 Frank Wunderlich 2021-07-12 234 regulator_set_mode(reg_VCN18, REGULATOR_MODE_STANDBY);
2b190f4faaa462 Frank Wunderlich 2021-07-12 235 /* VOL_DEFAULT, VOL_1200, VOL_1300, VOL_1500, VOL_1800... */
2b190f4faaa462 Frank Wunderlich 2021-07-12 236 if (reg_VCN18) {
2b190f4faaa462 Frank Wunderlich 2021-07-12 237 regulator_set_voltage(reg_VCN18, 1800000, 1800000);
2b190f4faaa462 Frank Wunderlich 2021-07-12 238 if (regulator_enable(reg_VCN18))
2b190f4faaa462 Frank Wunderlich 2021-07-12 239 WMT_PLAT_ERR_FUNC("enable VCN18 fail\n");
2b190f4faaa462 Frank Wunderlich 2021-07-12 240 else
2b190f4faaa462 Frank Wunderlich 2021-07-12 241 WMT_PLAT_DBG_FUNC("enable VCN18 ok\n");
2b190f4faaa462 Frank Wunderlich 2021-07-12 242 }
2b190f4faaa462 Frank Wunderlich 2021-07-12 243 udelay(150);
2b190f4faaa462 Frank Wunderlich 2021-07-12 244 if (co_clock_type) {
2b190f4faaa462 Frank Wunderlich 2021-07-12 245 /*step0,clk buf ctrl */
2b190f4faaa462 Frank Wunderlich 2021-07-12 246 WMT_PLAT_INFO_FUNC("co clock type(%d),turn on clk buf\n", co_clock_type);
2b190f4faaa462 Frank Wunderlich 2021-07-12 247 #if CONSYS_CLOCK_BUF_CTRL
2b190f4faaa462 Frank Wunderlich 2021-07-12 248 clk_buf_ctrl(CLK_BUF_CONN, 1);
2b190f4faaa462 Frank Wunderlich 2021-07-12 249 #endif
2b190f4faaa462 Frank Wunderlich 2021-07-12 250 /*if co-clock mode: */
2b190f4faaa462 Frank Wunderlich 2021-07-12 251 /*2.set VCN28 to SW control mode (with PMIC_WRAP API) */
2b190f4faaa462 Frank Wunderlich 2021-07-12 252 /*turn on VCN28 LDO only when FMSYS is activated" */
2b190f4faaa462 Frank Wunderlich 2021-07-12 253 regmap_update_bits(pmic_regmap, 0x41C, 0x1 << 14, 0x0 << 14);/*V28*/
2b190f4faaa462 Frank Wunderlich 2021-07-12 254 } else {
2b190f4faaa462 Frank Wunderlich 2021-07-12 255 /*if NOT co-clock: */
2b190f4faaa462 Frank Wunderlich 2021-07-12 256 /*2.1.switch VCN28 to HW control mode (with PMIC_WRAP API) */
2b190f4faaa462 Frank Wunderlich 2021-07-12 257 regmap_update_bits(pmic_regmap, 0x41C, 0x1 << 14, 0x1 << 14);/*V28*/
2b190f4faaa462 Frank Wunderlich 2021-07-12 258 /*2.2.turn on VCN28 LDO (with PMIC_WRAP API)" */
2b190f4faaa462 Frank Wunderlich 2021-07-12 259 /*fix vcn28 not balance warning */
2b190f4faaa462 Frank Wunderlich 2021-07-12 260 if (reg_VCN28) {
2b190f4faaa462 Frank Wunderlich 2021-07-12 261 regulator_set_voltage(reg_VCN28, 2800000, 2800000);
2b190f4faaa462 Frank Wunderlich 2021-07-12 262 if (regulator_enable(reg_VCN28))
2b190f4faaa462 Frank Wunderlich 2021-07-12 263 WMT_PLAT_ERR_FUNC("enable VCN_2V8 fail!\n");
2b190f4faaa462 Frank Wunderlich 2021-07-12 264 else
2b190f4faaa462 Frank Wunderlich 2021-07-12 265 WMT_PLAT_DBG_FUNC("enable VCN_2V8 ok\n");
2b190f4faaa462 Frank Wunderlich 2021-07-12 266 }
2b190f4faaa462 Frank Wunderlich 2021-07-12 267 }
2b190f4faaa462 Frank Wunderlich 2021-07-12 268
2b190f4faaa462 Frank Wunderlich 2021-07-12 269 /*3.assert CONNSYS CPU SW reset 0x10007018 "[12]=1'b1 [31:24]=8'h88 (key)" */
2b190f4faaa462 Frank Wunderlich 2021-07-12 270 reset_control_reset(rstc);
2b190f4faaa462 Frank Wunderlich 2021-07-12 271 mtk_wcn_consys_power_on();
2b190f4faaa462 Frank Wunderlich 2021-07-12 272 /*11.26M is ready now, delay 10us for mem_pd de-assert */
2b190f4faaa462 Frank Wunderlich 2021-07-12 273 udelay(10);
2b190f4faaa462 Frank Wunderlich 2021-07-12 274 /*enable AP bus clock : connmcu_bus_pd API: enable_clock() ++?? */
2b190f4faaa462 Frank Wunderlich 2021-07-12 275 clk_prepare_enable(clk_infra_conn_main);
2b190f4faaa462 Frank Wunderlich 2021-07-12 276 WMT_PLAT_DBG_FUNC("[CCF]enable clk_infra_conn_main\n");
2b190f4faaa462 Frank Wunderlich 2021-07-12 277 /*12.poll CONNSYS CHIP ID until chipid is returned 0x18070008 */
2b190f4faaa462 Frank Wunderlich 2021-07-12 278 while (retry-- > 0) {
2b190f4faaa462 Frank Wunderlich 2021-07-12 279 consysHwChipId = CONSYS_REG_READ(conn_reg.mcu_base + CONSYS_CHIP_ID_OFFSET) - 0xf6d;
2b190f4faaa462 Frank Wunderlich 2021-07-12 280
2b190f4faaa462 Frank Wunderlich 2021-07-12 281 if ((consysHwChipId == 0x0321) || (consysHwChipId == 0x0335) || (consysHwChipId == 0x0337)) {
2b190f4faaa462 Frank Wunderlich 2021-07-12 282 WMT_PLAT_INFO_FUNC("retry(%d)consys chipId(0x%08x)\n", retry, consysHwChipId);
2b190f4faaa462 Frank Wunderlich 2021-07-12 283 break;
2b190f4faaa462 Frank Wunderlich 2021-07-12 284 }
2b190f4faaa462 Frank Wunderlich 2021-07-12 285 if ((consysHwChipId == 0x8163) || (consysHwChipId == 0x8127) || (consysHwChipId == 0x7623)) {
2b190f4faaa462 Frank Wunderlich 2021-07-12 286 WMT_PLAT_INFO_FUNC("retry(%d)consys chipId(0x%08x)\n", retry, consysHwChipId);
2b190f4faaa462 Frank Wunderlich 2021-07-12 287 break;
2b190f4faaa462 Frank Wunderlich 2021-07-12 288 }
2b190f4faaa462 Frank Wunderlich 2021-07-12 289
2b190f4faaa462 Frank Wunderlich 2021-07-12 290 WMT_PLAT_ERR_FUNC("Read CONSYS chipId(0x%08x)", consysHwChipId);
2b190f4faaa462 Frank Wunderlich 2021-07-12 291 msleep(20);
2b190f4faaa462 Frank Wunderlich 2021-07-12 292 }
2b190f4faaa462 Frank Wunderlich 2021-07-12 293
2b190f4faaa462 Frank Wunderlich 2021-07-12 294 if ((0 == retry) || (0 == consysHwChipId))
2b190f4faaa462 Frank Wunderlich 2021-07-12 295 WMT_PLAT_ERR_FUNC("Maybe has a consys power on issue,(0x%08x)\n", consysHwChipId);
2b190f4faaa462 Frank Wunderlich 2021-07-12 296
2b190f4faaa462 Frank Wunderlich 2021-07-12 297 msleep(40);
2b190f4faaa462 Frank Wunderlich 2021-07-12 298
2b190f4faaa462 Frank Wunderlich 2021-07-12 299 } else {
2b190f4faaa462 Frank Wunderlich 2021-07-12 300
2b190f4faaa462 Frank Wunderlich 2021-07-12 301 clk_disable_unprepare(clk_infra_conn_main);
2b190f4faaa462 Frank Wunderlich 2021-07-12 302 WMT_PLAT_DBG_FUNC("[CCF] clk_disable_unprepare(clk_infra_conn_main) calling\n");
2b190f4faaa462 Frank Wunderlich 2021-07-12 303 mtk_wcn_consys_power_off();
2b190f4faaa462 Frank Wunderlich 2021-07-12 304
2b190f4faaa462 Frank Wunderlich 2021-07-12 305 if (co_clock_type) {
2b190f4faaa462 Frank Wunderlich 2021-07-12 306 /*VCN28 has been turned off by GPS OR FM */
2b190f4faaa462 Frank Wunderlich 2021-07-12 307 #if CONSYS_CLOCK_BUF_CTRL
2b190f4faaa462 Frank Wunderlich 2021-07-12 308 clk_buf_ctrl(CLK_BUF_CONN, 0);
2b190f4faaa462 Frank Wunderlich 2021-07-12 309 #endif
2b190f4faaa462 Frank Wunderlich 2021-07-12 310 } else {
2b190f4faaa462 Frank Wunderlich 2021-07-12 311 regmap_update_bits(pmic_regmap, 0x41C, 0x1 << 14, 0x0 << 14);/*V28*/
2b190f4faaa462 Frank Wunderlich 2021-07-12 312 /*turn off VCN28 LDO (with PMIC_WRAP API)" */
2b190f4faaa462 Frank Wunderlich 2021-07-12 313 if (reg_VCN28) {
2b190f4faaa462 Frank Wunderlich 2021-07-12 314 if (regulator_disable(reg_VCN28))
2b190f4faaa462 Frank Wunderlich 2021-07-12 315 WMT_PLAT_ERR_FUNC("disable VCN_2V8 fail!\n");
2b190f4faaa462 Frank Wunderlich 2021-07-12 316 else
2b190f4faaa462 Frank Wunderlich 2021-07-12 317 WMT_PLAT_DBG_FUNC("disable VCN_2V8 ok\n");
2b190f4faaa462 Frank Wunderlich 2021-07-12 318 }
2b190f4faaa462 Frank Wunderlich 2021-07-12 319 }
2b190f4faaa462 Frank Wunderlich 2021-07-12 320
2b190f4faaa462 Frank Wunderlich 2021-07-12 321 /*AP power off MT6625L VCN_1V8 LDO */
2b190f4faaa462 Frank Wunderlich 2021-07-12 322 regulator_set_mode(reg_VCN18, REGULATOR_MODE_STANDBY);
2b190f4faaa462 Frank Wunderlich 2021-07-12 323 if (reg_VCN18) {
2b190f4faaa462 Frank Wunderlich 2021-07-12 324 if (regulator_disable(reg_VCN18))
2b190f4faaa462 Frank Wunderlich 2021-07-12 325 WMT_PLAT_ERR_FUNC("disable VCN_1V8 fail!\n");
2b190f4faaa462 Frank Wunderlich 2021-07-12 326 else
2b190f4faaa462 Frank Wunderlich 2021-07-12 327 WMT_PLAT_DBG_FUNC("disable VCN_1V8 ok\n");
2b190f4faaa462 Frank Wunderlich 2021-07-12 328 }
2b190f4faaa462 Frank Wunderlich 2021-07-12 329
2b190f4faaa462 Frank Wunderlich 2021-07-12 330 }
2b190f4faaa462 Frank Wunderlich 2021-07-12 331 WMT_PLAT_DBG_FUNC("CONSYS-HW-REG-CTRL(0x%08x),finish\n", on);
2b190f4faaa462 Frank Wunderlich 2021-07-12 332 return 0;
2b190f4faaa462 Frank Wunderlich 2021-07-12 333 }
2b190f4faaa462 Frank Wunderlich 2021-07-12 334
2b190f4faaa462 Frank Wunderlich 2021-07-12 @335 INT32 mtk_wcn_consys_hw_gpio_ctrl(UINT32 on)
2b190f4faaa462 Frank Wunderlich 2021-07-12 336 {
2b190f4faaa462 Frank Wunderlich 2021-07-12 337 INT32 iRet = 0;
2b190f4faaa462 Frank Wunderlich 2021-07-12 338
2b190f4faaa462 Frank Wunderlich 2021-07-12 339 WMT_PLAT_DBG_FUNC("CONSYS-HW-GPIO-CTRL(0x%08x), start\n", on);
2b190f4faaa462 Frank Wunderlich 2021-07-12 340
2b190f4faaa462 Frank Wunderlich 2021-07-12 341 if (on) {
2b190f4faaa462 Frank Wunderlich 2021-07-12 342
2b190f4faaa462 Frank Wunderlich 2021-07-12 343 /* TODO: [FixMe][GeorgeKuo] double check if BGF_INT is implemented ok */
2b190f4faaa462 Frank Wunderlich 2021-07-12 344 /* iRet += wmt_plat_gpio_ctrl(PIN_BGF_EINT, PIN_STA_MUX); */
2b190f4faaa462 Frank Wunderlich 2021-07-12 345 iRet += wmt_plat_eirq_ctrl(PIN_BGF_EINT, PIN_STA_INIT);
2b190f4faaa462 Frank Wunderlich 2021-07-12 346 iRet += wmt_plat_eirq_ctrl(PIN_BGF_EINT, PIN_STA_EINT_DIS);
2b190f4faaa462 Frank Wunderlich 2021-07-12 347 WMT_PLAT_DBG_FUNC("CONSYS-HW, BGF IRQ registered and disabled\n");
2b190f4faaa462 Frank Wunderlich 2021-07-12 348
2b190f4faaa462 Frank Wunderlich 2021-07-12 349 } else {
2b190f4faaa462 Frank Wunderlich 2021-07-12 350
2b190f4faaa462 Frank Wunderlich 2021-07-12 351 /* set bgf eint/all eint to deinit state, namely input low state */
2b190f4faaa462 Frank Wunderlich 2021-07-12 352 iRet += wmt_plat_eirq_ctrl(PIN_BGF_EINT, PIN_STA_EINT_DIS);
2b190f4faaa462 Frank Wunderlich 2021-07-12 353 iRet += wmt_plat_eirq_ctrl(PIN_BGF_EINT, PIN_STA_DEINIT);
2b190f4faaa462 Frank Wunderlich 2021-07-12 354 WMT_PLAT_DBG_FUNC("CONSYS-HW, BGF IRQ unregistered and disabled\n");
2b190f4faaa462 Frank Wunderlich 2021-07-12 355 /* iRet += wmt_plat_gpio_ctrl(PIN_BGF_EINT, PIN_STA_DEINIT); */
2b190f4faaa462 Frank Wunderlich 2021-07-12 356 }
2b190f4faaa462 Frank Wunderlich 2021-07-12 357 WMT_PLAT_DBG_FUNC("CONSYS-HW-GPIO-CTRL(0x%08x), finish\n", on);
2b190f4faaa462 Frank Wunderlich 2021-07-12 358 return iRet;
2b190f4faaa462 Frank Wunderlich 2021-07-12 359
:::::: The code@line 191 was first introduced by commit
:::::: 2b190f4faaa462e17cc35e26250875142e239187 mt6625l: add driver folder from 5.13
:::::: TO: Frank Wunderlich <frank-w@public-files.de>
:::::: CC: Frank Wunderlich <frank-w@public-files.de>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org
[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 30275 bytes --]
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2021-08-27 3:51 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-08-27 3:51 [frank-w-bpi-r2-4.14:5.14-otg 8/30] drivers/misc/mediatek/connectivity/common/conn_soc/mt7623/mtk_wcn_consys_hw.c:191:6: error: no previous prototype for function 'mtk_wcn_consys_power_on' kernel test robot
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.