/linux/Documentation/devicetree/bindings/phy/ |
H A D | rockchip-mipi-dphy-rx0.yaml | 1 # SPDX-License-Identifier: (GPL-2.0+ OR MIT) 3 --- 4 $id: http://devicetree.org/schemas/phy/rockchip-mipi-dphy-rx0.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Rockchip SoC MIPI RX0 D-PHY 10 - Helen Koike <helen.koike@collabora.com> 11 - Ezequiel Garcia <ezequiel@collabora.com> 14 The Rockchip SoC has a MIPI D-PHY bus with an RX0 entry which connects to 19 const: rockchip,rk3399-mipi-dphy-rx0 23 - description: MIPI D-PHY ref clock [all …]
|
H A D | starfive,jh7110-dphy-rx.yaml | 1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/phy/starfive,jh7110-dphy-rx.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: StarFive SoC JH7110 MIPI D-PHY Rx Controller 10 - Jack Zhu <jack.zhu@starfivetech.com> 11 - Changhuang Liang <changhuang.liang@starfivetech.com> 14 StarFive SoCs contain a MIPI CSI D-PHY based on M31 IP, used to 19 const: starfive,jh7110-dphy-rx 26 - description: config clock [all …]
|
/linux/drivers/phy/freescale/ |
H A D | phy-fsl-imx8-mipi-dphy.c | 1 // SPDX-License-Identifier: GPL-2.0+ 9 #include <linux/clk-provider.h> 22 #include <dt-bindings/firmware/imx/rsrc.h> 35 /* DPHY registers */ 63 ((x) < 32) ? 0xe0 | ((x) - 16) : \ 64 ((x) < 64) ? 0xc0 | ((x) - 32) : \ 65 ((x) < 128) ? 0x80 | ((x) - 64) : \ 66 ((x) - 128)) 67 #define CN(x) (((x) == 1) ? 0x1f : (((CN_BUF) >> ((x) - 1)) & 0x1f)) 68 #define CO(x) ((CO_BUF) >> (8 - (x)) & 0x03) [all …]
|
/linux/drivers/gpu/drm/bridge/imx/ |
H A D | imx93-mipi-dsi.c | 1 // SPDX-License-Identifier: GPL-2.0+ 12 #include <linux/media-bus-format.h> 17 #include <linux/phy/phy-mipi-dphy.h> 26 /* DPHY PLL configuration registers */ 42 #define M(x) FIELD_PREP(M_MASK, ((x) - 2)) 44 #define N(x) FIELD_PREP(N_MASK, ((x) - 1)) 121 /* DPHY Databook Table 3-13 Charge-pump Programmability */ 136 /* DPHY Databook Table 5-7 Frequency Ranges and Defaults */ 207 ret = regmap_write(dsi->regmap, reg, value); in dphy_pll_write() 209 dev_err(dsi->dev, "failed to write 0x%08x to pll reg 0x%x: %d\n", in dphy_pll_write() [all …]
|
/linux/drivers/phy/starfive/ |
H A D | phy-jh7110-dphy-rx.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 * StarFive JH7110 DPHY RX driver 75 struct stf_dphy *dphy = phy_get_drvdata(phy); in stf_dphy_configure() local 76 const struct stf_dphy_info *info = dphy->info; in stf_dphy_configure() 84 FIELD_PREP(STF_DPHY_LANE_SWAP_CLK, info->maps[0]) | in stf_dphy_configure() 85 FIELD_PREP(STF_DPHY_LANE_SWAP_CLK1, info->maps[5]) | in stf_dphy_configure() 86 FIELD_PREP(STF_DPHY_LANE_SWAP_LAN0, info->maps[1]) | in stf_dphy_configure() 87 FIELD_PREP(STF_DPHY_LANE_SWAP_LAN1, info->maps[2]), in stf_dphy_configure() 88 dphy->regs + STF_DPHY_APBCFGSAIF_SYSCFG(188)); in stf_dphy_configure() 90 writel(FIELD_PREP(STF_DPHY_LANE_SWAP_LAN2, info->maps[3]) | in stf_dphy_configure() [all …]
|
/linux/drivers/media/platform/rockchip/rkisp1/ |
H A D | rkisp1-csi.c | 1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 3 * Rockchip ISP1 Driver - CSI-2 Receiver 16 #include <linux/phy/phy-mipi-dphy.h> 18 #include <media/v4l2-ctrls.h> 19 #include <media/v4l2-fwnode.h> 21 #include "rkisp1-common.h" 22 #include "rkisp1-csi.h" 37 struct rkisp1_csi *csi = &rkisp1->csi; in rkisp1_csi_link_sensor() 40 s_asd->pixel_rate_ctrl = v4l2_ctrl_find(sd->ctrl_handler, in rkisp1_csi_link_sensor() 42 if (!s_asd->pixel_rate_ctrl) { in rkisp1_csi_link_sensor() [all …]
|
H A D | rkisp1-common.h | 1 /* SPDX-License-Identifier: (GPL-2.0+ OR MIT) */ 3 * Rockchip ISP1 Driver - Common definitions 17 #include <linux/rkisp1-config.h> 18 #include <media/media-device.h> 19 #include <media/media-entity.h> 20 #include <media/v4l2-ctrls.h> 21 #include <media/v4l2-device.h> 22 #include <media/videobuf2-v4l2.h> 24 #include "rkisp1-regs.h" 38 * model-specific and stored in the rkisp1_info structure. [all …]
|
/linux/drivers/phy/ |
H A D | phy-core-mipi-dphy.c | 1 /* SPDX-License-Identifier: GPL-2.0 */ 13 #include <linux/phy/phy-mipi-dphy.h> 16 * Minimum D-PHY timings based on MIPI D-PHY specification. Derived 18 * of the D-PHY specification (v1.2). 24 struct phy_configure_opts_mipi_dphy *cfg) in phy_mipi_dphy_calc_config() argument 28 if (!cfg) in phy_mipi_dphy_calc_config() 29 return -EINVAL; in phy_mipi_dphy_calc_config() 39 cfg->clk_miss = 0; in phy_mipi_dphy_calc_config() 40 cfg->clk_post = 60000 + 52 * ui; in phy_mipi_dphy_calc_config() 41 cfg->clk_pre = 8; in phy_mipi_dphy_calc_config() [all …]
|
/linux/drivers/phy/rockchip/ |
H A D | phy-rockchip-dphy-rx0.c | 1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 3 * Rockchip MIPI Synopsys DPHY RX0 driver 11 * chromeos-4.4 branch. 14 * Jacob Chen <jacob2.chen@rock-chips.com> 15 * Shunqian Zheng <zhengsq@rock-chips.com> 25 #include <linux/phy/phy-mipi-dphy.h> 64 "dphy-ref", 65 "dphy-cfg", 110 { .offset = _offset, .mask = BIT(_width) - 1, .shift = _shift, } 162 const struct dphy_reg *reg = &priv->drv_data->regs[index]; in rk_dphy_write_grf() [all …]
|
/linux/drivers/gpu/drm/bridge/ |
H A D | nwl-dsi.c | 1 // SPDX-License-Identifier: GPL-2.0+ 15 #include <linux/media-bus-format.h> 34 #include "nwl-dsi.h" 36 #define DRV_NAME "nwl-dsi" 79 * 2. Configure DSI Host and DPHY and enable DPHY 130 int ret = dsi->error; in nwl_dsi_clear_error() 132 dsi->error = 0; in nwl_dsi_clear_error() 140 if (dsi->error) in nwl_dsi_write() 143 ret = regmap_write(dsi->regmap, reg, val); in nwl_dsi_write() 145 DRM_DEV_ERROR(dsi->dev, in nwl_dsi_write() [all …]
|
/linux/drivers/gpu/drm/kmb/ |
H A D | kmb_dsi.h | 1 /* SPDX-License-Identifier: GPL-2.0-only 3 * Copyright © 2019-2020 Intel Corporation 12 /* MIPI TX CFG */ 18 /* DPHY Tx test codes*/ 43 /* DPHY params */ 58 /* 2 Data Lanes per D-PHY */ 81 /* DPHY Tx test codes */ 341 writel(value, (kmb_dsi->mipi_mmio + reg)); in kmb_write_mipi() 346 return readl(kmb_dsi->mipi_mmio + reg); in kmb_read_mipi() 354 u32 mask = (1 << num_bits) - 1; in kmb_write_bits_mipi()
|
/linux/drivers/media/pci/intel/ipu6/ |
H A D | ipu6-isys-csi2.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Copyright (C) 2013--2024 Intel Corporation 16 #include <media/media-entity.h> 17 #include <media/v4l2-ctrls.h> 18 #include <media/v4l2-device.h> 19 #include <media/v4l2-event.h> 20 #include <media/v4l2-subdev.h> 22 #include "ipu6-bus.h" 23 #include "ipu6-isys.h" 24 #include "ipu6-isys-csi2.h" [all …]
|
H A D | ipu6-isys-mcd-phy.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Copyright (C) 2013--2024 Intel Corporation 14 #include <media/v4l2-async.h> 17 #include "ipu6-bus.h" 18 #include "ipu6-isys.h" 19 #include "ipu6-isys-csi2.h" 20 #include "ipu6-platform-isys-csi2-reg.h" 38 * There are 2 MCD DPHY instances on TGL and 1 MCD DPHY instance on ADL. 39 * Each MCD PHY has 12-lanes which has 8 data lanes and 4 clock lanes. 44 * +---------+---------+---------+---------+--------+---------+----------+ [all …]
|
/linux/drivers/gpu/drm/sun4i/ |
H A D | sun6i_mipi_dsi.c | 1 // SPDX-License-Identifier: GPL-2.0+ 4 * Copyright (C) 2017-2018 Bootlin 11 #include <linux/crc-ccitt.h> 14 #include <linux/phy/phy-mipi-dphy.h> 293 regmap_update_bits(dsi->regs, SUN6I_DSI_BASIC_CTL0_REG, in sun6i_dsi_inst_abort() 299 regmap_update_bits(dsi->regs, SUN6I_DSI_BASIC_CTL0_REG, in sun6i_dsi_inst_commit() 308 return regmap_read_poll_timeout(dsi->regs, SUN6I_DSI_BASIC_CTL0_REG, in sun6i_dsi_inst_wait_for_completion() 321 regmap_write(dsi->regs, SUN6I_DSI_INST_FUNC_REG(id), in sun6i_dsi_inst_setup() 332 u8 lanes_mask = GENMASK(device->lanes - 1, 0); in sun6i_dsi_inst_init() 359 regmap_write(dsi->regs, SUN6I_DSI_INST_JUMP_CFG_REG(0), in sun6i_dsi_inst_init() [all …]
|
/linux/drivers/gpu/drm/rockchip/ |
H A D | dw-mipi-dsi2-rockchip.c | 1 // SPDX-License-Identifier: GPL-2.0+ 5 * Guochun Huang <hero.huang@rock-chips.com> 12 #include <linux/media-bus-format.h> 88 const struct dsigrf_reg *field = &dsi2->cdata->grf_regs[index]; in grf_field_write() 93 regmap_write(dsi2->grf_regmap, field->offset, in grf_field_write() 94 (val << field->lsb) | (GENMASK(field->msb, field->lsb) << 16)); in grf_field_write() 107 ret = phy_set_mode(dsi2->phy, PHY_MODE_MIPI_DPHY); in dw_mipi_dsi2_phy_power_on() 109 dev_err(dsi2->dev, "Failed to set phy mode: %d\n", ret); in dw_mipi_dsi2_phy_power_on() 113 phy_configure(dsi2->phy, &dsi2->phy_opts); in dw_mipi_dsi2_phy_power_on() 114 phy_power_on(dsi2->phy); in dw_mipi_dsi2_phy_power_on() [all …]
|
/linux/drivers/pmdomain/starfive/ |
H A D | jh71xx-pmu.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 5 * Copyright (C) 2022-2023 StarFive Technology Co., Ltd. 15 #include <dt-bindings/power/starfive,jh7110-pmu.h> 29 /* sw encourage cfg */ 87 struct jh71xx_pmu *pmu = pmd->pmu; in jh71xx_pmu_get_state() 90 return -EINVAL; in jh71xx_pmu_get_state() 92 *is_on = readl(pmu->base + pmu->match_data->pmu_status) & mask; in jh71xx_pmu_get_state() 99 struct jh71xx_pmu *pmu = pmd->pmu; in jh7110_pmu_set_state() 107 spin_lock_irqsave(&pmu->lock, flags); in jh7110_pmu_set_state() 129 writel(mask, pmu->base + mode); in jh7110_pmu_set_state() [all …]
|
/linux/drivers/gpu/drm/msm/dsi/phy/ |
H A D | dsi_phy_7nm.c | 2 * SPDX-License-Identifier: GPL-2.0 7 #include <linux/clk-provider.h> 15 * DSI PLL 7nm - clock diagram (eg: DSI0): TODO: updated CPHY diagram 20 * +---------+ | +----------+ | +----+ 21 * dsi0vco_clk ---| out_div |--o--| divl_3_0 |--o--| /8 |-- dsi0_phy_pll_out_byteclk 22 * +---------+ | +----------+ | +----+ 26 * | | +----+ | |\ dsi0_pclk_mux 27 * | |--| /2 |--o--| \ | 28 * | | +----+ | \ | +---------+ 29 …* | --------------| |--o--| div_7_4 |-- dsi0_phy_pll_… [all …]
|
/linux/arch/riscv/boot/dts/starfive/ |
H A D | jh7110.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 OR MIT 7 /dts-v1/; 8 #include <dt-bindings/clock/starfive,jh7110-crg.h> 9 #include <dt-bindings/power/starfive,jh7110-pmu.h> 10 #include <dt-bindings/reset/starfive,jh7110-crg.h> 11 #include <dt-bindings/thermal/thermal.h> 15 #address-cells = <2>; 16 #size-cells = <2>; 19 #address-cells = <1>; 20 #size-cells = <0>; [all …]
|
/linux/drivers/media/i2c/ |
H A D | tc358746.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * TC358746 - Parallel <-> CSI-2 Bridge 8 * - Currently only 'Parallel-in -> CSI-out' mode is supported! 13 #include <linux/clk-provider.h> 19 #include <linux/phy/phy-mipi-dphy.h> 24 #include <media/v4l2-ctrls.h> 25 #include <media/v4l2-device.h> 26 #include <media/v4l2-fwnode.h> 27 #include <media/v4l2-mc.h> 29 /* 16-bit registers */ [all …]
|
/linux/drivers/clk/sprd/ |
H A D | sc9863a-clk.c | 1 // SPDX-License-Identifier: GPL-2.0-only 9 #include <linux/clk-provider.h> 16 #include <dt-bindings/clock/sprd,sc9863a-clk.h> 26 static SPRD_PLL_SC_GATE_CLK_FW_NAME(mpll0_gate, "mpll0-gate", "ext-26m", 0x94, 28 static SPRD_PLL_SC_GATE_CLK_FW_NAME(dpll0_gate, "dpll0-gate", "ext-26m", 0x98, 30 static SPRD_PLL_SC_GATE_CLK_FW_NAME(lpll_gate, "lpll-gate", "ext-26m", 0x9c, 32 static SPRD_PLL_SC_GATE_CLK_FW_NAME(gpll_gate, "gpll-gate", "ext-26m", 0xa8, 34 static SPRD_PLL_SC_GATE_CLK_FW_NAME(dpll1_gate, "dpll1-gate", "ext-26m", 0x1dc, 36 static SPRD_PLL_SC_GATE_CLK_FW_NAME(mpll1_gate, "mpll1-gate", "ext-26m", 0x1e0, 38 static SPRD_PLL_SC_GATE_CLK_FW_NAME(mpll2_gate, "mpll2-gate", "ext-26m", 0x1e4, [all …]
|
H A D | ums512-clk.c | 1 // SPDX-License-Identifier: GPL-2.0 9 #include <linux/clk-provider.h> 17 #include <dt-bindings/clock/sprd,ums512-clk.h> 33 static CLK_FIXED_FACTOR_FW_NAME(clk_26m_aud, "clk-26m-aud", "ext-26m", 1, 1, 0); 34 static CLK_FIXED_FACTOR_FW_NAME(clk_13m, "clk-13m", "ext-26m", 2, 1, 0); 35 static CLK_FIXED_FACTOR_FW_NAME(clk_6m5, "clk-6m5", "ext-26m", 4, 1, 0); 36 static CLK_FIXED_FACTOR_FW_NAME(clk_4m3, "clk-4m3", "ext-26m", 6, 1, 0); 37 static CLK_FIXED_FACTOR_FW_NAME(clk_2m, "clk-2m", "ext-26m", 13, 1, 0); 38 static CLK_FIXED_FACTOR_FW_NAME(clk_1m, "clk-1m", "ext-26m", 26, 1, 0); 39 static CLK_FIXED_FACTOR_FW_NAME(clk_250k, "clk-250k", "ext-26m", 104, 1, 0); [all …]
|
/linux/arch/arm64/boot/dts/rockchip/ |
H A D | rk3399-base.dtsi | 1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 6 #include <dt-bindings/clock/rk3399-cru.h> 7 #include <dt-bindings/gpio/gpio.h> 8 #include <dt-bindings/interrupt-controller/arm-gic.h> 9 #include <dt-bindings/interrupt-controller/irq.h> 10 #include <dt-bindings/pinctrl/rockchip.h> 11 #include <dt-bindings/power/rk3399-power.h> 12 #include <dt-bindings/thermal/thermal.h> 17 interrupt-parent = <&gic>; 18 #address-cells = <2>; [all …]
|
/linux/arch/arm64/boot/dts/amlogic/ |
H A D | meson-axg.dtsi | 1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 6 #include <dt-bindings/clock/axg-aoclkc.h> 7 #include <dt-bindings/clock/axg-audio-clkc.h> 8 #include <dt-bindings/clock/axg-clkc.h> 9 #include <dt-bindings/gpio/gpio.h> 10 #include <dt-bindings/gpio/meson-axg-gpio.h> 11 #include <dt-bindings/interrupt-controller/irq.h> 12 #include <dt-bindings/interrupt-controller/arm-gic.h> 13 #include <dt-bindings/reset/amlogic,meson-axg-audio-arb.h> 14 #include <dt-bindings/reset/amlogic,meson-axg-reset.h> [all …]
|
/linux/arch/arm64/boot/dts/mediatek/ |
H A D | mt8192.dtsi | 1 // SPDX-License-Identifier: (GPL-2.0 OR MIT) 7 /dts-v1/; 8 #include <dt-bindings/clock/mt8192-clk.h> 9 #include <dt-bindings/gce/mt8192-gce.h> 10 #include <dt-bindings/interrupt-controller/arm-gic.h> 11 #include <dt-bindings/interrupt-controller/irq.h> 12 #include <dt-bindings/memory/mt8192-larb-port.h> 13 #include <dt-bindings/pinctrl/mt8192-pinfunc.h> 14 #include <dt-bindings/phy/phy.h> 15 #include <dt-bindings/power/mt8192-power.h> [all …]
|