/kernel/linux/linux-5.10/drivers/gpu/drm/mcde/ |
H A D | mcde_display.c | 66 void mcde_display_irq(struct mcde *mcde) in mcde_display_irq() argument 72 mispp = readl(mcde->regs + MCDE_MISPP); in mcde_display_irq() 73 misovl = readl(mcde->regs + MCDE_MISOVL); in mcde_display_irq() 74 mischnl = readl(mcde->regs + MCDE_MISCHNL); in mcde_display_irq() 84 if (mcde_dsi_irq(mcde->mdsi)) { in mcde_display_irq() 93 if (mcde->flow_mode == MCDE_COMMAND_ONESHOT_FLOW) { in mcde_display_irq() 94 spin_lock(&mcde->flow_lock); in mcde_display_irq() 95 if (--mcde->flow_active == 0) { in mcde_display_irq() 96 dev_dbg(mcde in mcde_display_irq() 138 mcde_display_disable_irqs(struct mcde *mcde) mcde_display_disable_irqs() argument 188 mcde_configure_extsrc(struct mcde *mcde, enum mcde_extsrc src, u32 format) mcde_configure_extsrc() argument 333 mcde_configure_overlay(struct mcde *mcde, enum mcde_overlay ovl, enum mcde_extsrc src, enum mcde_channel ch, const struct drm_display_mode *mode, u32 format, int cpp) mcde_configure_overlay() argument 485 mcde_configure_channel(struct mcde *mcde, enum mcde_channel ch, enum mcde_fifo fifo, const struct drm_display_mode *mode) mcde_configure_channel() argument 599 mcde_configure_fifo(struct mcde *mcde, enum mcde_fifo fifo, enum mcde_dsi_formatter fmt, int fifo_wtrmrk) mcde_configure_fifo() argument 643 mcde_configure_dsi_formatter(struct mcde *mcde, enum mcde_dsi_formatter fmt, u32 formatter_frame, int pkt_size) mcde_configure_dsi_formatter() argument 734 mcde_enable_fifo(struct mcde *mcde, enum mcde_fifo fifo) mcde_enable_fifo() argument 760 mcde_disable_fifo(struct mcde *mcde, enum mcde_fifo fifo, bool wait_for_drain) mcde_disable_fifo() argument 805 mcde_drain_pipe(struct mcde *mcde, enum mcde_fifo fifo, enum mcde_channel ch) mcde_drain_pipe() argument 870 struct mcde *mcde = to_mcde(drm); mcde_display_enable() local 1063 struct mcde *mcde = to_mcde(drm); mcde_display_disable() local 1093 mcde_start_flow(struct mcde *mcde) mcde_start_flow() argument 1127 mcde_set_extsrc(struct mcde *mcde, u32 buffer_address) mcde_set_extsrc() argument 1143 struct mcde *mcde = to_mcde(drm); mcde_display_update() local 1204 struct mcde *mcde = to_mcde(drm); mcde_display_enable_vblank() local 1223 struct mcde *mcde = to_mcde(drm); mcde_display_disable_vblank() local 1243 struct mcde *mcde = to_mcde(drm); mcde_display_init() local [all...] |
H A D | mcde_drv.c | 113 struct mcde *mcde = data; in mcde_irq() local 116 val = readl(mcde->regs + MCDE_MISERR); in mcde_irq() 118 mcde_display_irq(mcde); in mcde_irq() 121 dev_info(mcde->dev, "some error IRQ\n"); in mcde_irq() 122 writel(val, mcde->regs + MCDE_RISERR); in mcde_irq() 130 struct mcde *mcde = to_mcde(drm); in mcde_modeset_init() local 133 if (!mcde->bridge) { in mcde_modeset_init() 166 ret = drm_simple_display_pipe_attach_bridge(&mcde in mcde_modeset_init() 255 struct mcde *mcde; mcde_probe() local 440 struct mcde *mcde = to_mcde(drm); mcde_remove() local [all...] |
H A D | mcde_drm.h | 67 struct mcde { struct 90 #define to_mcde(dev) container_of(dev, struct mcde, drm) 92 static inline bool mcde_flow_is_video(struct mcde *mcde) in mcde_flow_is_video() argument 94 return (mcde->flow_mode == MCDE_VIDEO_TE_FLOW || in mcde_flow_is_video() 95 mcde->flow_mode == MCDE_VIDEO_FORMATTER_FLOW); in mcde_flow_is_video() 104 void mcde_display_irq(struct mcde *mcde); 105 void mcde_display_disable_irqs(struct mcde *mcde); [all...] |
H A D | mcde_dsi.c | 40 struct mcde *mcde; member 150 d->mcde->mdsi = d->mdsi; in mcde_dsi_attach_to_mcde() 165 d->mcde->flow_mode = MCDE_VIDEO_FORMATTER_FLOW; in mcde_dsi_attach_to_mcde() 167 d->mcde->flow_mode = MCDE_COMMAND_TE_FLOW; in mcde_dsi_attach_to_mcde() 187 if (d->mcde) in mcde_dsi_host_attach() 199 if (d->mcde) in mcde_dsi_host_detach() 200 d->mcde->mdsi = NULL; in mcde_dsi_host_detach() 758 /* Enable the DSI port, from drivers/video/mcde/dsilink_v2.c */ in mcde_dsi_start() 1081 struct mcde *mcd in mcde_dsi_bind() local [all...] |
/kernel/linux/linux-6.6/drivers/gpu/drm/mcde/ |
H A D | mcde_display.c | 74 void mcde_display_irq(struct mcde *mcde) in mcde_display_irq() argument 80 mispp = readl(mcde->regs + MCDE_MISPP); in mcde_display_irq() 81 misovl = readl(mcde->regs + MCDE_MISOVL); in mcde_display_irq() 82 mischnl = readl(mcde->regs + MCDE_MISCHNL); in mcde_display_irq() 92 if (!mcde->dpi_output && mcde_dsi_irq(mcde->mdsi)) { in mcde_display_irq() 101 if (mcde->flow_mode == MCDE_COMMAND_ONESHOT_FLOW) { in mcde_display_irq() 102 spin_lock(&mcde->flow_lock); in mcde_display_irq() 103 if (--mcde in mcde_display_irq() 146 mcde_display_disable_irqs(struct mcde *mcde) mcde_display_disable_irqs() argument 196 mcde_configure_extsrc(struct mcde *mcde, enum mcde_extsrc src, u32 format) mcde_configure_extsrc() argument 338 mcde_configure_overlay(struct mcde *mcde, enum mcde_overlay ovl, enum mcde_extsrc src, enum mcde_channel ch, const struct drm_display_mode *mode, u32 format, int cpp) mcde_configure_overlay() argument 490 mcde_configure_channel(struct mcde *mcde, enum mcde_channel ch, enum mcde_fifo fifo, const struct drm_display_mode *mode) mcde_configure_channel() argument 630 mcde_configure_fifo(struct mcde *mcde, enum mcde_fifo fifo, enum mcde_formatter fmt, int fifo_wtrmrk) mcde_configure_fifo() argument 748 mcde_configure_dsi_formatter(struct mcde *mcde, enum mcde_formatter fmt, u32 formatter_frame, int pkt_size) mcde_configure_dsi_formatter() argument 844 mcde_enable_fifo(struct mcde *mcde, enum mcde_fifo fifo) mcde_enable_fifo() argument 870 mcde_disable_fifo(struct mcde *mcde, enum mcde_fifo fifo, bool wait_for_drain) mcde_disable_fifo() argument 915 mcde_drain_pipe(struct mcde *mcde, enum mcde_fifo fifo, enum mcde_channel ch) mcde_drain_pipe() argument 973 mcde_setup_dpi(struct mcde *mcde, const struct drm_display_mode *mode, int *fifo_wtrmrk_lvl) mcde_setup_dpi() argument 1070 mcde_setup_dsi(struct mcde *mcde, const struct drm_display_mode *mode, int cpp, int *fifo_wtrmrk_lvl, int *dsi_formatter_frame, int *dsi_pkt_size) mcde_setup_dsi() argument 1158 struct mcde *mcde = to_mcde(drm); mcde_display_enable() local 1304 struct mcde *mcde = to_mcde(drm); mcde_display_disable() local 1338 mcde_start_flow(struct mcde *mcde) mcde_start_flow() argument 1372 mcde_set_extsrc(struct mcde *mcde, u32 buffer_address) mcde_set_extsrc() argument 1388 struct mcde *mcde = to_mcde(drm); mcde_display_update() local 1449 struct mcde *mcde = to_mcde(drm); mcde_display_enable_vblank() local 1468 struct mcde *mcde = to_mcde(drm); mcde_display_disable_vblank() local 1487 struct mcde *mcde = to_mcde(drm); mcde_display_init() local [all...] |
H A D | mcde_drv.c | 113 struct mcde *mcde = data; in mcde_irq() local 116 val = readl(mcde->regs + MCDE_MISERR); in mcde_irq() 118 mcde_display_irq(mcde); in mcde_irq() 121 dev_info(mcde->dev, "some error IRQ\n"); in mcde_irq() 122 writel(val, mcde->regs + MCDE_RISERR); in mcde_irq() 130 struct mcde *mcde = to_mcde(drm); in mcde_modeset_init() local 141 if (!mcde->bridge) { in mcde_modeset_init() 161 mcde in mcde_modeset_init() 271 struct mcde *mcde; mcde_probe() local 454 struct mcde *mcde = to_mcde(drm); mcde_remove() local [all...] |
H A D | mcde_clk_div.c | 12 struct mcde *mcde; member 20 struct mcde *mcde = cdiv->mcde; in mcde_clk_div_enable() local 23 spin_lock(&mcde->fifo_crx1_lock); in mcde_clk_div_enable() 24 val = readl(mcde->regs + cdiv->cr); in mcde_clk_div_enable() 38 writel(val, mcde->regs + cdiv->cr); in mcde_clk_div_enable() 39 spin_unlock(&mcde->fifo_crx1_lock); in mcde_clk_div_enable() 86 struct mcde *mcd in mcde_clk_div_recalc_rate() local 139 mcde_init_clock_divider(struct mcde *mcde) mcde_init_clock_divider() argument [all...] |
H A D | mcde_drm.h | 69 struct mcde { struct 98 #define to_mcde(dev) container_of(dev, struct mcde, drm) 100 static inline bool mcde_flow_is_video(struct mcde *mcde) in mcde_flow_is_video() argument 102 return (mcde->flow_mode == MCDE_VIDEO_TE_FLOW || in mcde_flow_is_video() 103 mcde->flow_mode == MCDE_VIDEO_FORMATTER_FLOW); in mcde_flow_is_video() 112 void mcde_display_irq(struct mcde *mcde); 113 void mcde_display_disable_irqs(struct mcde *mcde); [all...] |
H A D | mcde_dsi.c | 40 struct mcde *mcde; member 150 d->mcde->mdsi = d->mdsi; in mcde_dsi_attach_to_mcde() 165 d->mcde->flow_mode = MCDE_VIDEO_FORMATTER_FLOW; in mcde_dsi_attach_to_mcde() 167 d->mcde->flow_mode = MCDE_COMMAND_TE_FLOW; in mcde_dsi_attach_to_mcde() 187 if (d->mcde) in mcde_dsi_host_attach() 199 if (d->mcde) in mcde_dsi_host_detach() 200 d->mcde->mdsi = NULL; in mcde_dsi_host_detach() 758 /* Enable the DSI port, from drivers/video/mcde/dsilink_v2.c */ in mcde_dsi_start() 1074 struct mcde *mcd in mcde_dsi_bind() local [all...] |
/kernel/linux/linux-5.10/drivers/gpu/drm/ |
H A D | Makefile | 125 obj-$(CONFIG_DRM_MCDE) += mcde/
|
/kernel/linux/linux-6.6/drivers/gpu/drm/ |
H A D | Makefile | 193 obj-$(CONFIG_DRM_MCDE) += mcde/
|