函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:lib\stmp_device.c Create Date:2022-07-27 08:19:23
Last Modify:2020-03-12 14:18:49 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:stmp_reset_block

函数原型:int stmp_reset_block(void __iomem *reset_addr)

返回类型:int

参数:

类型参数名称
void __iomem *reset_addr
41  timeout等于0x400
44  ret等于stmp_clear_poll_bit(reset_addr, STMP_MODULE_SFTRST)
45  如果此条件成立可能性小(为编译器优化)(ret)则转到:error
49  writel(STMP_MODULE_CLKGATE, reset_addr + STMP_OFFSET_REG_CLR)
52  writel(STMP_MODULE_SFTRST, reset_addr + STMP_OFFSET_REG_SET)
53  0x10c7 is 2**32 / 1000000 (rounded up) (1)
56  当非readl(reset_addr)按位与STMP_MODULE_CLKGATE的值且timeout先自减循环
58  如果此条件成立可能性小(为编译器优化)(!timeout)则转到:error
62  ret等于stmp_clear_poll_bit(reset_addr, STMP_MODULE_SFTRST)
63  如果此条件成立可能性小(为编译器优化)(ret)则转到:error
67  ret等于stmp_clear_poll_bit(reset_addr, STMP_MODULE_CLKGATE)
68  如果此条件成立可能性小(为编译器优化)(ret)则转到:error
71  返回:0
73  error :
74  打印错误信息("%s(%p): module reset timeout\n", __func__, reset_addr)
75  返回:负ETIMEDOUT