| /OK3568_Linux_fs/kernel/drivers/gpu/drm/sun4i/ |
| H A D | sun4i_lvds.c | 1 // SPDX-License-Identifier: GPL-2.0+ 4 * Maxime Ripard <maxime.ripard@free-electrons.com> 23 struct drm_encoder encoder; member 36 drm_encoder_to_sun4i_lvds(struct drm_encoder *encoder) in drm_encoder_to_sun4i_lvds() argument 38 return container_of(encoder, struct sun4i_lvds, in drm_encoder_to_sun4i_lvds() 39 encoder); in drm_encoder_to_sun4i_lvds() 44 struct sun4i_lvds *lvds = in sun4i_lvds_get_modes() local 47 return drm_panel_get_modes(lvds->panel, connector); in sun4i_lvds_get_modes() 68 static void sun4i_lvds_encoder_enable(struct drm_encoder *encoder) in sun4i_lvds_encoder_enable() argument 70 struct sun4i_lvds *lvds = drm_encoder_to_sun4i_lvds(encoder); in sun4i_lvds_encoder_enable() local [all …]
|
| H A D | sun4i_tcon.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 6 * Maxime Ripard <maxime.ripard@free-electrons.com> 42 static struct drm_connector *sun4i_tcon_get_connector(const struct drm_encoder *encoder) in sun4i_tcon_get_connector() argument 47 drm_connector_list_iter_begin(encoder->dev, &iter); in sun4i_tcon_get_connector() 49 if (connector->encoder == encoder) { in sun4i_tcon_get_connector() 58 static int sun4i_tcon_get_pixel_depth(const struct drm_encoder *encoder) in sun4i_tcon_get_pixel_depth() argument 63 connector = sun4i_tcon_get_connector(encoder); in sun4i_tcon_get_pixel_depth() 65 return -EINVAL; in sun4i_tcon_get_pixel_depth() 67 info = &connector->display_info; in sun4i_tcon_get_pixel_depth() 68 if (info->num_bus_formats != 1) in sun4i_tcon_get_pixel_depth() [all …]
|
| /OK3568_Linux_fs/kernel/drivers/gpu/drm/rockchip/ |
| H A D | rockchip_lvds.c | 1 // SPDX-License-Identifier: GPL-2.0-only 5 * Mark Yao <mark.yao@rock-chips.com> 6 * Sandy Huang <hjc@rock-chips.com> 95 int (*probe)(struct rockchip_lvds *lvds); 96 void (*enable)(struct rockchip_lvds *lvds); 97 void (*disable)(struct rockchip_lvds *lvds); 118 struct drm_encoder encoder; member 130 return container_of(e, struct rockchip_lvds, encoder); in encoder_to_lvds() 139 struct rockchip_lvds *lvds = connector_to_lvds(connector); in rockchip_lvds_atomic_connector_get_property() local 140 struct rockchip_drm_private *private = connector->dev->dev_private; in rockchip_lvds_atomic_connector_get_property() [all …]
|
| /OK3568_Linux_fs/kernel/drivers/gpu/drm/rcar-du/ |
| H A D | rcar_lvds.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * rcar_lvds.c -- R-Car LVDS Encoder 5 * Copyright (C) 2013-2018 Renesas Electronics Corporation 47 #define RCAR_LVDS_QUIRK_LANES BIT(0) /* LVDS lanes 1 and 3 inverted */ 51 #define RCAR_LVDS_QUIRK_DUAL_LINK BIT(4) /* Supports dual-link operation */ 56 void (*pll_setup)(struct rcar_lvds *lvds, unsigned int freq); 86 static void rcar_lvds_write(struct rcar_lvds *lvds, u32 reg, u32 data) in rcar_lvds_write() argument 88 iowrite32(data, lvds->mmio + reg); in rcar_lvds_write() 91 /* ----------------------------------------------------------------------------- 97 struct rcar_lvds *lvds = connector_to_rcar_lvds(connector); in rcar_lvds_connector_get_modes() local [all …]
|
| H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0 3 tristate "DRM Support for R-Car Display Unit" 14 Choose this option if you have an R-Car chipset. 15 If M is selected the module will be called rcar-du-drm. 18 tristate "R-Car DU Color Management Module (CMM) Support" 22 Enable support for R-Car Color Management Module (CMM). 25 tristate "R-Car Gen3 and RZ/G2 DU HDMI Encoder Support" 29 Enable support for R-Car Gen3 or RZ/G2 internal HDMI encoder. 32 tristate "R-Car DU LVDS Encoder Support" 39 Enable support for the R-Car Display Unit embedded LVDS encoders. [all …]
|
| H A D | rcar_du_of.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * rcar_du_of.c - Legacy DT bindings compatibility 23 /* ----------------------------------------------------------------------------- 39 .compatible = "renesas,du-" #soc, \ 59 return -ENODEV; in rcar_du_of_apply_overlay() 62 return of_overlay_fdt_apply(dtb->begin, dtb->end - dtb->begin, in rcar_du_of_apply_overlay() 72 int ret = -ENOMEM; in rcar_du_of_add_property() 76 return -ENOMEM; in rcar_du_of_add_property() 78 prop->name = kstrdup(name, GFP_KERNEL); in rcar_du_of_add_property() 79 if (!prop->name) in rcar_du_of_add_property() [all …]
|
| /OK3568_Linux_fs/kernel/drivers/gpu/drm/gma500/ |
| H A D | cdv_intel_lvds.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Copyright © 2006-2011 Intel Corporation 25 * LVDS I2C backlight control macros 60 struct drm_psb_private *dev_priv = dev->dev_private; in cdv_intel_lvds_get_max_backlight() 70 retval = ((dev_priv->regs.saveBLC_PWM_CTL & in cdv_intel_lvds_get_max_backlight() 84 struct drm_psb_private *dev_priv = dev->dev_private; in cdv_intel_lvds_set_backlight() 95 blc_pwm_ctl = dev_priv->regs.saveBLC_PWM_CTL & in cdv_intel_lvds_set_backlight() 97 dev_priv->regs.saveBLC_PWM_CTL = (blc_pwm_ctl | in cdv_intel_lvds_set_backlight() 106 struct drm_encoder *encoder, bool on) in cdv_intel_lvds_set_power() argument 108 struct drm_psb_private *dev_priv = dev->dev_private; in cdv_intel_lvds_set_power() [all …]
|
| H A D | psb_intel_lvds.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Copyright © 2006-2007 Intel Corporation 23 * LVDS I2C backlight control macros 62 struct drm_psb_private *dev_priv = dev->dev_private; in psb_intel_lvds_get_max_backlight() 69 ret = dev_priv->regs.saveBLC_PWM_CTL; in psb_intel_lvds_get_max_backlight() 77 dev_err(dev->dev, "BL bug: Reg %08x save %08X\n", in psb_intel_lvds_get_max_backlight() 78 REG_READ(BLC_PWM_CTL), dev_priv->regs.saveBLC_PWM_CTL); in psb_intel_lvds_get_max_backlight() 83 * Set LVDS backlight level by I2C command 92 (struct drm_psb_private *)dev->dev_private; in psb_lvds_i2c_set_brightness() 94 struct psb_intel_i2c_chan *lvds_i2c_bus = dev_priv->lvds_i2c_bus; in psb_lvds_i2c_set_brightness() [all …]
|
| H A D | oaktrail_lvds.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Copyright © 2006-2009 Intel Corporation 14 #include <asm/intel-mid.h> 24 /* The max/min PWM frequency in BPCR[31:17] - */ 26 * 15-bit field of the and then*/ 27 /* shifts to the left by one bit to get the actual 16-bit 28 * value that the 15-bits correspond to.*/ 40 struct drm_psb_private *dev_priv = dev->dev_private; in oaktrail_lvds_set_power() 51 dev_priv->is_lvds_on = true; in oaktrail_lvds_set_power() 52 if (dev_priv->ops->lvds_bl_power) in oaktrail_lvds_set_power() [all …]
|
| H A D | oaktrail_lvds_i2c.c | 2 * Copyright (c) 2002-2010, Intel Corporation. 27 #include <linux/i2c-algo-bit.h> 41 * LPC GPIO based I2C bus for LVDS of Atom E6xx 44 /*----------------------------------------------------------------------------- 45 * LPC Register Offsets. Used for LVDS GPIO Bit Bashing. Registers are part 47 ----------------------------------------------------------------------------*/ 57 /* The LVDS GPIO clock lines are GPIOSUS[3] 58 * The LVDS GPIO data lines are GPIOSUS[4] 63 #define LPC_READ_REG(chan, r) inl((chan)->reg + (r)) 64 #define LPC_WRITE_REG(chan, r, val) outl((val), (chan)->reg + (r)) [all …]
|
| /OK3568_Linux_fs/kernel/drivers/gpu/drm/radeon/ |
| H A D | radeon_legacy_encoders.c | 2 * Copyright 2007-8 Advanced Micro Devices, Inc. 43 static void radeon_legacy_encoder_disable(struct drm_encoder *encoder) in radeon_legacy_encoder_disable() argument 45 struct radeon_encoder *radeon_encoder = to_radeon_encoder(encoder); in radeon_legacy_encoder_disable() 48 encoder_funcs = encoder->helper_private; in radeon_legacy_encoder_disable() 49 encoder_funcs->dpms(encoder, DRM_MODE_DPMS_OFF); in radeon_legacy_encoder_disable() 50 radeon_encoder->active_device = 0; in radeon_legacy_encoder_disable() 53 static void radeon_legacy_lvds_update(struct drm_encoder *encoder, int mode) in radeon_legacy_lvds_update() argument 55 struct drm_device *dev = encoder->dev; in radeon_legacy_lvds_update() 56 struct radeon_device *rdev = dev->dev_private; in radeon_legacy_lvds_update() 57 struct radeon_encoder *radeon_encoder = to_radeon_encoder(encoder); in radeon_legacy_lvds_update() [all …]
|
| H A D | radeon_combios.c | 3 * Copyright 2007-8 Advanced Micro Devices, Inc. 136 struct radeon_device *rdev = dev->dev_private; in combios_get_table_offset() 140 if (!rdev->bios) in combios_get_table_offset() 365 size = RBIOS8(rdev->bios_header_start + 0x6); in combios_get_table_offset() 368 offset = RBIOS16(rdev->bios_header_start + check_offset); in combios_get_table_offset() 378 edid_info = combios_get_table_offset(rdev->ddev, COMBIOS_HARDCODED_EDID_TABLE); in radeon_combios_check_hardcoded_edid() 382 raw = rdev->bios + edid_info; in radeon_combios_check_hardcoded_edid() 395 rdev->mode_info.bios_hardcoded_edid = edid; in radeon_combios_check_hardcoded_edid() 396 rdev->mode_info.bios_hardcoded_edid_size = size; in radeon_combios_check_hardcoded_edid() 406 if (rdev->mode_info.bios_hardcoded_edid) { in radeon_bios_get_hardcoded_edid() [all …]
|
| /OK3568_Linux_fs/kernel/Documentation/devicetree/bindings/display/bridge/ |
| H A D | renesas,lvds.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/display/bridge/renesas,lvds.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Renesas R-Car LVDS Encoder 10 - Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> 13 These DT bindings describe the LVDS encoder embedded in the Renesas R-Car 14 Gen2, R-Car Gen3, RZ/G1 and RZ/G2 SoCs. 19 - renesas,r8a7742-lvds # for RZ/G1H compatible LVDS encoders 20 - renesas,r8a7743-lvds # for RZ/G1M compatible LVDS encoders [all …]
|
| H A D | lvds-codec.yaml | 1 # SPDX-License-Identifier: GPL-2.0 3 --- 4 $id: http://devicetree.org/schemas/display/bridge/lvds-codec.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Transparent LVDS encoders and decoders 10 - Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> 13 This binding supports transparent LVDS encoders and decoders that don't 16 LVDS is a physical layer specification defined in ANSI/TIA/EIA-644-A. Multiple 18 to LVDS panels. This binding targets devices compatible with the following 21 [JEIDA] "Digital Interface Standards for Monitor", JEIDA-59-1999, February [all …]
|
| /OK3568_Linux_fs/kernel/drivers/gpu/drm/i915/display/ |
| H A D | intel_lvds.c | 2 * Copyright © 2006-2007 Intel Corporation 49 /* Private structure for the integrated LVDS support */ 77 static struct intel_lvds_encoder *to_lvds_encoder(struct drm_encoder *encoder) in to_lvds_encoder() argument 79 return container_of(encoder, struct intel_lvds_encoder, base.base); in to_lvds_encoder() 98 static bool intel_lvds_get_hw_state(struct intel_encoder *encoder, in intel_lvds_get_hw_state() argument 101 struct drm_i915_private *dev_priv = to_i915(encoder->base.dev); in intel_lvds_get_hw_state() 102 struct intel_lvds_encoder *lvds_encoder = to_lvds_encoder(&encoder->base); in intel_lvds_get_hw_state() 107 encoder->power_domain); in intel_lvds_get_hw_state() 111 ret = intel_lvds_port_enabled(dev_priv, lvds_encoder->reg, pipe); in intel_lvds_get_hw_state() 113 intel_display_power_put(dev_priv, encoder->power_domain, wakeref); in intel_lvds_get_hw_state() [all …]
|
| H A D | intel_dvo.c | 3 * Copyright © 2006-2007 Intel Corporation 123 static struct intel_dvo *enc_to_dvo(struct intel_encoder *encoder) in enc_to_dvo() argument 125 return container_of(encoder, struct intel_dvo, base); in enc_to_dvo() 135 struct drm_device *dev = connector->base.dev; in intel_dvo_connector_get_hw_state() 140 tmp = intel_de_read(dev_priv, intel_dvo->dev.dvo_reg); in intel_dvo_connector_get_hw_state() 145 return intel_dvo->dev.dev_ops->get_hw_state(&intel_dvo->dev); in intel_dvo_connector_get_hw_state() 148 static bool intel_dvo_get_hw_state(struct intel_encoder *encoder, in intel_dvo_get_hw_state() argument 151 struct drm_i915_private *dev_priv = to_i915(encoder->base.dev); in intel_dvo_get_hw_state() 152 struct intel_dvo *intel_dvo = enc_to_dvo(encoder); in intel_dvo_get_hw_state() 155 tmp = intel_de_read(dev_priv, intel_dvo->dev.dvo_reg); in intel_dvo_get_hw_state() [all …]
|
| /OK3568_Linux_fs/kernel/drivers/gpu/drm/amd/amdgpu/ |
| H A D | atombios_encoders.c | 2 * Copyright 2007-11 Advanced Micro Devices, Inc. 72 struct drm_device *dev = amdgpu_encoder->base.dev; in amdgpu_atombios_encoder_get_backlight_level() 75 if (!(adev->mode_info.firmware_flags & ATOM_BIOS_INFO_BL_CONTROLLED_BY_GPU)) in amdgpu_atombios_encoder_get_backlight_level() 85 struct drm_encoder *encoder = &amdgpu_encoder->base; in amdgpu_atombios_encoder_set_backlight_level() local 86 struct drm_device *dev = amdgpu_encoder->base.dev; in amdgpu_atombios_encoder_set_backlight_level() 90 if (!(adev->mode_info.firmware_flags & ATOM_BIOS_INFO_BL_CONTROLLED_BY_GPU)) in amdgpu_atombios_encoder_set_backlight_level() 93 if ((amdgpu_encoder->devices & (ATOM_DEVICE_LCD_SUPPORT)) && in amdgpu_atombios_encoder_set_backlight_level() 94 amdgpu_encoder->enc_priv) { in amdgpu_atombios_encoder_set_backlight_level() 95 dig = amdgpu_encoder->enc_priv; in amdgpu_atombios_encoder_set_backlight_level() 96 dig->backlight_level = level; in amdgpu_atombios_encoder_set_backlight_level() [all …]
|
| /OK3568_Linux_fs/kernel/drivers/gpu/drm/ |
| H A D | drm_of.c | 1 // SPDX-License-Identifier: GPL-2.0-only 27 * drm_of_crtc_port_mask - find the mask of a registered CRTC by port OF node 41 if (tmp->port == port) in drm_of_crtc_port_mask() 52 * drm_of_find_possible_crtcs - find the possible CRTCs for an encoder port 54 * @port: encoder port to scan for endpoints 58 * encoder. 85 * drm_of_component_match_add - Add a component helper OF node match rule 103 * drm_of_component_probe - Generic probe function for a component based master 123 if (!dev->of_node) in drm_of_component_probe() 124 return -EINVAL; in drm_of_component_probe() [all …]
|
| /OK3568_Linux_fs/kernel/drivers/gpu/drm/msm/disp/mdp4/ |
| H A D | mdp4_lcdc_encoder.c | 1 // SPDX-License-Identifier: GPL-2.0-only 27 static struct mdp4_kms *get_kms(struct drm_encoder *encoder) in get_kms() argument 29 struct msm_drm_private *priv = encoder->dev->dev_private; in get_kms() 30 return to_mdp4_kms(to_mdp_kms(priv->kms)); in get_kms() 33 static void mdp4_lcdc_encoder_destroy(struct drm_encoder *encoder) in mdp4_lcdc_encoder_destroy() argument 36 to_mdp4_lcdc_encoder(encoder); in mdp4_lcdc_encoder_destroy() 37 drm_encoder_cleanup(encoder); in mdp4_lcdc_encoder_destroy() 46 static struct drm_connector *get_connector(struct drm_encoder *encoder) in get_connector() argument 48 struct drm_device *dev = encoder->dev; in get_connector() 51 list_for_each_entry(connector, &dev->mode_config.connector_list, head) in get_connector() [all …]
|
| H A D | mdp4_kms.c | 1 // SPDX-License-Identifier: GPL-2.0-only 21 struct drm_device *dev = mdp4_kms->dev; in mdp4_hw_init() 26 pm_runtime_get_sync(dev->dev); in mdp4_hw_init() 28 if (mdp4_kms->rev > 1) { in mdp4_hw_init() 38 clk = clk_get_rate(mdp4_kms->clk); in mdp4_hw_init() 40 if ((mdp4_kms->rev >= 1) || (clk >= 90000000)) { in mdp4_hw_init() 41 dmap_cfg = 0x47; /* 16 bytes-burst x 8 req */ in mdp4_hw_init() 42 vg_cfg = 0x47; /* 16 bytes-burs x 8 req */ in mdp4_hw_init() 44 dmap_cfg = 0x27; /* 8 bytes-burst x 8 req */ in mdp4_hw_init() 45 vg_cfg = 0x43; /* 16 bytes-burst x 4 req */ in mdp4_hw_init() [all …]
|
| /OK3568_Linux_fs/kernel/drivers/gpu/drm/tegra/ |
| H A D | rgb.c | 1 // SPDX-License-Identifier: GPL-2.0-only 88 static void tegra_rgb_encoder_disable(struct drm_encoder *encoder) in tegra_rgb_encoder_disable() argument 90 struct tegra_output *output = encoder_to_output(encoder); in tegra_rgb_encoder_disable() 93 tegra_dc_write_regs(rgb->dc, rgb_disable, ARRAY_SIZE(rgb_disable)); in tegra_rgb_encoder_disable() 94 tegra_dc_commit(rgb->dc); in tegra_rgb_encoder_disable() 97 static void tegra_rgb_encoder_enable(struct drm_encoder *encoder) in tegra_rgb_encoder_enable() argument 99 struct tegra_output *output = encoder_to_output(encoder); in tegra_rgb_encoder_enable() 103 tegra_dc_write_regs(rgb->dc, rgb_enable, ARRAY_SIZE(rgb_enable)); in tegra_rgb_encoder_enable() 106 tegra_dc_writel(rgb->dc, value, DC_DISP_DATA_ENABLE_OPTIONS); in tegra_rgb_encoder_enable() 109 value = tegra_dc_readl(rgb->dc, DC_COM_PIN_OUTPUT_POLARITY(1)); in tegra_rgb_encoder_enable() [all …]
|
| /OK3568_Linux_fs/kernel/drivers/gpu/drm/nouveau/dispnv50/ |
| H A D | disp.c | 31 #include <linux/dma-mapping.h> 82 chan->device = device; in nv50_chan_create() 93 &chan->user); in nv50_chan_create() 95 nvif_object_map(&chan->user, NULL, 0); in nv50_chan_create() 104 return -ENOSYS; in nv50_chan_create() 110 nvif_object_dtor(&chan->user); in nv50_chan_destroy() 120 nvif_object_dtor(&dmac->vram); in nv50_dmac_destroy() 121 nvif_object_dtor(&dmac->sync); in nv50_dmac_destroy() 123 nv50_chan_destroy(&dmac->base); in nv50_dmac_destroy() 125 nvif_mem_dtor(&dmac->_push.mem); in nv50_dmac_destroy() [all …]
|
| /OK3568_Linux_fs/kernel/drivers/gpu/drm/rockchip/rk618/ |
| H A D | rk618_lvds.c | 1 // SPDX-License-Identifier: GPL-2.0 5 * Author: Wyon Bi <bivvy.bi@rock-chips.com> 62 struct rk618_lvds *lvds = connector_to_lvds(connector); in rk618_lvds_connector_best_encoder() local 64 return lvds->base.encoder; in rk618_lvds_connector_best_encoder() 69 struct rk618_lvds *lvds = connector_to_lvds(connector); in rk618_lvds_connector_get_modes() local 70 struct drm_display_info *info = &connector->display_info; in rk618_lvds_connector_get_modes() 74 num_modes = drm_panel_get_modes(lvds->panel, connector); in rk618_lvds_connector_get_modes() 76 if (info->num_bus_formats) in rk618_lvds_connector_get_modes() 77 lvds->bus_format = info->bus_formats[0]; in rk618_lvds_connector_get_modes() 79 lvds->bus_format = MEDIA_BUS_FMT_RGB888_1X7X4_SPWG; in rk618_lvds_connector_get_modes() [all …]
|
| /OK3568_Linux_fs/kernel/drivers/gpu/drm/bridge/ |
| H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 31 tristate "Chrontel CH7033 Video Encoder" 35 Enable support for the Chrontel CH7033 VGA/DVI/HDMI Encoder, as 44 Driver for display connectors with support for DDC and hot-plug 48 on ARM-based platforms. Saying Y here when this driver is not needed 78 tristate "Transparent LVDS encoders and decoders support" 83 Support for transparent LVDS encoders and decoders that don't 104 Driver for Maxim MAX96755F GMSL2 Serializer with MIPI-DSI Input. 107 tristate "MegaChips stdp4028-ge-b850v3-fw and stdp2690-ge-b850v3-fw" 113 GE B850v3 that convert dual channel LVDS [all …]
|
| /OK3568_Linux_fs/kernel/drivers/gpu/drm/rockchip/rk628/ |
| H A D | rk628_lvds.c | 1 // SPDX-License-Identifier: GPL-2.0 5 * Author: Wyon Bi <bivvy.bi@rock-chips.com> 76 static enum lvds_link_type rk628_lvds_get_link_type(struct rk628_lvds *lvds) in rk628_lvds_get_link_type() argument 78 struct device *dev = lvds->dev; in rk628_lvds_get_link_type() 82 ret = of_property_read_string(dev->of_node, "rockchip,link-type", &str); in rk628_lvds_get_link_type() 86 if (!strcmp(str, "dual-link-odd-even-pixels")) in rk628_lvds_get_link_type() 88 else if (!strcmp(str, "dual-link-even-odd-pixels")) in rk628_lvds_get_link_type() 90 else if (!strcmp(str, "dual-link-left-right-pixels")) in rk628_lvds_get_link_type() 92 else if (!strcmp(str, "dual-link-right-left-pixels")) in rk628_lvds_get_link_type() 101 struct rk628_lvds *lvds = connector_to_lvds(connector); in rk628_lvds_connector_best_encoder() local [all …]
|