/linux/drivers/phy/cadence/ |
H A D | cdns-dphy.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 * Copyright: 2017-2018 Cadence Design Systems, Inc. 17 #include <linux/phy/phy-mipi-dphy.h> 23 /* DPHY registers */ 94 int (*probe)(struct cdns_dphy *dphy); 95 void (*remove)(struct cdns_dphy *dphy); 96 void (*set_psm_div)(struct cdns_dphy *dphy, u8 div); 97 void (*set_clk_lane_cfg)(struct cdns_dphy *dphy, 98 enum cdns_dphy_clk_lane_cfg cfg); 99 void (*set_pll_cfg)(struct cdns_dphy *dphy, [all …]
|
/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/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/gpu/drm/kmb/ |
H A D | kmb_dsi.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Copyright © 2019-2020 Intel Corporation 178 clk_disable_unprepare(kmb_dsi->clk_mipi); in kmb_dsi_clk_disable() 179 clk_disable_unprepare(kmb_dsi->clk_mipi_ecfg); in kmb_dsi_clk_disable() 180 clk_disable_unprepare(kmb_dsi->clk_mipi_cfg); in kmb_dsi_clk_disable() 186 mipi_dsi_host_unregister(kmb_dsi->host); in kmb_dsi_host_unregister() 225 return -ENOMEM; in kmb_dsi_host_bridge_init() 227 dsi_host->ops = &kmb_dsi_host_ops; in kmb_dsi_host_bridge_init() 233 return -ENOMEM; in kmb_dsi_host_bridge_init() 237 dsi_host->dev = dev; in kmb_dsi_host_bridge_init() [all …]
|
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/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/media/platform/cadence/ |
H A D | cdns-csi2rx.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 * Driver for Cadence MIPI-CSI2 RX Controller v1.3 20 #include <media/v4l2-ctrls.h> 21 #include <media/v4l2-device.h> 22 #include <media/v4l2-fwnode.h> 23 #include <media/v4l2-subdev.h> 133 struct phy *dphy; member 187 remote_pad = media_pad_remote_pad_first(&csi2rx->pads[i]); in csi2rx_configure_error_irq_mask() 189 int pad = i - CSI2RX_PAD_SOURCE_STREAM0; in csi2rx_configure_error_irq_mask() 205 error_status = readl(csi2rx->base + CSI2RX_ERROR_IRQS_REG); in csi2rx_irq_handler() [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/Documentation/devicetree/bindings/soc/rockchip/ |
H A D | grf.yaml | 1 # SPDX-License-Identifier: GPL-2.0 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Heiko Stuebner <heiko@sntech.de> 15 - items: 16 - enum: 17 - rockchip,rk3288-sgrf 18 - rockchip,rk3528-ioc-grf 19 - rockchip,rk3528-vo-grf 20 - rockchip,rk3528-vpu-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/media/pci/intel/ipu6/ |
H A D | ipu6-isys-dwc-phy.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Copyright (C) 2013--2024 Intel Corporation 13 #include "ipu6-bus.h" 14 #include "ipu6-isys.h" 15 #include "ipu6-platform-isys-csi2-reg.h" 31 * - req: 0 for read, 1 for write 32 * - 12 bits address 33 * - 8bits data (will ignore for read) 34 * --24----16------4-----0 35 * --|-data-|-addr-|-req-| [all …]
|
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/arch/arm64/boot/dts/ti/ |
H A D | k3-j722s-main.dtsi | 1 // SPDX-License-Identifier: GPL-2.0-only OR MIT 5 * Copyright (C) 2023-2024 Texas Instruments Incorporated - https://www.ti.com/ 8 #include <dt-bindings/phy/phy-cadence.h> 9 #include <dt-bindings/phy/phy-ti.h> 12 serdes_refclk: clk-0 { 13 compatible = "fixed-clock"; 14 #clock-cells = <0>; 15 clock-frequency = <0>; 21 compatible = "ti,am64-wiz-10g"; 23 #address-cells = <1>; [all …]
|
H A D | k3-j784s4-j742s2-main-common.dtsi | 1 // SPDX-License-Identifier: GPL-2.0-only OR MIT 5 * Copyright (C) 2022-2024 Texas Instruments Incorporated - https://www.ti.com/ 8 #include <dt-bindings/mux/mux.h> 9 #include <dt-bindings/phy/phy.h> 10 #include <dt-bindings/phy/phy-ti.h> 12 #include "k3-serdes.h" 15 serdes_refclk: clock-serdes { 16 #clock-cells = <0>; 17 compatible = "fixed-clock"; 29 compatible = "mmio-sram"; [all …]
|
H A D | k3-j721s2-main.dtsi | 1 // SPDX-License-Identifier: GPL-2.0-only OR MIT 5 * Copyright (C) 2021-2024 Texas Instruments Incorporated - https://www.ti.com/ 8 #include <dt-bindings/phy/phy-cadence.h> 9 #include <dt-bindings/phy/phy-ti.h> 12 serdes_refclk: clock-cmnrefclk { 13 #clock-cells = <0>; 14 compatible = "fixed-clock"; 15 clock-frequency = <0>; 21 compatible = "mmio-sram"; 23 #address-cells = <1>; [all …]
|
H A D | k3-j721e-main.dtsi | 1 // SPDX-License-Identifier: GPL-2.0-only OR MIT 5 * Copyright (C) 2016-2024 Texas Instruments Incorporated - https://www.ti.com/ 7 #include <dt-bindings/phy/phy.h> 8 #include <dt-bindings/phy/phy-ti.h> 9 #include <dt-bindings/mux/mux.h> 11 #include "k3-serdes.h" 14 cmn_refclk: clock-cmnrefclk { 15 #clock-cells = <0>; 16 compatible = "fixed-clock"; 17 clock-frequency = <0>; [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/phy/allwinner/ |
H A D | phy-sun4i-usb.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 5 * Copyright (C) 2014-2015 Hans de Goede <hdegoede@redhat.com> 10 * Modelled after: Samsung S5P/Exynos SoC series MIPI CSIS/DSIM DPHY driver 18 #include <linux/extcon-provider.h> 27 #include <linux/phy/phy-sun4i-usb.h> 115 const struct sun4i_usb_phy_cfg *cfg; member 145 container_of((phy), struct sun4i_usb_phy_data, phys[(phy)->index]) 153 iscr = readl(data->base + REG_ISCR); in sun4i_usb_phy0_update_iscr() 156 writel(iscr, data->base + REG_ISCR); in sun4i_usb_phy0_update_iscr() 183 u32 temp, usbc_bit = BIT(phy->index * 2); in sun4i_usb_phy_write() [all …]
|
/linux/drivers/media/platform/raspberrypi/rp1-cfe/ |
H A D | cfe.c | 1 // SPDX-License-Identifier: GPL-2.0-only 5 * Copyright (c) 2021-2024 Raspberry Pi Ltd. 6 * Copyright (c) 2023-2024 Ideas on Board Oy 13 #include <linux/dma-mapping.h> 29 #include <media/v4l2-async.h> 30 #include <media/v4l2-common.h> 31 #include <media/v4l2-ctrls.h> 32 #include <media/v4l2-dev.h> 33 #include <media/v4l2-device.h> 34 #include <media/v4l2-event.h> [all …]
|
/linux/drivers/media/platform/qcom/camss/ |
H A D | camss-csiphy-3ph-1-0.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * camss-csiphy-3ph-1-0.c 5 * Qualcomm MSM Camera Subsystem - CSIPHY Module 3phase v1.0 7 * Copyright (c) 2011-2015, The Linux Foundation. All rights reserved. 8 * Copyright (C) 2016-2018 Linaro Ltd. 12 #include "camss-csiphy.h" 322 /* GEN2 2.1.2 2PH DPHY mode */ 427 /* 4nm 2PH v 2.1.2 2p5Gbps 4 lane DPHY mode */ 547 struct csiphy_device_regs *regs = csiphy->regs; in csiphy_hw_version_read() 550 writel(CSIPHY_3PH_CMN_CSI_COMMON_CTRL6_SHOW_REV_ID, csiphy->base + in csiphy_hw_version_read() [all …]
|
/linux/drivers/gpu/drm/msm/dsi/phy/ |
H A D | dsi_phy_7nm.c | 2 * SPDX-License-Identifier: GPL-2.0 6 #include <dt-bindings/clock/qcom,dsi-phy-28nm.h> 9 #include <linux/clk-provider.h> 17 * DSI PLL 7nm - clock diagram (eg: DSI0): TODO: updated CPHY diagram 22 * +---------+ | +----------+ | +----+ 23 * dsi0vco_clk ---| out_div |--o--| divl_3_0 |--o--| /8 |-- dsi0_phy_pll_out_byteclk 24 * +---------+ | +----------+ | +----+ 28 * | | +----+ | |\ dsi0_pclk_mux 29 * | |--| /2 |--o--| \ | 30 * | | +----+ | \ | +---------+ [all …]
|