Defined in 2 files as a member:

Defined in 1 files as a function:

Referenced in 12 files:

Smatch caller information:

drivers/gpu/drm/display/drm_hdmi_state_helper.c drm_atomic_helper_connector_hdmi_update_audio_infoframe() -> write_infoframe()

Type Parameter Key Value
PARAM_VALUE 0 connector 4096-ptr_max
PARAM_VALUE 0 connector->display_info.is_hdmi 1
PARAM_VALUE 0 connector->hdmi.funcs 4096-ptr_max
PARAM_VALUE 0 connector->hdmi.funcs->audio.write_infoframe 4096-ptr_max
PARAM_VALUE 0 connector->hdmi.infoframes.audio.set 1
PARAM_VALUE 0 connector->hdmi.infoframes.lock.dep_map->name 0-255
PARAM_VALUE 0 connector->hdmi.infoframes.lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 connector->hdmi.infoframes.lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 connector->hdmi.infoframes.lock.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 connector->hdmi.infoframes.lock.wait_lock.owner (-1)
PARAM_VALUE 0 connector->hdmi.infoframes.lock.wait_lock.owner_cpu u32max
PARAM_VALUE 1 funcs 4096-ptr_max
PARAM_VALUE 1 funcs->write_infoframe 4096-ptr_max
PARAM_VALUE 2 type 425214748309618688
PARAM_VALUE 3 new_frame 4096-ptr_max
PARAM_VALUE 3 new_frame->set 1
BUF_SIZE 0 connector s32min-(-2),1-s32max
BUF_SIZE 0 connector s32min-(-2),1-s32max
BUF_SIZE 2 type 6
BUF_SIZE 3 new_frame 64
CAPPED_DATA 0 &connector->hdmi.infoframes.lock 1
DATA_SOURCE 0 connector $0
STR_LEN 0 connector 5
PARAM_COMPARE 0 &connector->hdmi.infoframes.audio == $3
TERMINATED 2 type 1
RX_PATH
TASK_NOT_RUNNING
LOCK2 0 &connector->hdmi.infoframes.lock
HALF_LOCKED2 &vc4_hdmi->mutex
HALF_LOCKED2 global &drm_unplug_srcu
TYPE_LOCK (struct drm_connector_hdmi)->infoframes.lock

drivers/gpu/drm/display/drm_hdmi_state_helper.c drm_atomic_helper_connector_hdmi_update_infoframes() -> write_infoframe()

Type Parameter Key Value
PARAM_VALUE 0 connector 4096-ptr_max
PARAM_VALUE 0 connector->display_info.is_hdmi 1
PARAM_VALUE 0 connector->hdmi.funcs 1-u64max
PARAM_VALUE 0 connector->hdmi.infoframes.audio.set 1
PARAM_VALUE 0 connector->hdmi.infoframes.lock.dep_map->name 0-255
PARAM_VALUE 0 connector->hdmi.infoframes.lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 connector->hdmi.infoframes.lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 connector->hdmi.infoframes.lock.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 connector->hdmi.infoframes.lock.wait_lock.owner (-1)
PARAM_VALUE 0 connector->hdmi.infoframes.lock.wait_lock.owner_cpu u32max
PARAM_VALUE 1 funcs 4096-ptr_max
PARAM_VALUE 2 type 425214748309618688
PARAM_VALUE 3 new_frame 4096-ptr_max
PARAM_VALUE 3 new_frame->set 1
BUF_SIZE 0 connector (-1),3032
BUF_SIZE 0 connector (-1),3032
BUF_SIZE 2 type 6
CAPPED_DATA 0 &connector->hdmi.infoframes.lock 1
DATA_SOURCE 0 connector $0
STR_LEN 0 connector 5
TERMINATED 2 type 1
RX_PATH
TASK_NOT_RUNNING
LOCK2 0 &connector->hdmi.infoframes.lock
HALF_LOCKED2 &state->dev->mode_config.connection_mutex
HALF_LOCKED2 &state->dev->mode_config.connection_mutex.mutex
HALF_LOCKED2 &vc4_hdmi->mutex
HALF_LOCKED2 global &drm_unplug_srcu
TYPE_LOCK (struct drm_connector_hdmi)->infoframes.lock

drivers/gpu/drm/display/drm_hdmi_state_helper.c write_or_clear_infoframe() -> write_infoframe()

Type Parameter Key Value
PARAM_VALUE 0 connector 4096-ptr_max
PARAM_VALUE 0 connector->display_info.is_hdmi 1
PARAM_VALUE 0 connector->hdmi.funcs 1-u64max
PARAM_VALUE 0 connector->hdmi.infoframes.lock.dep_map->name 0-255
PARAM_VALUE 0 connector->hdmi.infoframes.lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 connector->hdmi.infoframes.lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 connector->hdmi.infoframes.lock.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 connector->hdmi.infoframes.lock.wait_lock.owner (-1)
PARAM_VALUE 0 connector->hdmi.infoframes.lock.wait_lock.owner_cpu u32max
PARAM_VALUE 1 funcs 4096-ptr_max
PARAM_VALUE 2 type 1295091901105184768,3666000388389851136,5532558023068282880,6439437442574270464
PARAM_VALUE 3 new_frame 4096-ptr_max
PARAM_VALUE 3 new_frame->set 1
BUF_SIZE 0 connector (-1),3032
BUF_SIZE 0 connector (-1),3032
BUF_SIZE 2 type 4,8
BUF_SIZE 2 type 4,8
DATA_SOURCE 0 connector $0
DATA_SOURCE 1 funcs $1
DATA_SOURCE 2 type $2
DATA_SOURCE 3 new_frame $4
STR_LEN 0 connector 3,7
STR_LEN 0 connector 3,7
TERMINATED 2 type 1
RX_PATH
TASK_NOT_RUNNING
LOCK2 0 &connector->hdmi.infoframes.lock
HALF_LOCKED2 &state->dev->mode_config.connection_mutex
HALF_LOCKED2 &state->dev->mode_config.connection_mutex.mutex
HALF_LOCKED2 &vc4_hdmi->mutex
HALF_LOCKED2 global &drm_unplug_srcu
TYPE_LOCK (struct drm_connector_hdmi)->infoframes.lock

Smatch assignments to (struct drm_connector_infoframe_funcs)->write_infoframe:

drivers/gpu/drm/tests/drm_connector_test.c (null)() -> (struct drm_connector_infoframe_funcs)->write_infoframe [0,3016823290814492672]

drivers/gpu/drm/tegra/dc.c tegra_dc_probe() -> (struct drm_connector_infoframe_funcs)->write_infoframe [0]

drivers/gpu/drm/display/drm_bridge_connector.c (null)() -> (struct drm_connector_infoframe_funcs)->write_infoframe [0,2858783261939847168,3051832168683376640,6279792600980451328,6798296415930687488,7864439790641868800]

drivers/gpu/drm/sun4i/sun4i_hdmi_enc.c (null)() -> (struct drm_connector_infoframe_funcs)->write_infoframe [0,4072023078225326080,7724665387546542080]

drivers/gpu/drm/tests/drm_hdmi_state_helper_test.c (null)() -> (struct drm_connector_infoframe_funcs)->write_infoframe [0,916334345593262080,5280184470379753472]

drivers/gpu/drm/vc4/vc4_hdmi.c (null)() -> (struct drm_connector_infoframe_funcs)->write_infoframe [0,546012008087269376,1347153464335110144,5166275613696339968,6404597952898719744,6689473150710632448]