/linux/drivers/staging/media/omap4iss/ |
H A D | iss_csi2.c | 20 * csi2_if_enable - Enable CSI2 Receiver interface. 24 static void csi2_if_enable(struct iss_csi2_device *csi2, u8 enable) in csi2_if_enable() argument 26 struct iss_csi2_ctrl_cfg *currctrl = &csi2->ctrl; in csi2_if_enable() 28 iss_reg_update(csi2->iss, csi2->regs1, CSI2_CTRL, CSI2_CTRL_IF_EN, in csi2_if_enable() 35 * csi2_recv_config - CSI2 receiver module configuration. 39 static void csi2_recv_config(struct iss_csi2_device *csi2, in csi2_recv_config() argument 88 iss_reg_write(csi2->iss, csi2->regs1, CSI2_CTRL, reg); in csi2_recv_config() 108 /* To set the format on the CSI2 requires a mapping function that takes 113 * Output should be CSI2 frame format code 189 * csi2_ctx_map_format - Map CSI2 sink media bus format to CSI2 format ID [all …]
|
H A D | iss_csiphy.c | 77 dev_err(phy->iss->dev, "CSI2 CIO set power failed!\n"); in csiphy_set_power() 85 * csiphy_dphy_config - Configure CSI2 D-PHY parameters. 118 struct iss_csi2_device *csi2 = v4l2_get_subdevdata(csi2_subdev); in omap4iss_csiphy_config() local 128 lanes = &subdevs->bus.csi2.lanecfg; in omap4iss_csiphy_config() 171 csi2->phy->used_data_lanes = 0; in omap4iss_csiphy_config() 174 for (i = 0; i < csi2->phy->max_data_lanes; i++) { in omap4iss_csiphy_config() 179 lanes->data[i].pos > (csi2->phy->max_data_lanes + 1)) in omap4iss_csiphy_config() 186 csi2->phy->used_data_lanes++; in omap4iss_csiphy_config() 190 lanes->clk.pos > (csi2->phy->max_data_lanes + 1)) in omap4iss_csiphy_config() 197 / (2 * csi2->phy->used_data_lanes) in omap4iss_csiphy_config() [all …]
|
H A D | iss_csi2.h | 3 * TI OMAP4 ISS V4L2 Driver - CSI2 module 147 void omap4iss_csi2_isr(struct iss_csi2_device *csi2); 148 int omap4iss_csi2_reset(struct iss_csi2_device *csi2); 152 void omap4iss_csi2_unregister_entities(struct iss_csi2_device *csi2); 153 int omap4iss_csi2_register_entities(struct iss_csi2_device *csi2,
|
/linux/drivers/staging/media/imx/ |
H A D | imx6-mipi-csi2.c | 61 #define DEVICE_NAME "imx6-mipi-csi2" 118 * 4. CSI2 Controller programming (Set N_LANES, deassert PHY_SHUTDOWNZ, 124 * 7. CSI2 Controller programming - Read the PHY status register (PHY_STATE) 132 static void csi2_enable(struct csi2_dev *csi2, bool enable) in csi2_enable() argument 135 writel(0x1, csi2->base + CSI2_PHY_SHUTDOWNZ); in csi2_enable() 136 writel(0x1, csi2->base + CSI2_DPHY_RSTZ); in csi2_enable() 137 writel(0x1, csi2->base + CSI2_RESETN); in csi2_enable() 139 writel(0x0, csi2->base + CSI2_PHY_SHUTDOWNZ); in csi2_enable() 140 writel(0x0, csi2->base + CSI2_DPHY_RSTZ); in csi2_enable() 141 writel(0x0, csi2->base + CSI2_RESETN); in csi2_enable() [all …]
|
/linux/drivers/media/platform/ti/omap3isp/ |
H A D | ispcsi2.c | 5 * TI OMAP3 ISP - CSI2 module 23 * csi2_if_enable - Enable CSI2 Receiver interface. 28 struct isp_csi2_device *csi2, u8 enable) in csi2_if_enable() argument 30 struct isp_csi2_ctrl_cfg *currctrl = &csi2->ctrl; in csi2_if_enable() 32 isp_reg_clr_set(isp, csi2->regs1, ISPCSI2_CTRL, ISPCSI2_CTRL_IF_EN, in csi2_if_enable() 39 * csi2_recv_config - CSI2 receiver module configuration. 44 struct isp_csi2_device *csi2, in csi2_recv_config() argument 49 reg = isp_reg_readl(isp, csi2->regs1, ISPCSI2_CTRL); in csi2_recv_config() 74 isp_reg_writel(isp, reg, csi2->regs1, ISPCSI2_CTRL); in csi2_recv_config() 89 /* To set the format on the CSI2 requires a mapping function that takes [all …]
|
H A D | omap3isp.h | 64 * struct isp_csiphy_lane: CCP2/CSI2 lane position and polarity 77 * struct isp_csiphy_lanes_cfg - CCP2/CSI2 lane configuration 99 * @lanecfg: CCP2/CSI2 lane configuration 112 * struct isp_csi2_cfg - CSI2 interface configuration 128 struct isp_csi2_cfg csi2; member
|
H A D | ispcsi2.h | 5 * TI OMAP3 ISP - CSI2 module 145 void omap3isp_csi2_isr(struct isp_csi2_device *csi2); 146 int omap3isp_csi2_reset(struct isp_csi2_device *csi2); 149 void omap3isp_csi2_unregister_entities(struct isp_csi2_device *csi2); 150 int omap3isp_csi2_register_entities(struct isp_csi2_device *csi2,
|
/linux/drivers/media/platform/renesas/rzg2l-cru/ |
H A D | rzg2l-csi2.c | 215 static u32 rzg2l_csi2_read(struct rzg2l_csi2 *csi2, unsigned int reg) in rzg2l_csi2_read() argument 217 return ioread32(csi2->base + reg); in rzg2l_csi2_read() 220 static void rzg2l_csi2_write(struct rzg2l_csi2 *csi2, unsigned int reg, in rzg2l_csi2_write() argument 223 iowrite32(data, csi2->base + reg); in rzg2l_csi2_write() 226 static void rzg2l_csi2_set(struct rzg2l_csi2 *csi2, unsigned int reg, u32 set) in rzg2l_csi2_set() argument 228 rzg2l_csi2_write(csi2, reg, rzg2l_csi2_read(csi2, reg) | set); in rzg2l_csi2_set() 231 static void rzg2l_csi2_clr(struct rzg2l_csi2 *csi2, unsigned int reg, u32 clr) in rzg2l_csi2_clr() argument 233 rzg2l_csi2_write(csi2, reg, rzg2l_csi2_read(csi2, reg) & ~clr); in rzg2l_csi2_clr() 236 static int rzg2l_csi2_calc_mbps(struct rzg2l_csi2 *csi2) in rzg2l_csi2_calc_mbps() argument 238 struct v4l2_subdev *source = csi2->remote_source; in rzg2l_csi2_calc_mbps() [all …]
|
/linux/drivers/media/pci/intel/ipu6/ |
H A D | ipu6-isys-csi2.c | 24 #include "ipu6-isys-csi2.h" 26 #include "ipu6-platform-isys-csi2-reg.h" 80 s64 ipu6_isys_csi2_get_link_freq(struct ipu6_isys_csi2 *csi2) in ipu6_isys_csi2_get_link_freq() argument 86 if (!csi2) in ipu6_isys_csi2_get_link_freq() 89 dev = &csi2->isys->adev->auxdev.dev; in ipu6_isys_csi2_get_link_freq() 90 src_pad = media_entity_remote_source_pad_unique(&csi2->asd.sd.entity); in ipu6_isys_csi2_get_link_freq() 93 csi2->asd.sd.name, PTR_ERR(src_pad)); in ipu6_isys_csi2_get_link_freq() 98 if (WARN(!ext_sd, "Failed to get subdev for %s\n", csi2->asd.sd.name)) in ipu6_isys_csi2_get_link_freq() 108 struct ipu6_isys_csi2 *csi2 = to_ipu6_isys_csi2(asd); in csi2_subscribe_event() local 109 struct device *dev = &csi2->isys->adev->auxdev.dev; in csi2_subscribe_event() [all …]
|
H A D | ipu6-isys.c | 38 #include "ipu6-isys-csi2.h" 41 #include "ipu6-platform-isys-csi2-reg.h" 107 struct ipu6_isys_csi2_config *csi2) in isys_complete_ext_device_registration() argument 125 &isys->csi2[csi2->port].asd.sd.entity, in isys_complete_ext_device_registration() 133 isys->csi2[csi2->port].nlanes = csi2->nlanes; in isys_complete_ext_device_registration() 162 const struct ipu6_isys_internal_csi2_pdata *csi2 = in isys_csi2_unregister_subdevices() local 163 &isys->pdata->ipdata->csi2; in isys_csi2_unregister_subdevices() 166 for (i = 0; i < csi2->nports; i++) in isys_csi2_unregister_subdevices() 167 ipu6_isys_csi2_cleanup(&isys->csi2[i]); in isys_csi2_unregister_subdevices() 173 &isys->pdata->ipdata->csi2; in isys_csi2_register_subdevices() [all …]
|
H A D | ipu6-isys-csi2.h | 67 s64 ipu6_isys_csi2_get_link_freq(struct ipu6_isys_csi2 *csi2); 68 int ipu6_isys_csi2_init(struct ipu6_isys_csi2 *csi2, struct ipu6_isys *isys, 70 void ipu6_isys_csi2_cleanup(struct ipu6_isys_csi2 *csi2); 73 void ipu6_isys_register_errors(struct ipu6_isys_csi2 *csi2); 74 void ipu6_isys_csi2_error(struct ipu6_isys_csi2 *csi2); 76 struct ipu6_isys_csi2 *csi2,
|
H A D | ipu6.c | 33 #include "ipu6-platform-isys-csi2-reg.h" 304 isys_ipdata.csi2.nports = IPU6_ISYS_CSI2_NPORTS; in ipu6_internal_pdata_init() 305 isys_ipdata.csi2.irq_mask = IPU6_CSI_RX_ERROR_IRQ_MASK; in ipu6_internal_pdata_init() 306 isys_ipdata.csi2.ctrl0_irq_edge = IPU6_REG_ISYS_CSI_TOP_CTRL0_IRQ_EDGE; in ipu6_internal_pdata_init() 307 isys_ipdata.csi2.ctrl0_irq_clear = in ipu6_internal_pdata_init() 309 isys_ipdata.csi2.ctrl0_irq_mask = IPU6_REG_ISYS_CSI_TOP_CTRL0_IRQ_MASK; in ipu6_internal_pdata_init() 310 isys_ipdata.csi2.ctrl0_irq_enable = in ipu6_internal_pdata_init() 312 isys_ipdata.csi2.ctrl0_irq_status = in ipu6_internal_pdata_init() 314 isys_ipdata.csi2.ctrl0_irq_lnp = in ipu6_internal_pdata_init() 318 isys_ipdata.csi2.fw_access_port_ofs = CSI_REG_HUB_FW_ACCESS_PORT_OFS; in ipu6_internal_pdata_init() [all …]
|
H A D | ipu6-isys.h | 20 #include "ipu6-isys-csi2.h" 104 struct ipu6_isys_csi2_config csi2; member 116 * @csi2_rx_ctrl_cached: cached shared value between all CSI2 receivers 128 * @csi2: CSI-2 receivers 162 struct ipu6_isys_csi2 *csi2; member
|
/linux/arch/arm64/boot/dts/ti/ |
H A D | Makefile | 13 dtb-$(CONFIG_ARCH_K3) += k3-am625-beagleplay-csi2-ov5640.dtbo 14 dtb-$(CONFIG_ARCH_K3) += k3-am625-beagleplay-csi2-tevi-ov5640.dtbo 38 dtb-$(CONFIG_ARCH_K3) += k3-am62x-sk-csi2-ov5640.dtbo 39 dtb-$(CONFIG_ARCH_K3) += k3-am62x-sk-csi2-tevi-ov5640.dtbo 40 dtb-$(CONFIG_ARCH_K3) += k3-am62x-sk-csi2-imx219.dtbo 108 dtb-$(CONFIG_ARCH_K3) += k3-j721e-sk-csi2-dual-imx219.dtbo 130 k3-am625-beagleplay-csi2-ov5640-dtbs := k3-am625-beagleplay.dtb \ 131 k3-am625-beagleplay-csi2-ov5640.dtbo 132 k3-am625-beagleplay-csi2-tevi-ov5640-dtbs := k3-am625-beagleplay.dtb \ 133 k3-am625-beagleplay-csi2-tevi-ov5640.dtbo [all …]
|
/linux/drivers/acpi/ |
H A D | mipi-disco-img.c | 112 struct crs_csi2 *csi2; in acpi_mipi_add_crs_csi2() local 114 csi2 = kzalloc(sizeof(*csi2), GFP_KERNEL); in acpi_mipi_add_crs_csi2() 115 if (!csi2) in acpi_mipi_add_crs_csi2() 118 csi2->handle = handle; in acpi_mipi_add_crs_csi2() 119 INIT_LIST_HEAD(&csi2->connections); in acpi_mipi_add_crs_csi2() 120 csi2->port_count = 1; in acpi_mipi_add_crs_csi2() 122 if (ACPI_FAILURE(acpi_attach_data(handle, acpi_mipi_data_tag, csi2))) { in acpi_mipi_add_crs_csi2() 123 kfree(csi2); in acpi_mipi_add_crs_csi2() 127 list_add(&csi2->entry, list); in acpi_mipi_add_crs_csi2() 129 return csi2; in acpi_mipi_add_crs_csi2() [all …]
|
/linux/Documentation/devicetree/bindings/media/ |
H A D | renesas,csi2.yaml | 5 $id: http://devicetree.org/schemas/media/renesas,csi2.yaml# 22 - renesas,r8a774a1-csi2 # RZ/G2M 23 - renesas,r8a774b1-csi2 # RZ/G2N 24 - renesas,r8a774c0-csi2 # RZ/G2E 25 - renesas,r8a774e1-csi2 # RZ/G2H 26 - renesas,r8a7795-csi2 # R-Car H3 27 - renesas,r8a7796-csi2 # R-Car M3-W 28 - renesas,r8a77961-csi2 # R-Car M3-W+ 29 - renesas,r8a77965-csi2 # R-Car M3-N 30 - renesas,r8a77970-csi2 # R-Car V3M [all …]
|
H A D | nxp,imx-mipi-csi2.yaml | 4 $id: http://devicetree.org/schemas/media/nxp,imx-mipi-csi2.yaml# 27 - fsl,imx7-mipi-csi2 28 - fsl,imx8mm-mipi-csi2 31 - fsl,imx8mp-mipi-csi2 32 - const: fsl,imx8mm-mipi-csi2 88 Note that 'fsl,imx7-mipi-csi2' only supports up to 2 data lines. 120 const: fsl,imx7-mipi-csi2 142 compatible = "fsl,imx7-mipi-csi2"; 185 compatible = "fsl,imx8mm-mipi-csi2";
|
H A D | renesas,rzg2l-csi2.yaml | 5 $id: http://devicetree.org/schemas/media/renesas,rzg2l-csi2.yaml# 22 - renesas,r9a07g043-csi2 # RZ/G2UL 23 - renesas,r9a07g044-csi2 # RZ/G2{L,LC} 24 - renesas,r9a07g054-csi2 # RZ/V2L 25 - const: renesas,rzg2l-csi2 112 compatible = "renesas,r9a07g044-csi2", "renesas,rzg2l-csi2";
|
H A D | allwinner,sun6i-a31-mipi-csi2.yaml | 4 $id: http://devicetree.org/schemas/media/allwinner,sun6i-a31-mipi-csi2.yaml# 15 - const: allwinner,sun6i-a31-mipi-csi2 17 - const: allwinner,sun8i-v3s-mipi-csi2 18 - const: allwinner,sun6i-a31-mipi-csi2 101 compatible = "allwinner,sun8i-v3s-mipi-csi2", 102 "allwinner,sun6i-a31-mipi-csi2";
|
/linux/drivers/staging/media/atomisp/pci/ |
H A D | atomisp_csi2.c | 26 v4l2_mbus_framefmt *__csi2_get_format(struct atomisp_mipi_csi2_device *csi2, in __csi2_get_format() argument 34 return &csi2->formats[pad]; in __csi2_get_format() 74 struct atomisp_mipi_csi2_device *csi2 = v4l2_get_subdevdata(sd); in csi2_get_format() local 77 format = __csi2_get_format(csi2, sd_state, fmt->which, fmt->pad); in csi2_get_format() 89 struct atomisp_mipi_csi2_device *csi2 = v4l2_get_subdevdata(sd); in atomisp_csi2_set_ffmt() local 90 struct v4l2_mbus_framefmt *actual_ffmt = __csi2_get_format(csi2, in atomisp_csi2_set_ffmt() 122 *actual_ffmt = *ffmt = *__csi2_get_format(csi2, sd_state, which, in atomisp_csi2_set_ffmt() 164 * @csi2: Pointer to ispcsi2 structure. 167 static int mipi_csi2_init_entities(struct atomisp_mipi_csi2_device *csi2, in mipi_csi2_init_entities() argument 170 struct v4l2_subdev *sd = &csi2->subdev; in mipi_csi2_init_entities() [all …]
|
/linux/Documentation/admin-guide/media/ |
H A D | ipu6-isys.rst | 15 Input System (MIPI CSI2 receiver) drivers located under 65 CSI2 ports. The supported input formats of ISYS are listed in table below: 99 media-ctl -d $MDEV -l "\"ov01a10 3-0036\":0 -> \"Intel IPU6 CSI2 2\":0[1]" 103 media-ctl -d $MDEV -V "Intel IPU6 CSI2 2:0 [fmt:SBGGR10/1280x800]" 104 media-ctl -d $MDEV -V "Intel IPU6 CSI2 2:1 [fmt:SBGGR10/1280x800]" 137 media-ctl -l "\"ov2740 14-0036\":0 -> \"Intel IPU6 CSI2 1\":0[1]" 138 media-ctl -l "\"Intel IPU6 CSI2 1\":1 -> \"Intel IPU6 ISYS Capture 0\":0[1]" 139 media-ctl -l "\"Intel IPU6 CSI2 1\":2 -> \"Intel IPU6 ISYS Capture 1\":0[1]" 142 media-ctl -R "\"Intel IPU6 CSI2 1\" [0/0->1/0[1],0/1->2/1[1]]" 144 media-ctl -V "\"Intel IPU6 CSI2 1\":0/0 [fmt:SGRBG10/1932x1092]" [all …]
|
/linux/drivers/media/platform/cadence/ |
H A D | Kconfig | 6 tristate "Cadence MIPI-CSI2 RX Controller" 14 Support for the Cadence MIPI CSI2 Receiver controller. 20 tristate "Cadence MIPI-CSI2 TX Controller" 26 Support for the Cadence MIPI CSI2 Transceiver controller.
|
/linux/include/linux/platform_data/media/ |
H A D | omap4iss.h | 15 * struct iss_csiphy_lane: CSI2 lane position and polarity 28 * struct iss_csiphy_lanes_cfg - CSI2 lane configuration 38 * struct iss_csi2_platform_data - CSI2 interface platform data 57 struct iss_csi2_platform_data csi2; member
|
/linux/Documentation/userspace-api/media/v4l/ |
H A D | metafmt-generic.rst | 27 :ref:`V4L2_META_FMT_GENERIC_CSI2_16 <v4l2-meta-fmt-generic-csi2-16>`. 50 .. _v4l2-meta-fmt-generic-csi2-10: 67 <v4l2-meta-fmt-generic-csi2-20>`. 94 .. _v4l2-meta-fmt-generic-csi2-12: 111 <v4l2-meta-fmt-generic-csi2-24>`. 140 .. _v4l2-meta-fmt-generic-csi2-14: 183 .. _v4l2-meta-fmt-generic-csi2-16: 232 .. _v4l2-meta-fmt-generic-csi2-20: 248 :ref:`V4L2_META_FMT_GENERIC_CSI2_10 <v4l2-meta-fmt-generic-csi2-10>`. 285 .. _v4l2-meta-fmt-generic-csi2-24: [all …]
|
/linux/Documentation/devicetree/bindings/display/bridge/ |
H A D | renesas,dsi-csi2-tx.yaml | 4 $id: http://devicetree.org/schemas/display/bridge/renesas,dsi-csi2-tx.yaml# 20 - renesas,r8a779a0-dsi-csi2-tx # for V3U 21 - renesas,r8a779g0-dsi-csi2-tx # for V4H 90 compatible = "renesas,r8a779a0-dsi-csi2-tx";
|