Home
last modified time | relevance | path

Searched refs:tcon (Results 1 – 19 of 19) sorted by relevance

/drivers/gpu/drm/sun4i/
Dsun4i_tcon.c35 void sun4i_tcon_disable(struct sun4i_tcon *tcon) in sun4i_tcon_disable() argument
40 regmap_update_bits(tcon->regs, SUN4I_TCON_GCTL_REG, in sun4i_tcon_disable()
45 void sun4i_tcon_enable(struct sun4i_tcon *tcon) in sun4i_tcon_enable() argument
50 regmap_update_bits(tcon->regs, SUN4I_TCON_GCTL_REG, in sun4i_tcon_enable()
56 void sun4i_tcon_channel_disable(struct sun4i_tcon *tcon, int channel) in sun4i_tcon_channel_disable() argument
60 regmap_update_bits(tcon->regs, SUN4I_TCON0_CTL_REG, in sun4i_tcon_channel_disable()
62 clk_disable_unprepare(tcon->dclk); in sun4i_tcon_channel_disable()
66 WARN_ON(!tcon->quirks->has_channel_1); in sun4i_tcon_channel_disable()
67 regmap_update_bits(tcon->regs, SUN4I_TCON1_CTL_REG, in sun4i_tcon_channel_disable()
69 clk_disable_unprepare(tcon->sclk1); in sun4i_tcon_channel_disable()
[all …]
Dsun4i_rgb.c50 struct sun4i_tcon *tcon = drv->tcon; in sun4i_rgb_get_modes() local
52 return drm_panel_get_modes(tcon->panel); in sun4i_rgb_get_modes()
60 struct sun4i_tcon *tcon = drv->tcon; in sun4i_rgb_mode_valid() local
96 rounded_rate = clk_round_rate(tcon->dclk, rate); in sun4i_rgb_mode_valid()
124 struct sun4i_tcon *tcon = drv->tcon; in sun4i_rgb_connector_destroy() local
126 drm_panel_detach(tcon->panel); in sun4i_rgb_connector_destroy()
151 struct sun4i_tcon *tcon = drv->tcon; in sun4i_rgb_encoder_enable() local
155 if (!IS_ERR(tcon->panel)) in sun4i_rgb_encoder_enable()
156 drm_panel_prepare(tcon->panel); in sun4i_rgb_encoder_enable()
158 sun4i_tcon_channel_enable(tcon, 0); in sun4i_rgb_encoder_enable()
[all …]
Dsun4i_tcon.h178 void sun4i_tcon_disable(struct sun4i_tcon *tcon);
179 void sun4i_tcon_enable(struct sun4i_tcon *tcon);
182 void sun4i_tcon_channel_disable(struct sun4i_tcon *tcon, int channel);
183 void sun4i_tcon_channel_enable(struct sun4i_tcon *tcon, int channel);
185 void sun4i_tcon_enable_vblank(struct sun4i_tcon *tcon, bool enable);
188 void sun4i_tcon_switch_interlace(struct sun4i_tcon *tcon,
190 void sun4i_tcon0_mode_set(struct sun4i_tcon *tcon,
192 void sun4i_tcon1_mode_set(struct sun4i_tcon *tcon,
Dsun4i_dotclock.c153 int sun4i_dclk_create(struct device *dev, struct sun4i_tcon *tcon) in sun4i_dclk_create() argument
160 parent_name = __clk_get_name(tcon->sclk0); in sun4i_dclk_create()
177 dclk->regmap = tcon->regs; in sun4i_dclk_create()
180 tcon->dclk = clk_register(dev, &dclk->hw); in sun4i_dclk_create()
181 if (IS_ERR(tcon->dclk)) in sun4i_dclk_create()
182 return PTR_ERR(tcon->dclk); in sun4i_dclk_create()
188 int sun4i_dclk_free(struct sun4i_tcon *tcon) in sun4i_dclk_free() argument
190 clk_unregister(tcon->dclk); in sun4i_dclk_free()
DMakefile6 sun4i-tcon-y += sun4i_tcon.o
7 sun4i-tcon-y += sun4i_rgb.o
8 sun4i-tcon-y += sun4i_dotclock.o
10 obj-$(CONFIG_DRM_SUN4I) += sun4i-drm.o sun4i-tcon.o
Dsun4i_drv.c31 struct sun4i_tcon *tcon = drv->tcon; in sun4i_drv_enable_vblank() local
35 sun4i_tcon_enable_vblank(tcon, true); in sun4i_drv_enable_vblank()
43 struct sun4i_tcon *tcon = drv->tcon; in sun4i_drv_disable_vblank() local
47 sun4i_tcon_enable_vblank(tcon, false); in sun4i_drv_disable_vblank()
Dsun4i_tv.c353 struct sun4i_tcon *tcon = drv->tcon; in sun4i_tv_disable() local
357 sun4i_tcon_channel_disable(tcon, 1); in sun4i_tv_disable()
369 struct sun4i_tcon *tcon = drv->tcon; in sun4i_tv_enable() local
379 sun4i_tcon_channel_enable(tcon, 1); in sun4i_tv_enable()
388 struct sun4i_tcon *tcon = drv->tcon; in sun4i_tv_mode_set() local
391 sun4i_tcon1_mode_set(tcon, mode); in sun4i_tv_mode_set()
486 clk_set_rate(tcon->sclk1, mode->crtc_clock * 1000); in sun4i_tv_mode_set()
Dsun4i_dotclock.h18 int sun4i_dclk_create(struct device *dev, struct sun4i_tcon *tcon);
19 int sun4i_dclk_free(struct sun4i_tcon *tcon);
Dsun4i_crtc.c80 sun4i_tcon_disable(drv->tcon); in sun4i_crtc_disable()
98 sun4i_tcon_enable(drv->tcon); in sun4i_crtc_enable()
141 scrtc->crtc.port = of_graph_get_port_by_id(drv->tcon->dev->of_node, in sun4i_crtc_init()
Dsun4i_drv.h22 struct sun4i_tcon *tcon; member
/drivers/gpu/drm/fsl-dcu/
Dfsl_tcon.c23 void fsl_tcon_bypass_disable(struct fsl_tcon *tcon) in fsl_tcon_bypass_disable() argument
25 regmap_update_bits(tcon->regs, FSL_TCON_CTRL1, in fsl_tcon_bypass_disable()
29 void fsl_tcon_bypass_enable(struct fsl_tcon *tcon) in fsl_tcon_bypass_enable() argument
31 regmap_update_bits(tcon->regs, FSL_TCON_CTRL1, in fsl_tcon_bypass_enable()
45 struct fsl_tcon *tcon, in fsl_tcon_init_regmap() argument
58 tcon->regs = devm_regmap_init_mmio(dev, regs, in fsl_tcon_init_regmap()
60 return PTR_ERR_OR_ZERO(tcon->regs); in fsl_tcon_init_regmap()
65 struct fsl_tcon *tcon; in fsl_tcon_init() local
74 tcon = devm_kzalloc(dev, sizeof(*tcon), GFP_KERNEL); in fsl_tcon_init()
75 if (!tcon) { in fsl_tcon_init()
[all …]
Dfsl_tcon.h28 void fsl_tcon_free(struct fsl_tcon *tcon);
30 void fsl_tcon_bypass_disable(struct fsl_tcon *tcon);
31 void fsl_tcon_bypass_enable(struct fsl_tcon *tcon);
Dfsl_dcu_drm_rgb.c41 if (fsl_dev->tcon) in fsl_dcu_drm_encoder_create()
42 fsl_tcon_bypass_enable(fsl_dev->tcon); in fsl_dcu_drm_encoder_create()
Dfsl_dcu_drm_drv.c265 if (fsl_dev->tcon) in fsl_dcu_drm_pm_resume()
266 fsl_tcon_bypass_enable(fsl_dev->tcon); in fsl_dcu_drm_pm_resume()
391 fsl_dev->tcon = fsl_tcon_init(dev); in fsl_dcu_drm_probe()
Dfsl_dcu_drm_drv.h188 struct fsl_tcon *tcon; member
/drivers/pwm/
Dpwm-samsung.c246 u32 tcon; in pwm_samsung_enable() local
250 tcon = readl(our_chip->base + REG_TCON); in pwm_samsung_enable()
252 tcon &= ~TCON_START(tcon_chan); in pwm_samsung_enable()
253 tcon |= TCON_MANUALUPDATE(tcon_chan); in pwm_samsung_enable()
254 writel(tcon, our_chip->base + REG_TCON); in pwm_samsung_enable()
256 tcon &= ~TCON_MANUALUPDATE(tcon_chan); in pwm_samsung_enable()
257 tcon |= TCON_START(tcon_chan) | TCON_AUTORELOAD(tcon_chan); in pwm_samsung_enable()
258 writel(tcon, our_chip->base + REG_TCON); in pwm_samsung_enable()
270 u32 tcon; in pwm_samsung_disable() local
274 tcon = readl(our_chip->base + REG_TCON); in pwm_samsung_disable()
[all …]
/drivers/clocksource/
Dsamsung_pwm_timer.c125 unsigned long tcon; in samsung_time_stop() local
133 tcon = readl_relaxed(pwm.base + REG_TCON); in samsung_time_stop()
134 tcon &= ~TCON_START(channel); in samsung_time_stop()
135 writel_relaxed(tcon, pwm.base + REG_TCON); in samsung_time_stop()
142 unsigned long tcon; in samsung_time_setup() local
151 tcon = readl_relaxed(pwm.base + REG_TCON); in samsung_time_setup()
153 tcon &= ~(TCON_START(tcon_chan) | TCON_AUTORELOAD(tcon_chan)); in samsung_time_setup()
154 tcon |= TCON_MANUALUPDATE(tcon_chan); in samsung_time_setup()
158 writel_relaxed(tcon, pwm.base + REG_TCON); in samsung_time_setup()
165 unsigned long tcon; in samsung_time_start() local
[all …]
Dexynos_mct.c257 unsigned int tcon; in exynos4_mct_comp0_stop() local
259 tcon = readl_relaxed(reg_base + EXYNOS4_MCT_G_TCON); in exynos4_mct_comp0_stop()
260 tcon &= ~(MCT_G_TCON_COMP0_ENABLE | MCT_G_TCON_COMP0_AUTO_INC); in exynos4_mct_comp0_stop()
262 exynos4_mct_write(tcon, EXYNOS4_MCT_G_TCON); in exynos4_mct_comp0_stop()
268 unsigned int tcon; in exynos4_mct_comp0_start() local
271 tcon = readl_relaxed(reg_base + EXYNOS4_MCT_G_TCON); in exynos4_mct_comp0_start()
274 tcon |= MCT_G_TCON_COMP0_AUTO_INC; in exynos4_mct_comp0_start()
284 tcon |= MCT_G_TCON_COMP0_ENABLE; in exynos4_mct_comp0_start()
285 exynos4_mct_write(tcon , EXYNOS4_MCT_G_TCON); in exynos4_mct_comp0_start()
/drivers/clk/sunxi/
DMakefile16 obj-y += clk-sun4i-tcon-ch1.o