Lines Matching full:cal
3 * TI Camera Access Layer (CAL) - CAMERARX
25 #include "cal.h"
83 u32 val = cal_read(phy->cal, CAL_CSI2_COMPLEXIO_CFG(phy->instance)); in cal_camerarx_lane_config()
104 cal_write(phy->cal, CAL_CSI2_COMPLEXIO_CFG(phy->instance), val); in cal_camerarx_lane_config()
111 u32 num_lanes = phy->cal->data->camerarx[phy->instance].num_lanes; in cal_camerarx_enable()
177 cal_write_field(phy->cal, CAL_CSI2_COMPLEXIO_CFG(phy->instance), in cal_camerarx_power()
183 current_state = cal_read_field(phy->cal, in cal_camerarx_power()
204 if (cal_read_field(phy->cal, in cal_camerarx_wait_reset()
212 if (cal_read_field(phy->cal, CAL_CSI2_COMPLEXIO_CFG(phy->instance), in cal_camerarx_wait_reset()
224 if (cal_read_field(phy->cal, in cal_camerarx_wait_stop_state()
231 if (cal_read_field(phy->cal, CAL_CSI2_TIMING(phy->instance), in cal_camerarx_wait_stop_state()
254 cal_write(phy->cal, CAL_HL_IRQENABLE_SET(0), in cal_camerarx_enable_irqs()
257 cal_write(phy->cal, CAL_CSI2_COMPLEXIO_IRQENABLE(phy->instance), in cal_camerarx_enable_irqs()
259 cal_write(phy->cal, CAL_CSI2_VC_IRQENABLE(phy->instance), in cal_camerarx_enable_irqs()
266 cal_write(phy->cal, CAL_HL_IRQENABLE_CLR(0), in cal_camerarx_disable_irqs()
269 cal_write(phy->cal, CAL_CSI2_COMPLEXIO_IRQENABLE(phy->instance), 0); in cal_camerarx_disable_irqs()
270 cal_write(phy->cal, CAL_CSI2_VC_IRQENABLE(phy->instance), 0); in cal_camerarx_disable_irqs()
275 cal_write_field(phy->cal, CAL_CSI2_PPI_CTRL(phy->instance), in cal_camerarx_ppi_enable()
278 cal_write_field(phy->cal, CAL_CSI2_PPI_CTRL(phy->instance), in cal_camerarx_ppi_enable()
284 cal_write_field(phy->cal, CAL_CSI2_PPI_CTRL(phy->instance), in cal_camerarx_ppi_disable()
339 cal_write_field(phy->cal, CAL_CSI2_COMPLEXIO_CFG(phy->instance), in cal_camerarx_start()
344 cal_read(phy->cal, CAL_CSI2_COMPLEXIO_CFG(phy->instance))); in cal_camerarx_start()
362 sscounter = DIV_ROUND_UP(clk_get_rate(phy->cal->fclk), 10000 * 16 * 4); in cal_camerarx_start()
364 val = cal_read(phy->cal, CAL_CSI2_TIMING(phy->instance)); in cal_camerarx_start()
369 cal_write(phy->cal, CAL_CSI2_TIMING(phy->instance), val); in cal_camerarx_start()
372 cal_read(phy->cal, CAL_CSI2_TIMING(phy->instance))); in cal_camerarx_start()
375 cal_write_field(phy->cal, CAL_CSI2_TIMING(phy->instance), in cal_camerarx_start()
379 cal_read(phy->cal, CAL_CSI2_TIMING(phy->instance))); in cal_camerarx_start()
443 cal_write_field(phy->cal, CAL_CSI2_COMPLEXIO_CFG(phy->instance), in cal_camerarx_stop()
449 cal_read(phy->cal, CAL_CSI2_COMPLEXIO_CFG(phy->instance))); in cal_camerarx_stop()
491 static int cal_camerarx_regmap_init(struct cal_dev *cal, in cal_camerarx_regmap_init() argument
497 if (!cal->data) in cal_camerarx_regmap_init()
500 phy_data = &cal->data->camerarx[phy->instance]; in cal_camerarx_regmap_init()
504 .reg = cal->syscon_camerrx_offset, in cal_camerarx_regmap_init()
513 phy->fields[i] = devm_regmap_field_alloc(cal->dev, in cal_camerarx_regmap_init()
514 cal->syscon_camerrx, in cal_camerarx_regmap_init()
517 cal_err(cal, "Unable to allocate regmap fields\n"); in cal_camerarx_regmap_init()
537 ep_node = of_graph_get_endpoint_by_regs(phy->cal->dev->of_node, in cal_camerarx_parse_dt()
765 cal_err(phy->cal, in cal_camerarx_get_frame_desc()
771 cal_err(phy->cal, in cal_camerarx_get_frame_desc()
811 struct cal_camerarx *cal_camerarx_create(struct cal_dev *cal, in cal_camerarx_create() argument
814 struct platform_device *pdev = to_platform_device(cal->dev); in cal_camerarx_create()
820 phy = devm_kzalloc(cal->dev, sizeof(*phy), GFP_KERNEL); in cal_camerarx_create()
824 phy->cal = cal; in cal_camerarx_create()
833 phy->base = devm_ioremap_resource(cal->dev, phy->res); in cal_camerarx_create()
835 cal_err(cal, "failed to ioremap\n"); in cal_camerarx_create()
839 cal_dbg(1, cal, "ioresource %s at %pa - %pa\n", in cal_camerarx_create()
842 ret = cal_camerarx_regmap_init(cal, phy); in cal_camerarx_create()
857 sd->dev = cal->dev; in cal_camerarx_create()
872 ret = v4l2_device_register_subdev(&cal->v4l2_dev, sd); in cal_camerarx_create()