Home
last modified time | relevance | path

Searched refs:csi (Results 1 – 25 of 176) sorted by relevance

12345678

/linux/drivers/media/platform/sunxi/sun4i-csi/
H A Dsun4i_dma.c36 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 …]
H A Dsun4i_csi.c57 struct sun4i_csi *csi = container_of(notifier, struct sun4i_csi, in sun4i_csi_notify_bound() local
60 csi->src_subdev = subdev; in sun4i_csi_notify_bound()
61 csi->src_pad = media_entity_get_fwnode_pad(&subdev->entity, in sun4i_csi_notify_bound()
64 if (csi->src_pad < 0) { in sun4i_csi_notify_bound()
65 dev_err(csi->dev, "Couldn't find output pad for subdev %s\n", in sun4i_csi_notify_bound()
67 return csi->src_pad; in sun4i_csi_notify_bound()
70 dev_dbg(csi->dev, "Bound %s pad: %d\n", subdev->name, csi->src_pad); in sun4i_csi_notify_bound()
76 struct sun4i_csi *csi = container_of(notifier, struct sun4i_csi, in sun4i_csi_notify_complete() local
78 struct v4l2_subdev *subdev = &csi->subdev; in sun4i_csi_notify_complete()
79 struct video_device *vdev = &csi->vdev; in sun4i_csi_notify_complete()
[all …]
H A Dsun4i_v4l2.c91 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
201 ret = mutex_lock_interruptible(&csi->lock); in sun4i_csi_open()
[all …]
H A DMakefile3 sun4i-csi-y += sun4i_csi.o
4 sun4i-csi-y += sun4i_dma.o
5 sun4i-csi-y += sun4i_v4l2.o
7 obj-$(CONFIG_VIDEO_SUN4I_CSI) += sun4i-csi.o
H A Dsun4i_csi.h157 int sun4i_csi_dma_register(struct sun4i_csi *csi, int irq);
158 void sun4i_csi_dma_unregister(struct sun4i_csi *csi);
160 int sun4i_csi_v4l2_register(struct sun4i_csi *csi);
/linux/drivers/media/platform/ti/j721e-csi2rx/
H A Dj721e-csi2rx.c73 struct ti_csi2rx_dev *csi; member
222 static int ti_csi2rx_start_dma(struct ti_csi2rx_dev *csi,
312 struct ti_csi2rx_dev *csi = video_drvdata(file); in ti_csi2rx_g_fmt_vid_cap() local
314 *f = csi->v_fmt; in ti_csi2rx_g_fmt_vid_cap()
343 struct ti_csi2rx_dev *csi = video_drvdata(file); in ti_csi2rx_s_fmt_vid_cap() local
344 struct vb2_queue *q = &csi->vidq; in ti_csi2rx_s_fmt_vid_cap()
354 csi->v_fmt = *f; in ti_csi2rx_s_fmt_vid_cap()
419 struct ti_csi2rx_dev *csi = dev_get_drvdata(notifier->v4l2_dev->dev); in csi_async_notifier_bound() local
421 csi->source = subdev; in csi_async_notifier_bound()
428 struct ti_csi2rx_dev *csi = dev_get_drvdata(notifier->v4l2_dev->dev); in csi_async_notifier_complete() local
[all …]
/linux/drivers/media/pci/intel/ivsc/
H A Dmei_csi.c158 static int mei_csi_send(struct mei_csi *csi, u8 *buf, size_t len) in mei_csi_send() argument
163 reinit_completion(&csi->cmd_completion); in mei_csi_send()
165 ret = mei_cldev_send(csi->cldev, buf, len); in mei_csi_send()
169 ret = wait_for_completion_killable_timeout(&csi->cmd_completion, in mei_csi_send()
179 ret = csi->cmd_response.status; in mei_csi_send()
183 v4l2_ctrl_s_ctrl(csi->privacy_ctrl, 1); in mei_csi_send()
189 if (csi->cmd_response.cmd_id != cmd->cmd_id) in mei_csi_send()
197 static int csi_set_link_owner(struct mei_csi *csi, enum csi_link_owner owner) in csi_set_link_owner() argument
207 mutex_lock(&csi->lock); in csi_set_link_owner()
209 ret = mei_csi_send(csi, (u8 *)&cmd, cmd_size); in csi_set_link_owner()
[all …]
H A DMakefile5 obj-$(CONFIG_INTEL_VSC) += ivsc-csi.o
6 ivsc-csi-y += mei_csi.o
/linux/drivers/media/platform/amlogic/c3/mipi-csi2/
H A Dc3-mipi-csi2.c275 static void c3_mipi_csi_write(struct c3_csi_device *csi, u32 reg, u32 val) in c3_mipi_csi_write() argument
281 addr = csi->aphy + CSI2_REG_ADDR(reg); in c3_mipi_csi_write()
284 addr = csi->dphy + CSI2_REG_ADDR(reg); in c3_mipi_csi_write()
287 addr = csi->host + CSI2_REG_ADDR(reg); in c3_mipi_csi_write()
290 dev_err(csi->dev, "Invalid sub-module: %lu\n", CSI2_SUBMD(reg)); in c3_mipi_csi_write()
297 static void c3_mipi_csi_cfg_aphy(struct c3_csi_device *csi) in c3_mipi_csi_cfg_aphy() argument
299 c3_mipi_csi_write(csi, CSI_PHY_CNTL0, in c3_mipi_csi_cfg_aphy()
310 c3_mipi_csi_write(csi, CSI_PHY_CNTL1, in c3_mipi_csi_cfg_aphy()
319 static void c3_mipi_csi_cfg_dphy(struct c3_csi_device *csi, s64 rate) in c3_mipi_csi_cfg_dphy() argument
328 c3_mipi_csi_write(csi, MIPI_PHY_CLK_LANE_CTRL, in c3_mipi_csi_cfg_dphy()
[all …]
/linux/drivers/gpu/ipu-v3/
H A Dipu-csi.c177 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()
373 ipu_csi_set_bt_interlaced_codes(struct ipu_csi *csi, in ipu_csi_set_bt_interlaced_codes() argument
404 ipu_csi_write(csi, 0x40596 | CSI_CCIR_ERR_DET_EN, in ipu_csi_set_bt_interlaced_codes()
406 ipu_csi_write(csi, 0xD07DF, CSI_CCIR_CODE_2); in ipu_csi_set_bt_interlaced_codes()
408 dev_dbg(csi->ipu->dev, "capture field swap\n"); in ipu_csi_set_bt_interlaced_codes()
411 ipu_csi_write(csi, 0xD07DF | CSI_CCIR_ERR_DET_EN, in ipu_csi_set_bt_interlaced_codes()
413 ipu_csi_write(csi, 0x40596, CSI_CCIR_CODE_2); in ipu_csi_set_bt_interlaced_codes()
[all …]
/linux/drivers/staging/media/tegra-video/
H A Dcsi.c94 static int csi_get_frmrate_table_index(struct tegra_csi *csi, u32 code, in csi_get_frmrate_table_index() argument
100 frmrate = csi->soc->tpg_frmrate_table; in csi_get_frmrate_table_index()
101 for (i = 0; i < csi->soc->tpg_frmrate_table_size; i++) { in csi_get_frmrate_table_index()
115 struct tegra_csi *csi = csi_chan->csi; in csi_chan_update_blank_intervals() local
116 const struct tpg_framerate *frmrate = csi->soc->tpg_frmrate_table; in csi_chan_update_blank_intervals()
119 index = csi_get_frmrate_table_index(csi_chan->csi, code, in csi_chan_update_blank_intervals()
160 struct tegra_csi *csi = csi_chan->csi; in csi_enum_frameintervals() local
161 const struct tpg_framerate *frmrate = csi->soc->tpg_frmrate_table; in csi_enum_frameintervals()
171 index = csi_get_frmrate_table_index(csi_chan->csi, fie->code, in csi_enum_frameintervals()
267 struct tegra_csi *csi = csi_chan->csi; in tegra_csi_calc_settle_time() local
[all …]
H A Dtegra210.c830 static void csi_write(struct tegra_csi *csi, u8 portno, unsigned int addr, in csi_write() argument
835 csi_pp_base = csi->iomem + CSI_PP_OFFSET(portno >> 1); in csi_write()
841 static void pp_write(struct tegra_csi *csi, u8 portno, u32 addr, u32 val) in pp_write() argument
846 csi_pp_base = csi->iomem + CSI_PP_OFFSET(portno >> 1); in pp_write()
852 static u32 pp_read(struct tegra_csi *csi, u8 portno, u32 addr) in pp_read() argument
857 csi_pp_base = csi->iomem + CSI_PP_OFFSET(portno >> 1); in pp_read()
864 static void cil_write(struct tegra_csi *csi, u8 portno, u32 addr, u32 val) in cil_write() argument
869 csi_cil_base = csi->iomem + CSI_PP_OFFSET(portno >> 1) + in cil_write()
876 static u32 cil_read(struct tegra_csi *csi, u8 portno, u32 addr) in cil_read() argument
881 csi_cil_base = csi->iomem + CSI_PP_OFFSET(portno >> 1) + in cil_read()
[all …]
/linux/drivers/media/platform/rockchip/rkisp1/
H A Drkisp1-csi.c37 struct rkisp1_csi *csi = &rkisp1->csi; in rkisp1_csi_link_sensor() local
50 &csi->sd.entity, RKISP1_CSI_PAD_SINK, in rkisp1_csi_link_sensor()
53 dev_err(csi->rkisp1->dev, "failed to link src pad of %s\n", in rkisp1_csi_link_sensor()
61 static int rkisp1_csi_config(struct rkisp1_csi *csi, in rkisp1_csi_config() argument
65 struct rkisp1_device *rkisp1 = csi->rkisp1; in rkisp1_csi_config()
113 static void rkisp1_csi_enable(struct rkisp1_csi *csi) in rkisp1_csi_enable() argument
115 struct rkisp1_device *rkisp1 = csi->rkisp1; in rkisp1_csi_enable()
123 static void rkisp1_csi_disable(struct rkisp1_csi *csi) in rkisp1_csi_disable() argument
125 struct rkisp1_device *rkisp1 = csi->rkisp1; in rkisp1_csi_disable()
149 static int rkisp1_csi_start(struct rkisp1_csi *csi, in rkisp1_csi_start() argument
[all …]
/linux/Documentation/devicetree/bindings/misc/
H A Difm-csi.txt4 - 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/Documentation/admin-guide/media/
H A Dimx7.rst44 csi-mux
51 csi chapter
59 This entity has one sink pad that receives from the csi-mux entity and a single
84 media-ctl -l "'imx7-mipi-csis.0':1 -> 'csi-mux':1[1]"
85 media-ctl -l "'csi-mux':2 -> 'csi':0[1]"
86 media-ctl -l "'csi':1 -> 'csi capture':0[1]"
90 media-ctl -V "'csi-mux':1 [fmt:SBGGR10_1X10/800x600 field:none]"
91 media-ctl -V "'csi-mux':2 [fmt:SBGGR10_1X10/800x600 field:none]"
93 media-ctl -V "'csi':0 [fmt:SBGGR10_1X10/800x600 field:none]"
105 driver imx7-csi
[all …]
/linux/arch/powerpc/boot/dts/
H A Do2d.dtsi97 csi@3,0 {
98 compatible = "ifm,o2d-csi";
100 ifm,csi-clk-handle = <&gpt7>;
107 ifm,csi-addr-bus-width = <24>;
108 ifm,csi-data-bus-width = <8>;
109 ifm,csi-wait-cycles = <0>;
/linux/arch/arm64/boot/dts/renesas/
H A DMakefile151 dtb-$(CONFIG_ARCH_R9A07G043) += r9a07g043u11-smarc-cru-csi-ov5645.dtbo
154 r9a07g043u11-smarc-cru-csi-ov5645-dtbs := r9a07g043u11-smarc.dtb r9a07g043u11-smarc-cru-csi-ov5645.…
155 dtb-$(CONFIG_ARCH_R9A07G043) += r9a07g043u11-smarc-cru-csi-ov5645.dtb
162 dtb-$(CONFIG_ARCH_R9A07G044) += r9a07g044c2-smarc-cru-csi-ov5645.dtbo
163 r9a07g044c2-smarc-cru-csi-ov5645-dtbs := r9a07g044c2-smarc.dtb r9a07g044c2-smarc-cru-csi-ov5645.dtbo
164 dtb-$(CONFIG_ARCH_R9A07G044) += r9a07g044c2-smarc-cru-csi-ov5645.dtb
168 dtb-$(CONFIG_ARCH_R9A07G044) += r9a07g044l2-smarc-cru-csi-ov5645.dtbo
169 r9a07g044l2-smarc-cru-csi-ov5645-dtbs := r9a07g044l2-smarc.dtb r9a07g044l2-smarc-cru-csi-ov5645.dtbo
170 dtb-$(CONFIG_ARCH_R9A07G044) += r9a07g044l2-smarc-cru-csi-ov5645.dtb
173 dtb-$(CONFIG_ARCH_R9A07G054) += r9a07g054l2-smarc-cru-csi-ov5645.dtbo
[all …]
/linux/include/video/
H A Dimx-ipu-v3.h358 int ipu_csi_init_interface(struct ipu_csi *csi,
362 void ipu_csi_set_window(struct ipu_csi *csi, struct v4l2_rect *w);
363 void ipu_csi_set_downsize(struct ipu_csi *csi, bool horiz, bool vert);
364 int ipu_csi_set_mipi_datatype(struct ipu_csi *csi, u32 vc,
366 int ipu_csi_set_skip_smfc(struct ipu_csi *csi, u32 skip,
368 int ipu_csi_set_dest(struct ipu_csi *csi, enum ipu_csi_dest csi_dest);
369 int ipu_csi_enable(struct ipu_csi *csi);
370 int ipu_csi_disable(struct ipu_csi *csi);
372 void ipu_csi_put(struct ipu_csi *csi);
373 void ipu_csi_dump(struct ipu_csi *csi);
[all …]
/linux/drivers/media/platform/renesas/rcar-vin/
H A Drcar-core.c642 if (route->master == master_id && route->csi == csi_id) { in rvin_csi2_link_notify()
673 struct media_entity *source = &group->remotes[route->csi].subdev->entity; in rvin_csi2_create_link()
750 if (!group->remotes[route->csi].subdev) in rvin_csi2_setup_links()
920 { .master = 0, .csi = RVIN_CSI20, .chsel = 0x04 },
921 { .master = 0, .csi = RVIN_CSI40, .chsel = 0x03 },
922 { .master = 4, .csi = RVIN_CSI20, .chsel = 0x04 },
934 { .master = 0, .csi = RVIN_CSI20, .chsel = 0x04 },
935 { .master = 0, .csi = RVIN_CSI40, .chsel = 0x03 },
936 { .master = 4, .csi = RVIN_CSI20, .chsel = 0x04 },
937 { .master = 4, .csi = RVIN_CSI41, .chsel = 0x03 },
[all …]
/linux/drivers/staging/media/imx/
H A DMakefile9 imx6-media-csi-objs := imx-media-csi.o imx-media-fim.o
13 obj-$(CONFIG_VIDEO_IMX_MEDIA) += imx6-media-csi.o
H A Dimx-ic-prp.c296 struct v4l2_subdev *csi; in prp_link_validate() local
304 csi = imx_media_pipeline_subdev(&ic_priv->sd.entity, in prp_link_validate()
306 if (IS_ERR(csi)) in prp_link_validate()
307 csi = NULL; in prp_link_validate()
322 if (!csi) { in prp_link_validate()
328 if (csi) { in prp_link_validate()
329 switch (csi->grp_id) { in prp_link_validate()
/linux/drivers/media/platform/renesas/rzg2l-cru/
H A Drzg2l-core.c66 source = &cru->csi.subdev->entity; in rzg2l_cru_group_notify_complete()
76 cru->ip.remote = cru->csi.subdev; in rzg2l_cru_group_notify_complete()
103 if (cru->csi.asd == asd) { in rzg2l_cru_group_notify_unbind()
104 cru->csi.subdev = NULL; in rzg2l_cru_group_notify_unbind()
119 if (cru->csi.asd == asd) { in rzg2l_cru_group_notify_bound()
120 cru->csi.subdev = subdev; in rzg2l_cru_group_notify_bound()
171 cru->csi.asd = asd; in rzg2l_cru_mc_parse_of()
/linux/arch/arm64/boot/dts/allwinner/
H A Dsun50i-a100-allwinner-perf1.dts147 regulator-name = "vcc-pe-csi";
153 regulator-name = "ldo-avdd-csi";
159 regulator-name = "avcc-csi";
165 regulator-name = "vcc-pc-lvds-csi-efuse-emmc-nand";
171 regulator-name = "dvdd-csi";
/linux/drivers/staging/media/atomisp/pci/
H A Datomisp_gmin_platform.c970 struct camera_mipi_info *csi; in camera_sensor_csi_alloc() local
972 csi = kzalloc_obj(*csi); in camera_sensor_csi_alloc()
973 if (!csi) in camera_sensor_csi_alloc()
976 csi->port = port; in camera_sensor_csi_alloc()
977 csi->num_lanes = lanes; in camera_sensor_csi_alloc()
978 csi->input_format = format; in camera_sensor_csi_alloc()
979 csi->raw_bayer_order = bayer_order; in camera_sensor_csi_alloc()
980 v4l2_set_subdev_hostdata(sd, csi); in camera_sensor_csi_alloc()
981 csi->metadata_format = ATOMISP_INPUT_FORMAT_EMBEDDED; in camera_sensor_csi_alloc()
982 csi->metadata_effective_width = NULL; in camera_sensor_csi_alloc()
[all …]
/linux/drivers/media/platform/sunxi/sun6i-csi/
H A DMakefile2 sun6i-csi-y += sun6i_csi.o sun6i_csi_bridge.o sun6i_csi_capture.o
4 obj-$(CONFIG_VIDEO_SUN6I_CSI) += sun6i-csi.o

12345678