Defined in 2 files as a function:

Referenced in 7 files:

Smatch caller information:

drivers/pmdomain/core.c device_awake_path() -> device_wakeup_path()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
BUF_SIZE 0 dev (-1),4,16,24-s32max
BUF_SIZE 0 dev (-1),4,16,24-s32max
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 0 &dev->mutex

drivers/tty/serial/stm32-usart.c stm32_usart_serial_resume() -> device_wakeup_path()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
BUF_SIZE 0 dev (-1),4,16,24-s32max
BUF_SIZE 0 dev (-1),4,16,24-s32max
CAPPED_DATA 0 dev->pins->p 1
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 0 &dev->mutex

drivers/tty/serial/stm32-usart.c stm32_usart_serial_suspend() -> device_wakeup_path()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
BUF_SIZE 0 dev (-1),4,16,24-s32max
BUF_SIZE 0 dev (-1),4,16,24-s32max
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 0 &dev->mutex

drivers/tty/serial/stm32-usart.c stm32_usart_serial_suspend() -> device_wakeup_path()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
BUF_SIZE 0 dev (-1),4,16,24-s32max
BUF_SIZE 0 dev (-1),4,16,24-s32max
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 0 &dev->mutex

drivers/pci/controller/dwc/pcie-stm32.c stm32_pcie_resume_noirq() -> device_wakeup_path()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
BUF_SIZE 0 dev (-1),4,16,24-s32max
BUF_SIZE 0 dev (-1),4,16,24-s32max
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 0 &dev->mutex

drivers/pci/controller/dwc/pcie-stm32.c stm32_pcie_suspend_noirq() -> device_wakeup_path()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
BUF_SIZE 0 dev (-1),4,16,24-s32max
BUF_SIZE 0 dev (-1),4,16,24-s32max
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 0 &dev->mutex

drivers/i2c/busses/i2c-stm32f7.c stm32f7_i2c_resume() -> device_wakeup_path()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
BUF_SIZE 0 dev (-1),4,16,24-s32max
BUF_SIZE 0 dev (-1),4,16,24-s32max
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 0 &dev->mutex

drivers/i2c/busses/i2c-stm32f7.c stm32f7_i2c_suspend() -> device_wakeup_path()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
BUF_SIZE 0 dev (-1),4,16,24-s32max
BUF_SIZE 0 dev (-1),4,16,24-s32max
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 0 &dev->mutex

drivers/base/power/main.c device_suspend() -> device_wakeup_path()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
BUF_SIZE 0 dev (-1),16,24,56,64,120,1616,7104
BUF_SIZE 0 dev (-1),16,24,56,64,120,1616,7104
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &system_transition_mutex

drivers/base/power/main.c dpm_propagate_wakeup_to_parent() -> device_wakeup_path()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
BUF_SIZE 0 dev (-1),16,24,56,64,120,1616,7104
BUF_SIZE 0 dev (-1),16,24,56,64,120,1616,7104
DATA_SOURCE 0 dev $0
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &parent->power.lock
LOCK2 irq
HALF_LOCKED2 global &system_transition_mutex
HALF_LOCKED2 0 &dev->mutex
TYPE_LOCK (struct dev_pm_info)->lock

drivers/usb/typec/ucsi/ucsi_stm32g0.c ucsi_stm32g0_resume() -> device_wakeup_path()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
BUF_SIZE 0 dev (-1),4,16,24-s32max
BUF_SIZE 0 dev (-1),4,16,24-s32max
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 0 &dev->mutex

drivers/usb/typec/ucsi/ucsi_stm32g0.c ucsi_stm32g0_suspend() -> device_wakeup_path()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
BUF_SIZE 0 dev (-1),4,16,24-s32max
BUF_SIZE 0 dev (-1),4,16,24-s32max
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 0 &dev->mutex

drivers/pmdomain/ti/ti_sci_pm_domains.c ti_sci_pd_set_wkup_constraint() -> device_wakeup_path()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
BUF_SIZE 0 dev (-1),4,16,24-s32max
BUF_SIZE 0 dev (-1),4,16,24-s32max
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &fsm->lock
HALF_LOCKED2 0 &dev->mutex