How is the DRM driver framework executed? Read EDID to mode_set?

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

How is the DRM driver framework executed? Read EDID to mode_set?

311 次查看
ximenbingmeng
Contributor IV
Tracing the code back to the file drivers/gpu/drm/bridge/cadence/cdns_hdmi_core. c, Function:static int __cdns_hdmi_probe(struct platform_device *pdev,
  struct cdns_mhdp_device *mhdp)
mhdp->bridge.base.driver_private = mhdp;
mhdp->bridge.base.funcs = &cdns_hdmi_bridge_funcs; Here, cdns_hdmi_bridge_funcs is initialized.
The structure is defined as follows,
static const struct drm_bridge_funcs cdns_hdmi_bridge_funcs = {
.attach = cdns_hdmi_bridge_attach,
.enable = cdns_hdmi_bridge_enable,
.disable = cdns_hdmi_bridge_disable,
.mode_set = cdns_hdmi_bridge_mode_set,
.mode_valid = cdns_hdmi_bridge_mode_valid,
.mode_fixup = cdns_hdmi_bridge_mode_fixup,
};
So where does the parameter of cdns_hdmi_bridge_mode_set come from? When will it be called?
 
a. How to print out the EDID in the file drivers/gpu/drm/bridge/cadence/cdns-hdmi-core.c after obtaining the EDID using the static int cdns_hdmi_connector_get_modes(struct drm_connector *connector) function?
b. After obtaining EDID, what function does the DRM driver follow to execute the process to mode_set.
c. How is the DRM driver framework executed?
标记 (1)
0 项奖励
回复
1 回复

281 次查看
AldoG
NXP TechSupport
NXP TechSupport
0 项奖励
回复