Symbol: meson_dw_hdmi
drivers/gpu/drm/meson/meson_dw_hdmi.c
124
struct meson_dw_hdmi;
drivers/gpu/drm/meson/meson_dw_hdmi.c
127
unsigned int (*top_read)(struct meson_dw_hdmi *dw_hdmi,
drivers/gpu/drm/meson/meson_dw_hdmi.c
129
void (*top_write)(struct meson_dw_hdmi *dw_hdmi,
drivers/gpu/drm/meson/meson_dw_hdmi.c
131
unsigned int (*dwc_read)(struct meson_dw_hdmi *dw_hdmi,
drivers/gpu/drm/meson/meson_dw_hdmi.c
133
void (*dwc_write)(struct meson_dw_hdmi *dw_hdmi,
drivers/gpu/drm/meson/meson_dw_hdmi.c
153
static inline int dw_hdmi_is_compatible(struct meson_dw_hdmi *dw_hdmi,
drivers/gpu/drm/meson/meson_dw_hdmi.c
161
static unsigned int dw_hdmi_top_read(struct meson_dw_hdmi *dw_hdmi,
drivers/gpu/drm/meson/meson_dw_hdmi.c
182
static unsigned int dw_hdmi_g12a_top_read(struct meson_dw_hdmi *dw_hdmi,
drivers/gpu/drm/meson/meson_dw_hdmi.c
188
static inline void dw_hdmi_top_write(struct meson_dw_hdmi *dw_hdmi,
drivers/gpu/drm/meson/meson_dw_hdmi.c
205
static inline void dw_hdmi_g12a_top_write(struct meson_dw_hdmi *dw_hdmi,
drivers/gpu/drm/meson/meson_dw_hdmi.c
212
static inline void dw_hdmi_top_write_bits(struct meson_dw_hdmi *dw_hdmi,
drivers/gpu/drm/meson/meson_dw_hdmi.c
225
static unsigned int dw_hdmi_dwc_read(struct meson_dw_hdmi *dw_hdmi,
drivers/gpu/drm/meson/meson_dw_hdmi.c
246
static unsigned int dw_hdmi_g12a_dwc_read(struct meson_dw_hdmi *dw_hdmi,
drivers/gpu/drm/meson/meson_dw_hdmi.c
252
static inline void dw_hdmi_dwc_write(struct meson_dw_hdmi *dw_hdmi,
drivers/gpu/drm/meson/meson_dw_hdmi.c
269
static inline void dw_hdmi_g12a_dwc_write(struct meson_dw_hdmi *dw_hdmi,
drivers/gpu/drm/meson/meson_dw_hdmi.c
278
static void meson_hdmi_phy_setup_mode(struct meson_dw_hdmi *dw_hdmi,
drivers/gpu/drm/meson/meson_dw_hdmi.c
343
static inline void meson_dw_hdmi_phy_reset(struct meson_dw_hdmi *dw_hdmi)
drivers/gpu/drm/meson/meson_dw_hdmi.c
362
struct meson_dw_hdmi *dw_hdmi = (struct meson_dw_hdmi *)data;
drivers/gpu/drm/meson/meson_dw_hdmi.c
446
struct meson_dw_hdmi *dw_hdmi = (struct meson_dw_hdmi *)data;
drivers/gpu/drm/meson/meson_dw_hdmi.c
459
struct meson_dw_hdmi *dw_hdmi = (struct meson_dw_hdmi *)data;
drivers/gpu/drm/meson/meson_dw_hdmi.c
468
struct meson_dw_hdmi *dw_hdmi = (struct meson_dw_hdmi *)data;
drivers/gpu/drm/meson/meson_dw_hdmi.c
493
struct meson_dw_hdmi *dw_hdmi = dev_id;
drivers/gpu/drm/meson/meson_dw_hdmi.c
517
struct meson_dw_hdmi *dw_hdmi = dev_id;
drivers/gpu/drm/meson/meson_dw_hdmi.c
544
struct meson_dw_hdmi *dw_hdmi = context;
drivers/gpu/drm/meson/meson_dw_hdmi.c
555
struct meson_dw_hdmi *dw_hdmi = context;
drivers/gpu/drm/meson/meson_dw_hdmi.c
598
static void meson_dw_hdmi_init(struct meson_dw_hdmi *meson_dw_hdmi)
drivers/gpu/drm/meson/meson_dw_hdmi.c
600
struct meson_drm *priv = meson_dw_hdmi->priv;
drivers/gpu/drm/meson/meson_dw_hdmi.c
609
reset_control_reset(meson_dw_hdmi->hdmitx_apb);
drivers/gpu/drm/meson/meson_dw_hdmi.c
610
reset_control_reset(meson_dw_hdmi->hdmitx_ctrl);
drivers/gpu/drm/meson/meson_dw_hdmi.c
611
reset_control_reset(meson_dw_hdmi->hdmitx_phy);
drivers/gpu/drm/meson/meson_dw_hdmi.c
616
meson_dw_hdmi->hdmitx + HDMITX_TOP_CTRL_REG);
drivers/gpu/drm/meson/meson_dw_hdmi.c
618
meson_dw_hdmi->hdmitx + HDMITX_DWC_CTRL_REG);
drivers/gpu/drm/meson/meson_dw_hdmi.c
622
meson_dw_hdmi->data->top_write(meson_dw_hdmi,
drivers/gpu/drm/meson/meson_dw_hdmi.c
627
meson_dw_hdmi->data->top_write(meson_dw_hdmi,
drivers/gpu/drm/meson/meson_dw_hdmi.c
631
meson_dw_hdmi->data->top_write(meson_dw_hdmi, HDMITX_TOP_BIST_CNTL, BIT(12));
drivers/gpu/drm/meson/meson_dw_hdmi.c
634
regmap_write(priv->hhi, HHI_HDMI_PHY_CNTL1, meson_dw_hdmi->data->cntl1_init);
drivers/gpu/drm/meson/meson_dw_hdmi.c
635
regmap_write(priv->hhi, HHI_HDMI_PHY_CNTL0, meson_dw_hdmi->data->cntl0_init);
drivers/gpu/drm/meson/meson_dw_hdmi.c
638
meson_dw_hdmi->data->top_write(meson_dw_hdmi, HDMITX_TOP_INTR_STAT_CLR,
drivers/gpu/drm/meson/meson_dw_hdmi.c
641
meson_dw_hdmi->data->top_write(meson_dw_hdmi, HDMITX_TOP_INTR_MASKN,
drivers/gpu/drm/meson/meson_dw_hdmi.c
674
struct meson_dw_hdmi *meson_dw_hdmi;
drivers/gpu/drm/meson/meson_dw_hdmi.c
689
meson_dw_hdmi = devm_kzalloc(dev, sizeof(*meson_dw_hdmi),
drivers/gpu/drm/meson/meson_dw_hdmi.c
691
if (!meson_dw_hdmi)
drivers/gpu/drm/meson/meson_dw_hdmi.c
694
meson_dw_hdmi->priv = priv;
drivers/gpu/drm/meson/meson_dw_hdmi.c
695
meson_dw_hdmi->dev = dev;
drivers/gpu/drm/meson/meson_dw_hdmi.c
696
meson_dw_hdmi->data = match;
drivers/gpu/drm/meson/meson_dw_hdmi.c
697
dw_plat_data = &meson_dw_hdmi->dw_plat_data;
drivers/gpu/drm/meson/meson_dw_hdmi.c
703
meson_dw_hdmi->hdmitx_apb = devm_reset_control_get_exclusive(dev,
drivers/gpu/drm/meson/meson_dw_hdmi.c
705
if (IS_ERR(meson_dw_hdmi->hdmitx_apb)) {
drivers/gpu/drm/meson/meson_dw_hdmi.c
707
return PTR_ERR(meson_dw_hdmi->hdmitx_apb);
drivers/gpu/drm/meson/meson_dw_hdmi.c
710
meson_dw_hdmi->hdmitx_ctrl = devm_reset_control_get_exclusive(dev,
drivers/gpu/drm/meson/meson_dw_hdmi.c
712
if (IS_ERR(meson_dw_hdmi->hdmitx_ctrl)) {
drivers/gpu/drm/meson/meson_dw_hdmi.c
714
return PTR_ERR(meson_dw_hdmi->hdmitx_ctrl);
drivers/gpu/drm/meson/meson_dw_hdmi.c
717
meson_dw_hdmi->hdmitx_phy = devm_reset_control_get_exclusive(dev,
drivers/gpu/drm/meson/meson_dw_hdmi.c
719
if (IS_ERR(meson_dw_hdmi->hdmitx_phy)) {
drivers/gpu/drm/meson/meson_dw_hdmi.c
721
return PTR_ERR(meson_dw_hdmi->hdmitx_phy);
drivers/gpu/drm/meson/meson_dw_hdmi.c
724
meson_dw_hdmi->hdmitx = devm_platform_ioremap_resource(pdev, 0);
drivers/gpu/drm/meson/meson_dw_hdmi.c
725
if (IS_ERR(meson_dw_hdmi->hdmitx))
drivers/gpu/drm/meson/meson_dw_hdmi.c
726
return PTR_ERR(meson_dw_hdmi->hdmitx);
drivers/gpu/drm/meson/meson_dw_hdmi.c
740
dw_plat_data->regm = devm_regmap_init(dev, NULL, meson_dw_hdmi,
drivers/gpu/drm/meson/meson_dw_hdmi.c
751
"dw_hdmi_top_irq", meson_dw_hdmi);
drivers/gpu/drm/meson/meson_dw_hdmi.c
757
meson_dw_hdmi_init(meson_dw_hdmi);
drivers/gpu/drm/meson/meson_dw_hdmi.c
761
dw_plat_data->priv_data = meson_dw_hdmi;
drivers/gpu/drm/meson/meson_dw_hdmi.c
764
dw_plat_data->phy_data = meson_dw_hdmi;
drivers/gpu/drm/meson/meson_dw_hdmi.c
770
if (dw_hdmi_is_compatible(meson_dw_hdmi, "amlogic,meson-gxl-dw-hdmi") ||
drivers/gpu/drm/meson/meson_dw_hdmi.c
771
dw_hdmi_is_compatible(meson_dw_hdmi, "amlogic,meson-gxm-dw-hdmi") ||
drivers/gpu/drm/meson/meson_dw_hdmi.c
772
dw_hdmi_is_compatible(meson_dw_hdmi, "amlogic,meson-g12a-dw-hdmi"))
drivers/gpu/drm/meson/meson_dw_hdmi.c
775
platform_set_drvdata(pdev, meson_dw_hdmi);
drivers/gpu/drm/meson/meson_dw_hdmi.c
777
meson_dw_hdmi->hdmi = dw_hdmi_probe(pdev, &meson_dw_hdmi->dw_plat_data);
drivers/gpu/drm/meson/meson_dw_hdmi.c
778
if (IS_ERR(meson_dw_hdmi->hdmi))
drivers/gpu/drm/meson/meson_dw_hdmi.c
779
return PTR_ERR(meson_dw_hdmi->hdmi);
drivers/gpu/drm/meson/meson_dw_hdmi.c
781
meson_dw_hdmi->bridge = of_drm_find_and_get_bridge(pdev->dev.of_node);
drivers/gpu/drm/meson/meson_dw_hdmi.c
791
struct meson_dw_hdmi *meson_dw_hdmi = dev_get_drvdata(dev);
drivers/gpu/drm/meson/meson_dw_hdmi.c
795
devm_free_irq(dev, irq, meson_dw_hdmi);
drivers/gpu/drm/meson/meson_dw_hdmi.c
796
dw_hdmi_unbind(meson_dw_hdmi->hdmi);
drivers/gpu/drm/meson/meson_dw_hdmi.c
797
drm_bridge_put(meson_dw_hdmi->bridge);
drivers/gpu/drm/meson/meson_dw_hdmi.c
807
struct meson_dw_hdmi *meson_dw_hdmi = dev_get_drvdata(dev);
drivers/gpu/drm/meson/meson_dw_hdmi.c
809
if (!meson_dw_hdmi)
drivers/gpu/drm/meson/meson_dw_hdmi.c
813
meson_dw_hdmi->data->top_write(meson_dw_hdmi,
drivers/gpu/drm/meson/meson_dw_hdmi.c
821
struct meson_dw_hdmi *meson_dw_hdmi = dev_get_drvdata(dev);
drivers/gpu/drm/meson/meson_dw_hdmi.c
823
if (!meson_dw_hdmi)
drivers/gpu/drm/meson/meson_dw_hdmi.c
826
meson_dw_hdmi_init(meson_dw_hdmi);
drivers/gpu/drm/meson/meson_dw_hdmi.c
828
dw_hdmi_resume(meson_dw_hdmi->hdmi);