/Linux-v6.1/drivers/media/platform/sunxi/sun4i-csi/ |
D | sun4i_dma.c | 36 static void sun4i_csi_capture_start(struct sun4i_csi *csi) in sun4i_csi_capture_start() argument 38 writel(CSI_CPT_CTRL_VIDEO_START, csi->regs + CSI_CPT_CTRL_REG); in sun4i_csi_capture_start() 41 static void sun4i_csi_capture_stop(struct sun4i_csi *csi) in sun4i_csi_capture_stop() argument 43 writel(0, csi->regs + CSI_CPT_CTRL_REG); in sun4i_csi_capture_stop() 52 struct sun4i_csi *csi = vb2_get_drv_priv(vq); in sun4i_csi_queue_setup() local 53 unsigned int num_planes = csi->fmt.num_planes; in sun4i_csi_queue_setup() 61 if (sizes[i] < csi->fmt.plane_fmt[i].sizeimage) in sun4i_csi_queue_setup() 68 sizes[i] = csi->fmt.plane_fmt[i].sizeimage; in sun4i_csi_queue_setup() 75 struct sun4i_csi *csi = vb2_get_drv_priv(vb->vb2_queue); in sun4i_csi_buffer_prepare() local 78 for (i = 0; i < csi->fmt.num_planes; i++) { in sun4i_csi_buffer_prepare() [all …]
|
D | sun4i_csi.c | 47 struct sun4i_csi *csi = container_of(notifier, struct sun4i_csi, in sun4i_csi_notify_bound() local 50 csi->src_subdev = subdev; in sun4i_csi_notify_bound() 51 csi->src_pad = media_entity_get_fwnode_pad(&subdev->entity, in sun4i_csi_notify_bound() 54 if (csi->src_pad < 0) { in sun4i_csi_notify_bound() 55 dev_err(csi->dev, "Couldn't find output pad for subdev %s\n", in sun4i_csi_notify_bound() 57 return csi->src_pad; in sun4i_csi_notify_bound() 60 dev_dbg(csi->dev, "Bound %s pad: %d\n", subdev->name, csi->src_pad); in sun4i_csi_notify_bound() 66 struct sun4i_csi *csi = container_of(notifier, struct sun4i_csi, in sun4i_csi_notify_complete() local 68 struct v4l2_subdev *subdev = &csi->subdev; in sun4i_csi_notify_complete() 69 struct video_device *vdev = &csi->vdev; in sun4i_csi_notify_complete() [all …]
|
D | sun4i_v4l2.c | 57 strscpy(cap->card, "sun4i-csi", sizeof(cap->card)); in sun4i_csi_querycap() 91 static void _sun4i_csi_try_fmt(struct sun4i_csi *csi, in _sun4i_csi_try_fmt() argument 134 struct sun4i_csi *csi = video_drvdata(file); in sun4i_csi_try_fmt_vid_cap() local 136 _sun4i_csi_try_fmt(csi, &f->fmt.pix_mp); in sun4i_csi_try_fmt_vid_cap() 144 struct sun4i_csi *csi = video_drvdata(file); in sun4i_csi_s_fmt_vid_cap() local 146 _sun4i_csi_try_fmt(csi, &f->fmt.pix_mp); in sun4i_csi_s_fmt_vid_cap() 147 csi->fmt = f->fmt.pix_mp; in sun4i_csi_s_fmt_vid_cap() 155 struct sun4i_csi *csi = video_drvdata(file); in sun4i_csi_g_fmt_vid_cap() local 157 f->fmt.pix_mp = csi->fmt; in sun4i_csi_g_fmt_vid_cap() 198 struct sun4i_csi *csi = video_drvdata(file); in sun4i_csi_open() local [all …]
|
/Linux-v6.1/drivers/staging/media/imx/ |
D | imx7-media-csi.c | 3 * V4L2 Capture CSI Subdev for Freescale i.MX6UL/L / i.MX7 SOC 35 /* csi control reg 1 */ 90 /* csi status reg */ 110 /* csi image parameter reg */ 114 /* csi control reg 18 */ 272 static u32 imx7_csi_reg_read(struct imx7_csi *csi, unsigned int offset) in imx7_csi_reg_read() argument 274 return readl(csi->regbase + offset); in imx7_csi_reg_read() 277 static void imx7_csi_reg_write(struct imx7_csi *csi, unsigned int value, in imx7_csi_reg_write() argument 280 writel(value, csi->regbase + offset); in imx7_csi_reg_write() 283 static u32 imx7_csi_irq_clear(struct imx7_csi *csi) in imx7_csi_irq_clear() argument [all …]
|
D | TODO | 5 - The CSI subdevice parses its nearest upstream neighbor's device-tree 6 bus config in order to setup the CSI. Laurent Pinchart argues that 7 instead the CSI subdev should call its neighbor's g_mbus_config op 31 - imx7-media-csi: Restrict the supported formats list to the SoC version. 33 The imx7 CSI bridge can be configured to sample pixel components from the Rx 39 As the imx7 CSI bridge can be interfaced with different IP blocks depending on 47 Example: i.MX8MM SoC integrates the CSI bridge with the Samsung CSIS CSI-2 48 receiver which operates in dual pixel sampling mode. The CSI bridge should 50 pixel sampling mode. When the CSI bridge is instead integrated on an i.MX7,
|
/Linux-v6.1/drivers/gpu/ipu-v3/ |
D | ipu-csi.c | 32 /* CSI Register Offsets */ 55 /* CSI Register Fields */ 116 /* MIPI CSI-2 data types */ 133 * Bitfield of CSI bus signal polarities and modes. 153 * Enumeration of CSI data bus widths. 164 * Enumeration of CSI clock modes. 177 static inline u32 ipu_csi_read(struct ipu_csi *csi, unsigned offset) in ipu_csi_read() argument 179 return readl(csi->base + offset); in ipu_csi_read() 182 static inline void ipu_csi_write(struct ipu_csi *csi, u32 value, in ipu_csi_write() argument 185 writel(value, csi->base + offset); in ipu_csi_write() [all …]
|
/Linux-v6.1/drivers/staging/media/tegra-video/ |
D | csi.c | 19 #include "csi.h" 36 * CSI is a separate subdevice which has 6 source pads to generate 37 * test pattern. CSI subdevice pad ops are used only for TPG and 95 static int csi_get_frmrate_table_index(struct tegra_csi *csi, u32 code, in csi_get_frmrate_table_index() argument 101 frmrate = csi->soc->tpg_frmrate_table; in csi_get_frmrate_table_index() 102 for (i = 0; i < csi->soc->tpg_frmrate_table_size; i++) { in csi_get_frmrate_table_index() 116 struct tegra_csi *csi = csi_chan->csi; in csi_chan_update_blank_intervals() local 117 const struct tpg_framerate *frmrate = csi->soc->tpg_frmrate_table; in csi_chan_update_blank_intervals() 120 index = csi_get_frmrate_table_index(csi_chan->csi, code, in csi_chan_update_blank_intervals() 161 struct tegra_csi *csi = csi_chan->csi; in csi_enum_frameintervals() local [all …]
|
D | csi.h | 14 * Each CSI brick supports max of 4 lanes that can be used as either 15 * one x4 port using both CILA and CILB partitions of a CSI brick or can 22 /* Maximum 2 CSI x4 ports can be ganged up for streaming */ 25 /* each CSI channel can have one sink and one source pads */ 42 * struct tegra_csi_channel - Tegra CSI channel 48 * @csi: Tegra CSI device structure 49 * @of_node: csi device tree node 53 * @csi_port_nums: CSI channel port numbers 59 * @mipi: mipi device for corresponding csi channel pads 67 struct tegra_csi *csi; member [all …]
|
D | tegra210.c | 8 * VI and CSI SoC specific data, operations and registers accessors. 17 #include "csi.h" 33 /* Tegra210 VI CSI registers */ 57 /* Tegra210 CSI Pixel Parser registers: Starts from 0x838, offset 0x0 */ 85 /* Tegra210 CSI PHY registers */ 243 * Recover VI and CSI hardware blocks in case of missing frame start in tegra_channel_capture_error_recover() 244 * events due to source not streaming or noisy csi inputs from the in tegra_channel_capture_error_recover() 246 * events which can cause CSI and VI hardware hang. in tegra_channel_capture_error_recover() 262 /* recover CSI block */ in tegra_channel_capture_error_recover() 554 /* clear csi errors and do capture setup for all ports in gang mode */ in tegra210_vi_start_streaming() [all …]
|
/Linux-v6.1/drivers/media/platform/rockchip/rkisp1/ |
D | rkisp1-csi.c | 3 * Rockchip ISP1 Driver - CSI-2 Receiver 22 #include "rkisp1-csi.h" 34 rkisp1_csi_get_pad_fmt(struct rkisp1_csi *csi, in rkisp1_csi_get_pad_fmt() argument 39 .pads = csi->pad_cfg in rkisp1_csi_get_pad_fmt() 42 lockdep_assert_held(&csi->lock); in rkisp1_csi_get_pad_fmt() 45 return v4l2_subdev_get_try_format(&csi->sd, sd_state, pad); in rkisp1_csi_get_pad_fmt() 47 return v4l2_subdev_get_try_format(&csi->sd, &state, pad); in rkisp1_csi_get_pad_fmt() 54 struct rkisp1_csi *csi = &rkisp1->csi; in rkisp1_csi_link_sensor() local 65 /* Create the link from the sensor to the CSI receiver. */ in rkisp1_csi_link_sensor() 67 &csi->sd.entity, RKISP1_CSI_PAD_SINK, in rkisp1_csi_link_sensor() [all …]
|
/Linux-v6.1/Documentation/admin-guide/media/ |
D | imx7.rst | 14 - CMOS Sensor Interface (CSI) 16 - MIPI CSI-2 Receiver 20 MIPI Camera Input ---> MIPI CSI-2 --- > |\ 24 | U | ------> CSI ---> Capture 39 This is the MIPI CSI-2 receiver entity. It has one sink pad to receive the pixel 40 data from MIPI CSI-2 camera sensor. It has one source pad, corresponding to the 44 csi-mux 48 sensor with a parallel interface or from MIPI CSI-2 virtual channel 0. It has 49 a single source pad that routes to the CSI. 51 csi section in i.MX7 Video Capture Driver [all …]
|
D | imx.rst | 16 - Camera Serial Interface (CSI) 31 The CSI is the backend capture unit that interfaces directly with 32 camera sensors over Parallel, BT.656/1120, and MIPI CSI-2 buses. 66 - MIPI CSI-2 Receiver for camera sensors with the MIPI CSI-2 bus 69 to send to a CSI. 84 - Supports parallel, BT.565, and MIPI CSI-2 interfaces. 98 CSI. There is also support in the future for sending frames to the 112 The i.MX5/6 topologies can differ upstream from the IPUv3 CSI video 115 MIPI CSI-2 OV5640 sensor, requires the i.MX6 MIPI CSI-2 receiver. But 117 therefore does not require the MIPI CSI-2 receiver, so it is missing in [all …]
|
/Linux-v6.1/Documentation/devicetree/bindings/soc/imx/ |
D | fsl,imx8mm-disp-blk-ctrl.yaml | 14 the NoC and ensuring proper power sequencing of the display and MIPI CSI 36 - const: csi-bridge 39 - const: mipi-csi 47 - const: csi-bridge-axi 48 - const: csi-bridge-apb 49 - const: csi-bridge-core 55 - const: csi-aclk 56 - const: csi-pclk 78 power-domain-names = "bus", "csi-bridge", "lcdif", 79 "mipi-dsi", "mipi-csi"; [all …]
|
/Linux-v6.1/Documentation/devicetree/bindings/media/xilinx/ |
D | xlnx,csi2rxss.yaml | 7 title: Xilinx MIPI CSI-2 Receiver Subsystem 13 The Xilinx MIPI CSI-2 Receiver Subsystem is used to capture MIPI CSI-2 17 data packets. This is passed along the MIPI CSI-2 Rx IP which extracts the 20 For more details, please refer to PG232 Xilinx MIPI CSI-2 Receiver Subsystem. 21 Please note that this bindings includes only the MIPI CSI-2 Rx controller 47 xlnx,csi-pxl-format: 49 This denotes the CSI Data type selected in hw design. 79 xlnx,en-csi-v2-0: 81 description: Present if CSI v2 is enabled in IP configuration. 107 CSI-2 transmitter. [all …]
|
/Linux-v6.1/Documentation/devicetree/bindings/misc/ |
D | ifm-csi.txt | 4 - compatible: "ifm,o2d-csi" 10 - ifm,csi-clk-handle: the phandle to a node in the DT describing the sensor 12 - ifm,csi-addr-bus-width: address bus width (valid values are 16, 24, 25) 13 - ifm,csi-data-bus-width: data bus width (valid values are 8 and 16) 14 - ifm,csi-wait-cycles: sensor bus wait cycles 17 - ifm,csi-byte-swap: if this property is present, the byte swapping on 22 csi@3,0 { 23 compatible = "ifm,o2d-csi"; 27 ifm,csi-clk-handle = <&timer7>; 32 ifm,csi-addr-bus-width = <24>; [all …]
|
/Linux-v6.1/drivers/staging/media/atomisp/pci/css_2401_system/host/ |
D | csi_rx_private.h | 101 * @brief Get the state of the csi rx fe dlane process. 116 * @brief Get the csi rx fe state. 155 * @brief dump the csi rx fe state. 164 ia_css_print("CSI RX FE STATE Controller %d Enable state 0x%x\n", ID, in csi_rx_fe_ctrl_dump_state() 166 ia_css_print("CSI RX FE STATE Controller %d No Of enable lanes 0x%x\n", ID, in csi_rx_fe_ctrl_dump_state() 168 ia_css_print("CSI RX FE STATE Controller %d Error handling 0x%x\n", ID, in csi_rx_fe_ctrl_dump_state() 170 ia_css_print("CSI RX FE STATE Controller %d Status 0x%x\n", ID, state->status); in csi_rx_fe_ctrl_dump_state() 171 ia_css_print("CSI RX FE STATE Controller %d Status Dlane HS 0x%x\n", ID, in csi_rx_fe_ctrl_dump_state() 173 ia_css_print("CSI RX FE STATE Controller %d Status Dlane LP 0x%x\n", ID, in csi_rx_fe_ctrl_dump_state() 175 ia_css_print("CSI RX FE STATE Controller %d Status term enable LP 0x%x\n", ID, in csi_rx_fe_ctrl_dump_state() [all …]
|
/Linux-v6.1/Documentation/devicetree/bindings/media/ |
D | nxp,imx7-csi.yaml | 4 $id: http://devicetree.org/schemas/media/nxp,imx7-csi.yaml# 7 title: i.MX7 and i.MX8 CSI bridge (CMOS Sensor Interface) 13 This is device node for the CMOS Sensor Interface (CSI) which enables the 20 - fsl,imx8mq-csi 21 - fsl,imx7-csi 22 - fsl,imx6ul-csi 24 - const: fsl,imx8mm-csi 25 - const: fsl,imx7-csi 59 csi: csi@30710000 { 60 compatible = "fsl,imx7-csi";
|
D | allwinner,sun6i-a31-csi.yaml | 4 $id: http://devicetree.org/schemas/media/allwinner,sun6i-a31-csi.yaml# 7 title: Allwinner A31 CMOS Sensor Interface (CSI) 16 - allwinner,sun6i-a31-csi 17 - allwinner,sun8i-a83t-csi 18 - allwinner,sun8i-h3-csi 19 - allwinner,sun8i-v3s-csi 20 - allwinner,sun50i-a64-csi 74 description: MIPI CSI-2 bridge input port 104 csi1: csi@1cb4000 { 105 compatible = "allwinner,sun8i-v3s-csi";
|
D | allwinner,sun4i-a10-csi.yaml | 4 $id: http://devicetree.org/schemas/media/allwinner,sun4i-a10-csi.yaml# 7 title: Allwinner A10 CMOS Sensor Interface (CSI) 38 - description: The CSI interface clock 39 - description: The CSI DRAM clock 42 - description: The CSI interface clock 43 - description: The CSI ISP clock 44 - description: The CSI DRAM clock 109 csi0: csi@1c09000 {
|
/Linux-v6.1/drivers/staging/media/atomisp/pci/hive_isp_css_include/host/ |
D | csi_rx_public.h | 26 * @brief Get the csi rx frontend state. 27 * Get the state of the csi rx frontend regiester-set. 29 * @param[in] id The global unique ID of the csi rx fe controller. 36 * @brief Dump the csi rx frontend state. 37 * Dump the state of the csi rx frontend regiester-set. 39 * @param[in] id The global unique ID of the csi rx fe controller. 46 * @brief Get the state of the csi rx fe dlane. 58 * @brief Get the csi rx backend state. 59 * Get the state of the csi rx backend regiester-set. 61 * @param[in] id The global unique ID of the csi rx be controller. [all …]
|
/Linux-v6.1/drivers/media/platform/sunxi/sun6i-csi/ |
D | sun6i_csi.h | 17 #define SUN6I_CSI_NAME "sun6i-csi" 18 #define SUN6I_CSI_DESCRIPTION "Allwinner A31 CSI Device" 29 * struct sun6i_csi_config - configs for sun6i csi 73 * sun6i_csi_is_format_supported() - check if the format supported by csi 74 * @csi_dev: pointer to the csi device 84 * sun6i_csi_set_power() - power on/off the csi 85 * @csi_dev: pointer to the csi device 93 * sun6i_csi_update_config() - update the csi register settings 94 * @csi_dev: pointer to the csi device 103 * sun6i_csi_update_buf_addr() - update the csi frame buffer address [all …]
|
/Linux-v6.1/Documentation/devicetree/bindings/phy/ |
D | rockchip-inno-csi-dphy.yaml | 4 $id: http://devicetree.org/schemas/phy/rockchip-inno-csi-dphy.yaml# 13 The Rockchip SoC has a MIPI CSI D-PHY based on an Innosilicon IP wich 14 connects to the ISP1 (Image Signal Processing unit v1.0) for CSI cameras. 19 - rockchip,px30-csi-dphy 20 - rockchip,rk1808-csi-dphy 21 - rockchip,rk3326-csi-dphy 22 - rockchip,rk3368-csi-dphy 23 - rockchip,rk3568-csi-dphy 71 compatible = "rockchip,px30-csi-dphy";
|
/Linux-v6.1/drivers/media/platform/renesas/rcar-vin/ |
D | rcar-vin.h | 129 * CSI-2 receiver to a VIN 132 * @csi: CSI-2 receiver ID. 133 * @chsel: CHSEL register values that connects VIN group to CSI-2. 136 * Each R-Car CSI-2 receiver has four output channels facing the VIN 137 * devices, each channel can carry one CSI-2 Virtual Channel (VC). 138 * There is no correlation between channel number and CSI-2 VC. It's 139 * up to the CSI-2 receiver driver to configure which VC is output 144 enum rvin_csi_id csi; member 152 * @use_isp: the VIN is connected to the ISP and not to the CSI-2 156 * @routes: list of possible routes from the CSI-2 recivers to [all …]
|
/Linux-v6.1/Documentation/devicetree/bindings/media/i2c/ |
D | st,st-mipid02.txt | 1 STMicroelectronics MIPID02 CSI-2 to PARALLEL bridge 3 MIPID02 has two CSI-2 input ports, only one of those ports can be active at a 6 CSI-2 first input port is a dual lane 800Mbps per lane whereas CSI-2 second 32 0 CSI-2 first input port 33 1 CSI-2 second input port 36 Endpoint node required property for CSI-2 connection is: 39 Endpoint node optional property for CSI-2 connection is:
|
/Linux-v6.1/include/video/ |
D | imx-ipu-v3.h | 56 * Enumeration of CSI destinations 121 * but the direct CSI->VDI linking is handled the same way as IDMAC 123 * these channel names are used to support the direct CSI->VDI link. 357 * IPU CMOS Sensor Interface (csi) functions 360 int ipu_csi_init_interface(struct ipu_csi *csi, 364 bool ipu_csi_is_interlaced(struct ipu_csi *csi); 365 void ipu_csi_get_window(struct ipu_csi *csi, struct v4l2_rect *w); 366 void ipu_csi_set_window(struct ipu_csi *csi, struct v4l2_rect *w); 367 void ipu_csi_set_downsize(struct ipu_csi *csi, bool horiz, bool vert); 368 void ipu_csi_set_test_generator(struct ipu_csi *csi, bool active, [all …]
|