Documented in 1 files:

Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 5 files:

Smatch caller information:

drivers/gpio/gpiolib-sysfs.c export_gpio_desc() -> gpiod_hwgpio()

Type Parameter Key Value
PARAM_VALUE 0 desc 4096-ptr_max
PARAM_VALUE 0 desc->gdev 4096-ptr_max
DATA_SOURCE 0 desc $0
RX_PATH
TASK_NOT_RUNNING
LOCK2 &of->mutex
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct kernfs_open_file)->mutex

drivers/gpio/gpiolib-sysfs.c export_gpio_desc() -> gpiod_hwgpio()

Type Parameter Key Value
PARAM_VALUE 0 desc 4096-ptr_max
PARAM_VALUE 0 desc->gdev 4096-ptr_max
DATA_SOURCE 0 desc $0
RX_PATH
TASK_NOT_RUNNING
LOCK2 &of->mutex
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct kernfs_open_file)->mutex

drivers/gpio/gpiolib-sysfs.c gpio_sysfs_free_irq() -> gpiod_hwgpio()

Type Parameter Key Value
PARAM_VALUE 0 desc 4096-ptr_max
PARAM_VALUE 0 desc->gdev 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
LOCK2 _T->lock
HALF_LOCKED2 &of->mutex

drivers/gpio/gpiolib-sysfs.c gpio_sysfs_request_irq() -> gpiod_hwgpio()

Type Parameter Key Value
PARAM_VALUE 0 desc 4096-ptr_max
PARAM_VALUE 0 desc->gdev 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
LOCK2 &of->mutex
LOCK2 _T->lock
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct kernfs_open_file)->mutex

drivers/gpio/gpiolib-sysfs.c gpio_sysfs_request_irq() -> gpiod_hwgpio()

Type Parameter Key Value
PARAM_VALUE 0 desc 4096-ptr_max
PARAM_VALUE 0 desc->gdev 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
LOCK2 &of->mutex
LOCK2 _T->lock
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct kernfs_open_file)->mutex

drivers/gpio/gpiolib-sysfs.c gpiod_export() -> gpiod_hwgpio()

Type Parameter Key Value
PARAM_VALUE 0 desc 4096-ptr_max
PARAM_VALUE 0 desc->gdev 4096-ptr_max
DATA_SOURCE 0 desc $0
RX_PATH
TASK_NOT_RUNNING
LOCK2 _T->lock
HALF_LOCKED2 &of->mutex

drivers/gpio/gpiolib-sysfs.c gpiod_export() -> gpiod_hwgpio()

Type Parameter Key Value
PARAM_VALUE 0 desc 4096-ptr_max
PARAM_VALUE 0 desc->gdev 4096-ptr_max
DATA_SOURCE 0 desc $0
RX_PATH
TASK_NOT_RUNNING
LOCK2 _T->lock
HALF_LOCKED2 &of->mutex

drivers/gpio/gpiolib-cdev.c debounce_work_func() -> gpiod_hwgpio()

Type Parameter Key Value
PARAM_VALUE 0 desc 4096-ptr_max
HALF_LOCKED2 &pool->lock

drivers/gpio/gpiolib-cdev.c edge_irq_thread() -> gpiod_hwgpio()

Type Parameter Key Value
PARAM_VALUE 0 desc 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING

drivers/gpio/gpiolib-cdev.c gpio_desc_to_lineinfo() -> gpiod_hwgpio()

Type Parameter Key Value
PARAM_VALUE 0 desc 4096-ptr_max
PARAM_VALUE 0 desc->gdev 4096-ptr_max
DATA_SOURCE 0 desc $0
HALF_LOCKED2 _T->lock

drivers/gpio/gpiolib-cdev.c lineinfo_changed_notify() -> gpiod_hwgpio()

Type Parameter Key Value
DATA_SOURCE 0 desc $2

drivers/gpio/gpiolib-cdev.c linereq_show_fdinfo() -> gpiod_hwgpio()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
LOCK2 &out->lock
TYPE_LOCK (struct seq_file)->lock

drivers/gpio/gpiolib-cdev.c process_hw_ts_thread() -> gpiod_hwgpio()

Type Parameter Key Value
HALF_LOCKED2 &pool->lock

drivers/gpio/gpiolib-shared.c devm_gpiod_shared_get() -> gpiod_hwgpio()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
LOCK2 _T->lock

drivers/gpio/gpio-aspeed.c aspeed_gpio_copro_grab_gpio() -> gpiod_hwgpio()

Type Parameter Key Value
PARAM_VALUE 0 desc 0,4096-ptr_max
BUF_SIZE 0 desc s32min,(-1),1-s32max
BUF_SIZE 0 desc s32min,(-1),1-s32max
DATA_SOURCE 0 desc $0
RX_PATH
TASK_NOT_RUNNING
LOCK2 &master->lock
HALF_LOCKED2 &of->mutex
TYPE_LOCK (struct fsi_master_acf)->lock

drivers/gpio/gpio-aspeed.c aspeed_gpio_copro_release_gpio() -> gpiod_hwgpio()

Type Parameter Key Value
PARAM_VALUE 0 desc 0,4096-ptr_max
BUF_SIZE 0 desc s32min,(-1),1-s32max
BUF_SIZE 0 desc s32min,(-1),1-s32max
DATA_SOURCE 0 desc $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &master->lock
HALF_LOCKED2 &of->mutex

drivers/gpio/gpiolib.c gpio_chip_get_value() -> gpiod_hwgpio()

Type Parameter Key Value
PARAM_VALUE 0 desc 4096-ptr_max
BUF_SIZE 0 desc s32min-(-1),1-s32max
BUF_SIZE 0 desc s32min-(-1),1-s32max
DATA_SOURCE 0 desc $1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &s->lock
HALF_LOCKED2 _T->lock

drivers/gpio/gpiolib.c gpio_do_set_config() -> gpiod_hwgpio()

Type Parameter Key Value
PARAM_VALUE 0 desc 4096-ptr_max
PARAM_VALUE 0 desc->gdev 4096-ptr_max
BUF_SIZE 0 desc s32min-(-1),1-s32max
BUF_SIZE 0 desc s32min-(-1),1-s32max
DATA_SOURCE 0 desc $0
STR_LEN 0 desc (-1),1,11,31,49
STR_LEN 0 desc (-1),1,11,31,49
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 _T->lock

drivers/gpio/gpiolib.c gpio_set_config_with_argument_optional() -> gpiod_hwgpio()

Type Parameter Key Value
PARAM_VALUE 0 desc 4096-ptr_max
BUF_SIZE 0 desc s32min-(-1),1-s32max
BUF_SIZE 0 desc s32min-(-1),1-s32max
DATA_SOURCE 0 desc $0
STR_LEN 0 desc (-1),1,11,31,49
STR_LEN 0 desc (-1),1,11,31,49
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 _T->lock

drivers/gpio/gpiolib.c gpio_set_open_drain_value_commit() -> gpiod_hwgpio()

Type Parameter Key Value
PARAM_VALUE 0 desc 4096-ptr_max
DATA_SOURCE 0 desc $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 _T->lock

drivers/gpio/gpiolib.c gpio_set_open_source_value_commit() -> gpiod_hwgpio()

Type Parameter Key Value
PARAM_VALUE 0 desc 4096-ptr_max
DATA_SOURCE 0 desc $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 _T->lock

drivers/gpio/gpiolib.c gpiod_direction_input_nonotify() -> gpiod_hwgpio()

Type Parameter Key Value
PARAM_VALUE 0 desc 4096-ptr_max
PARAM_VALUE 0 desc->gdev 4096-ptr_max
BUF_SIZE 0 desc s32min-(-1),1-s32max
BUF_SIZE 0 desc s32min-(-1),1-s32max
DATA_SOURCE 0 desc $0
STR_LEN 0 desc (-1),1,11,31,49
STR_LEN 0 desc (-1),1,11,31,49
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 _T->lock

drivers/gpio/gpiolib.c gpiod_direction_input_nonotify() -> gpiod_hwgpio()

Type Parameter Key Value
PARAM_VALUE 0 desc 4096-ptr_max
PARAM_VALUE 0 desc->gdev 4096-ptr_max
BUF_SIZE 0 desc s32min-(-1),1-s32max
BUF_SIZE 0 desc s32min-(-1),1-s32max
DATA_SOURCE 0 desc $0
STR_LEN 0 desc (-1),1,11,31,49
STR_LEN 0 desc (-1),1,11,31,49
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 _T->lock

drivers/gpio/gpiolib.c gpiod_direction_output_raw_commit() -> gpiod_hwgpio()

Type Parameter Key Value
PARAM_VALUE 0 desc 4096-ptr_max
PARAM_VALUE 0 desc->gdev 4096-ptr_max
DATA_SOURCE 0 desc $0
STR_LEN 0 desc (-1),1,11,31,49
STR_LEN 0 desc (-1),1,11,31,49
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 _T->lock

drivers/gpio/gpiolib.c gpiod_direction_output_raw_commit() -> gpiod_hwgpio()

Type Parameter Key Value
PARAM_VALUE 0 desc 4096-ptr_max
PARAM_VALUE 0 desc->gdev 4096-ptr_max
DATA_SOURCE 0 desc $0
STR_LEN 0 desc (-1),1,11,31,49
STR_LEN 0 desc (-1),1,11,31,49
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 _T->lock

drivers/gpio/gpiolib.c gpiod_direction_output_raw_commit() -> gpiod_hwgpio()

Type Parameter Key Value
PARAM_VALUE 0 desc 4096-ptr_max
PARAM_VALUE 0 desc->gdev 4096-ptr_max
DATA_SOURCE 0 desc $0
STR_LEN 0 desc (-1),1,11,31,49
STR_LEN 0 desc (-1),1,11,31,49
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 _T->lock

drivers/gpio/gpiolib.c gpiod_disable_hw_timestamp_ns() -> gpiod_hwgpio()

Type Parameter Key Value
PARAM_VALUE 0 desc 4096-ptr_max
PARAM_VALUE 0 desc->gdev 4096-ptr_max
BUF_SIZE 0 desc s32min,1-s32max
BUF_SIZE 0 desc s32min,1-s32max
DATA_SOURCE 0 desc $0
RX_PATH
TASK_NOT_RUNNING
LOCK2 &ei->req_mlock
TYPE_LOCK (struct hte_ts_info)->req_mlock

drivers/gpio/gpiolib.c gpiod_enable_hw_timestamp_ns() -> gpiod_hwgpio()

Type Parameter Key Value
PARAM_VALUE 0 desc 4096-ptr_max
PARAM_VALUE 0 desc->gdev 4096-ptr_max
BUF_SIZE 0 desc s32min,1-s32max
BUF_SIZE 0 desc s32min,1-s32max
DATA_SOURCE 0 desc $0
RX_PATH
TASK_NOT_RUNNING
LOCK2 &ei->req_mlock
HALF_LOCKED2 _T->lock
TYPE_LOCK (struct hte_ts_info)->req_mlock

drivers/gpio/gpiolib.c gpiod_free_commit() -> gpiod_hwgpio()

Type Parameter Key Value
PARAM_VALUE 0 desc 4096-ptr_max
PARAM_VALUE 0 desc->gdev 4096-ptr_max
BUF_SIZE 0 desc s32min-(-1),1-s32max
BUF_SIZE 0 desc s32min-(-1),1-s32max
DATA_SOURCE 0 desc $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 _T->lock

drivers/gpio/gpiolib.c gpiod_get_array() -> gpiod_hwgpio()

Type Parameter Key Value
PARAM_VALUE 0 desc 4096-ptr_max
BUF_SIZE 0 desc s32min-(-1),1-s32max
BUF_SIZE 0 desc s32min-(-1),1-s32max
DATA_SOURCE 0 desc r gpiod_get_index
RX_PATH
TASK_NOT_RUNNING

drivers/gpio/gpiolib.c gpiod_get_array() -> gpiod_hwgpio()

Type Parameter Key Value
PARAM_VALUE 0 desc 4096-ptr_max
BUF_SIZE 0 desc s32min-(-1),1-s32max
BUF_SIZE 0 desc s32min-(-1),1-s32max
DATA_SOURCE 0 desc r gpiod_get_index
RX_PATH
TASK_NOT_RUNNING

drivers/gpio/gpiolib.c gpiod_get_array_value_complex() -> gpiod_hwgpio()

Type Parameter Key Value
PARAM_VALUE 0 desc 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 _T->lock

drivers/gpio/gpiolib.c gpiod_get_array_value_complex() -> gpiod_hwgpio()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 _T->lock

drivers/gpio/gpiolib.c gpiod_get_direction() -> gpiod_hwgpio()

Type Parameter Key Value
PARAM_VALUE 0 desc 4096-ptr_max
PARAM_VALUE 0 desc->gdev 4096-ptr_max
BUF_SIZE 0 desc s32min-(-1),1-s32max
BUF_SIZE 0 desc s32min-(-1),1-s32max
DATA_SOURCE 0 desc $0
STR_LEN 0 desc (-1),5-6
STR_LEN 0 desc (-1),5-6
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 &s->lock
HALF_LOCKED2 _T->lock

drivers/gpio/gpiolib.c gpiod_hog() -> gpiod_hwgpio()

Type Parameter Key Value
PARAM_VALUE 0 desc 4096-ptr_max
PARAM_VALUE 0 desc->gdev 4096-ptr_max
DATA_SOURCE 0 desc $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 _T->lock

drivers/gpio/gpiolib.c gpiod_request_commit() -> gpiod_hwgpio()

Type Parameter Key Value
PARAM_VALUE 0 desc 4096-ptr_max
PARAM_VALUE 0 desc->gdev 4096-ptr_max
BUF_SIZE 0 desc s32min-(-1),1-s32max
BUF_SIZE 0 desc s32min-(-1),1-s32max
DATA_SOURCE 0 desc $0
STR_LEN 0 desc (-1),5-6
STR_LEN 0 desc (-1),5-6
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 _T->lock

drivers/gpio/gpiolib.c gpiod_set_array_value_complex() -> gpiod_hwgpio()

Type Parameter Key Value
PARAM_VALUE 0 desc 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 _T->lock

drivers/gpio/gpiolib.c gpiod_set_raw_value_commit() -> gpiod_hwgpio()

Type Parameter Key Value
PARAM_VALUE 0 desc 4096-ptr_max
PARAM_VALUE 0 desc->gdev 4096-ptr_max
BUF_SIZE 0 desc s32min,(-1)-s32max
BUF_SIZE 0 desc s32min,(-1)-s32max
DATA_SOURCE 0 desc $0
RX_PATH
TASK_NOT_RUNNING

drivers/gpio/gpiolib.c gpiod_to_irq() -> gpiod_hwgpio()

Type Parameter Key Value
PARAM_VALUE 0 desc 4096-ptr_max
PARAM_VALUE 0 desc->gdev 4096-ptr_max
BUF_SIZE 0 desc s32min-s32max
DATA_SOURCE 0 desc $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &_dev->mutex
HALF_LOCKED2 &attr->mutex
HALF_LOCKED2 &board->big_gpib_mutex
HALF_LOCKED2 &card->mutex
HALF_LOCKED2 &data->lock
HALF_LOCKED2 &data->read_lock
HALF_LOCKED2 &dev->mutex
HALF_LOCKED2 &led->trigger_lock
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 _T->lock