/openbmc/linux/drivers/gpu/drm/sun4i/ |
H A D | sun4i_hdmi_tmds_clk.c | 69 struct sun4i_tmds *tmds = hw_to_tmds(hw); in sun4i_tmds_determine_rate() local 88 for (j = tmds->div_offset ?: 1; in sun4i_tmds_determine_rate() 89 j < (16 + tmds->div_offset); j++) { in sun4i_tmds_determine_rate() 128 struct sun4i_tmds *tmds = hw_to_tmds(hw); in sun4i_tmds_recalc_rate() local 131 reg = readl(tmds->hdmi->base + SUN4I_HDMI_PAD_CTRL1_REG); in sun4i_tmds_recalc_rate() 135 reg = readl(tmds->hdmi->base + SUN4I_HDMI_PLL_CTRL_REG); in sun4i_tmds_recalc_rate() 136 reg = ((reg >> 4) & 0xf) + tmds->div_offset; in sun4i_tmds_recalc_rate() 146 struct sun4i_tmds *tmds = hw_to_tmds(hw); in sun4i_tmds_set_rate() local 151 sun4i_tmds_calc_divider(rate, parent_rate, tmds->div_offset, in sun4i_tmds_set_rate() 154 reg = readl(tmds->hdmi->base + SUN4I_HDMI_PAD_CTRL1_REG); in sun4i_tmds_set_rate() [all …]
|
H A D | sun8i_dw_hdmi.c | 136 hdmi->clk_tmds = devm_clk_get(dev, "tmds"); in sun8i_dw_hdmi_bind() 139 "Couldn't get the tmds clock\n"); in sun8i_dw_hdmi_bind() 160 dev_err(dev, "Could not enable tmds clock\n"); in sun8i_dw_hdmi_bind()
|
/openbmc/linux/drivers/gpu/drm/display/ |
H A D | drm_scdc_helper.c | 175 * Writes the TMDS config register over SCDC channel, and: 191 "[CONNECTOR:%d:%s] Failed to read TMDS config: %d\n", in drm_scdc_set_scrambling() 214 * drm_scdc_set_high_tmds_clock_ratio - set TMDS clock ratio 219 * TMDS clock ratio calculations go like this: 220 * TMDS character = 10 bit TMDS encoded value 222 * TMDS character rate = The rate at which TMDS characters are 225 * TMDS bit rate = 10x TMDS character rate 228 * TMDS clock rate for pixel clock < 340 MHz = 1x the character 231 * TMDS clock rate for pixel clock > 340 MHz = 0.25x the character 234 * Writes to the TMDS config register over SCDC channel, and: [all …]
|
H A D | drm_dp_dual_mode_helper.c | 262 * drm_dp_dual_mode_max_tmds_clock - Max TMDS clock for DP dual mode adaptor 267 * Determine the max TMDS clock the adaptor supports based on the 275 * Maximum supported TMDS clock rate for the DP dual mode adaptor in kHz. 297 drm_dbg_kms(dev, "Failed to query max TMDS clock\n"); in drm_dp_dual_mode_max_tmds_clock() 306 …* drm_dp_dual_mode_get_tmds_output - Get the state of the TMDS output buffers in the DP dual mode … 310 * @enabled: current state of the TMDS output buffers 312 * Get the state of the TMDS output buffers in the adaptor. For 337 drm_dbg_kms(dev, "Failed to query state of TMDS output buffers\n"); in drm_dp_dual_mode_get_tmds_output() 348 * drm_dp_dual_mode_set_tmds_output - Enable/disable TMDS output buffers in the DP dual mode adaptor 352 * @enable: enable (as opposed to disable) the TMDS output buffers [all …]
|
/openbmc/linux/drivers/gpu/drm/nouveau/nvif/ |
H A D | outp.c | 172 args.tmds.head = head; in nvif_outp_acquire_tmds() 173 args.tmds.hdmi = hdmi; in nvif_outp_acquire_tmds() 174 args.tmds.hdmi_max_ac_packet = max_ac_packet; in nvif_outp_acquire_tmds() 175 args.tmds.hdmi_rekey = rekey; in nvif_outp_acquire_tmds() 176 args.tmds.hdmi_scdc = scdc; in nvif_outp_acquire_tmds() 177 args.tmds.hdmi_hda = hda; in nvif_outp_acquire_tmds() 181 "[ACQUIRE proto:TMDS head:%d hdmi:%d max_ac_packet:%d rekey:%d scdc:%d hda:%d]" in nvif_outp_acquire_tmds() 182 " or:%d link:%d", args.tmds.head, args.tmds.hdmi, args.tmds.hdmi_max_ac_packet, in nvif_outp_acquire_tmds() 183 args.tmds.hdmi_rekey, args.tmds.hdmi_scdc, args.tmds.hdmi_hda, in nvif_outp_acquire_tmds()
|
/openbmc/linux/drivers/gpu/drm/sti/ |
H A D | sti_hdmi.h | 47 * @clk_tmds: hdmi tmds clock 97 * A pointer to an array of these structures is passed to a TMDS (HDMI) output 100 * specific configuration for a given TMDS clock frequency range. 102 * @min_tmds_freq: Lower bound of TMDS clock frequency this entry applies to 103 * @max_tmds_freq: Upper bound of TMDS clock frequency this entry applies to
|
H A D | sti_hdmi_tx3g4c28phy.c | 96 DRM_ERROR("input TMDS clock speed (%d) not supported\n", in sti_hdmi_tx3g4c28phy_start() 106 DRM_ERROR("output TMDS clock (%d) out of range\n", tmdsck); in sti_hdmi_tx3g4c28phy_start() 143 * for different high speed TMDS clock frequencies a phy configuration in sti_hdmi_tx3g4c28phy_start()
|
/openbmc/linux/drivers/gpu/drm/radeon/ |
H A D | radeon_combios.c | 93 COMBIOS_TMDS_POWER_ON_TABLE, /* offset from tmds power */ 94 COMBIOS_TMDS_POWER_OFF_TABLE, /* offset from tmds power */ 338 case COMBIOS_TMDS_POWER_ON_TABLE: /* offset from tmds power */ in combios_get_table_offset() 347 case COMBIOS_TMDS_POWER_OFF_TABLE: /* offset from tmds power */ in combios_get_table_offset() 1315 struct radeon_encoder_int_tmds *tmds) in radeon_legacy_get_tmds_info_from_table() argument 1322 tmds->tmds_pll[i].value = in radeon_legacy_get_tmds_info_from_table() 1324 tmds->tmds_pll[i].freq = default_tmds_pll[rdev->family][i].freq; in radeon_legacy_get_tmds_info_from_table() 1331 struct radeon_encoder_int_tmds *tmds) in radeon_legacy_get_tmds_info_from_combios() argument 1349 tmds->tmds_pll[i].value = in radeon_legacy_get_tmds_info_from_combios() 1351 tmds->tmds_pll[i].freq = in radeon_legacy_get_tmds_info_from_combios() [all …]
|
H A D | radeon_legacy_encoders.c | 796 struct radeon_encoder_int_tmds *tmds = (struct radeon_encoder_int_tmds *)radeon_encoder->enc_priv; in radeon_legacy_tmds_int_mode_set() local 799 if (tmds->tmds_pll[i].freq == 0) in radeon_legacy_tmds_int_mode_set() 801 if ((uint32_t)(mode->clock / 10) < tmds->tmds_pll[i].freq) { in radeon_legacy_tmds_int_mode_set() 802 tmp = tmds->tmds_pll[i].value ; in radeon_legacy_tmds_int_mode_set() 1695 struct radeon_encoder_int_tmds *tmds; in radeon_legacy_get_tmds_info() local 1698 tmds = kzalloc(sizeof(struct radeon_encoder_int_tmds), GFP_KERNEL); in radeon_legacy_get_tmds_info() 1700 if (!tmds) in radeon_legacy_get_tmds_info() 1704 ret = radeon_atombios_get_tmds_info(encoder, tmds); in radeon_legacy_get_tmds_info() 1706 ret = radeon_legacy_get_tmds_info_from_combios(encoder, tmds); in radeon_legacy_get_tmds_info() 1709 radeon_legacy_get_tmds_info_from_table(encoder, tmds); in radeon_legacy_get_tmds_info() [all …]
|
H A D | radeon_mode.h | 252 /* legacy TMDS PLL detect */ 405 /* legacy int tmds */ 410 /* tmds over dvo */ 858 struct radeon_encoder_int_tmds *tmds); 860 struct radeon_encoder_int_tmds *tmds); 862 struct radeon_encoder_int_tmds *tmds); 864 struct radeon_encoder_ext_tmds *tmds); 866 struct radeon_encoder_ext_tmds *tmds);
|
/openbmc/u-boot/drivers/video/ |
H A D | dw_hdmi.c | 15 u32 tmds; member 22 .tmds = 25175000, .n = 6144, .cts = 25175, 24 .tmds = 25200000, .n = 6144, .cts = 25200, 26 .tmds = 27000000, .n = 6144, .cts = 27000, 28 .tmds = 27027000, .n = 6144, .cts = 27027, 30 .tmds = 40000000, .n = 6144, .cts = 40000, 32 .tmds = 54000000, .n = 6144, .cts = 54000, 34 .tmds = 54054000, .n = 6144, .cts = 54054, 36 .tmds = 65000000, .n = 6144, .cts = 65000, 38 .tmds = 74176000, .n = 11648, .cts = 140625, [all …]
|
/openbmc/linux/Documentation/devicetree/bindings/display/ |
H A D | amlogic,meson-dw-hdmi.yaml | 20 - A custom HDMI PHY in order to convert video to TMDS signal 25 | Synopsys HDMI | HDMI PHY |=> TMDS 94 A port node pointing to the TMDS Output port node. 144 /* TMDS Output */
|
H A D | allwinner,sun8i-a83t-dw-hdmi.yaml | 52 - description: TMDS Clock 62 - const: tmds 170 clock-names = "iahb", "isfr", "tmds"; 227 clock-names = "iahb", "isfr", "tmds", "cec", "hdcp",
|
/openbmc/linux/include/media/i2c/ |
H A D | tc358743.h | 80 /* Reset PHY automatically when TMDS clock goes from DC to AC. 86 /* Reset PHY automatically when TMDS clock passes 21 MHz. 92 /* Reset PHY automatically when TMDS clock is detected.
|
/openbmc/linux/drivers/gpu/drm/i2c/ |
H A D | Kconfig | 16 tristate "Silicon Image sil164 TMDS transmitter" 20 when used in pairs) TMDS transmitters, used in some nVidia
|
/openbmc/linux/drivers/gpu/drm/nouveau/nvkm/engine/disp/ |
H A D | uoutp.c | 225 ret = nvkm_uoutp_mthd_acquire_tmds(outp, args->v0.tmds.head, in nvkm_uoutp_mthd_acquire() 226 args->v0.tmds.hdmi, in nvkm_uoutp_mthd_acquire() 227 args->v0.tmds.hdmi_max_ac_packet, in nvkm_uoutp_mthd_acquire() 228 args->v0.tmds.hdmi_rekey, in nvkm_uoutp_mthd_acquire() 229 args->v0.tmds.hdmi_scdc, in nvkm_uoutp_mthd_acquire() 230 args->v0.tmds.hdmi_hda); in nvkm_uoutp_mthd_acquire()
|
/openbmc/linux/drivers/video/fbdev/via/ |
H A D | chip.h | 64 /* Definition TMDS Trasmitter Information */ 67 /* Definition TMDS Trasmitter Index */ 72 /* Definition TMDS Trasmitter I2C Slave Address */
|
H A D | dvi.c | 81 DEBUG_MSG(KERN_INFO "\n VT1632 TMDS ! \n"); in viafb_tmds_trasmitter_identify() 91 DEBUG_MSG(KERN_INFO "\n VT1632 TMDS ! \n"); in viafb_tmds_trasmitter_identify() 107 DEBUG_MSG(KERN_INFO "\n Integrated TMDS ! \n"); in viafb_tmds_trasmitter_identify() 317 /* Turn off TMDS power. */ in viafb_dvi_disable() 455 /* Turn on TMDS power. */ in viafb_dvi_enable()
|
/openbmc/linux/drivers/phy/mediatek/ |
H A D | phy-mtk-hdmi-mt8195.c | 33 /* HDMI 2.0 specification, 3.4Gbps <= TMDS Bit Rate <= 6G, in mtk_phy_tmds_clk_ratio() 233 * 0M < TMDS clk < 54M /8 in mtk_hdmi_pll_calc() 234 * 54M <= TMDS clk < 148.35M /4 in mtk_hdmi_pll_calc() 235 * 148.35M <=TMDS clk < 296.7M /2 in mtk_hdmi_pll_calc() 236 * 296.7 <=TMDS clk <= 594M /1 in mtk_hdmi_pll_calc() 321 /* 3G < data rate <= 6G, 300M < tmds rate <= 594M */ in mtk_hdmi_pll_drv_setting()
|
/openbmc/u-boot/drivers/video/meson/ |
H A D | meson_dw_hdmi.h | 83 /* Bit 14:12 RW tmds_sel: 3'b000=Output zero; 3'b001=Output normal TMDS data; 119 * used when TMDS CLK rate = TMDS character rate /4. Default 0.
|
/openbmc/linux/drivers/gpu/drm/nouveau/ |
H A D | nouveau_bios.c | 147 * conf byte. These tables are similar to the TMDS tables, consisting in run_lvds_table() 633 * This runs the TMDS regs setting code found on BIT bios cards in run_tmds_table() 646 /* pre-nv17 off-chip tmds uses scripts, post nv17 doesn't */ in run_tmds_table() 653 clktable = bios->tmds.output0_script_ptr; in run_tmds_table() 657 clktable = bios->tmds.output1_script_ptr; in run_tmds_table() 669 NV_ERROR(drm, "TMDS output init script not found\n"); in run_tmds_table() 908 * Parses the pointer to the TMDS table in parse_bit_tmds_tbl_entry() 912 * offset + 0 (16 bits): TMDS table pointer in parse_bit_tmds_tbl_entry() 914 * The TMDS table is typically found just before the DCB table, with a in parse_bit_tmds_tbl_entry() 934 NV_ERROR(drm, "Do not understand BIT TMDS table\n"); in parse_bit_tmds_tbl_entry() [all …]
|
/openbmc/linux/drivers/gpu/drm/meson/ |
H A D | meson_dw_hdmi.h | 104 * Bit 14:12 RW tmds_sel: 3'b000=Output zero; 3'b001=Output normal TMDS data; 141 * used when TMDS CLK rate = TMDS character rate /4. Default 0.
|
/openbmc/linux/drivers/gpu/drm/amd/display/include/ |
H A D | signal_types.h | 29 /* Minimum pixel clock, in KHz. For TMDS signal is 25.00 MHz */ 31 /* Maximum pixel clock, in KHz. For TMDS signal is 165.00 MHz */
|
/openbmc/linux/drivers/gpu/drm/tegra/ |
H A D | hdmi.c | 50 const struct tmds_config *tmds; member 833 const struct tmds_config *tmds) in tegra_hdmi_setup_tmds() argument 837 tegra_hdmi_writel(hdmi, tmds->pll0, HDMI_NV_PDISP_SOR_PLL0); in tegra_hdmi_setup_tmds() 838 tegra_hdmi_writel(hdmi, tmds->pll1, HDMI_NV_PDISP_SOR_PLL1); in tegra_hdmi_setup_tmds() 839 tegra_hdmi_writel(hdmi, tmds->pe_current, HDMI_NV_PDISP_PE_CURRENT); in tegra_hdmi_setup_tmds() 841 tegra_hdmi_writel(hdmi, tmds->drive_current, in tegra_hdmi_setup_tmds() 849 tegra_hdmi_writel(hdmi, tmds->peak_current, in tegra_hdmi_setup_tmds() 1330 /* TMDS CONFIG */ in tegra_hdmi_encoder_enable() 1332 if (hdmi->pixel_clock <= hdmi->config->tmds[i].pclk) { in tegra_hdmi_encoder_enable() 1333 tegra_hdmi_setup_tmds(hdmi, &hdmi->config->tmds[i]); in tegra_hdmi_encoder_enable() [all …]
|
/openbmc/qemu/hw/net/ |
H A D | pcnet.c | 254 GET_FIELD((T)->status, TMDS, OWN), \ 255 GET_FIELD((T)->status, TMDS, ERR), \ 256 GET_FIELD((T)->status, TMDS, NOFCS), \ 257 GET_FIELD((T)->status, TMDS, LTINT), \ 258 GET_FIELD((T)->status, TMDS, ONE), \ 259 GET_FIELD((T)->status, TMDS, DEF), \ 260 GET_FIELD((T)->status, TMDS, STP), \ 261 GET_FIELD((T)->status, TMDS, ENP), \ 262 GET_FIELD((T)->status, TMDS, BPE), \ 1198 if (GET_FIELD(tmd.status, TMDS, STP)) { in pcnet_transmit() [all …]
|