drivers/staging/media/starfive/camss/stf-camss.c
103
csd = v4l2_async_nf_add_fwnode_remote(&stfcamss->notifier,
drivers/staging/media/starfive/camss/stf-camss.c
108
dev_err(stfcamss->dev, "failed to add async notifier\n");
drivers/staging/media/starfive/camss/stf-camss.c
112
ret = stfcamss_of_parse_endpoint_node(stfcamss, node, csd);
drivers/staging/media/starfive/camss/stf-camss.c
126
static int stfcamss_register_devs(struct stfcamss *stfcamss)
drivers/staging/media/starfive/camss/stf-camss.c
128
struct stf_capture *cap_yuv = &stfcamss->captures[STF_CAPTURE_YUV];
drivers/staging/media/starfive/camss/stf-camss.c
129
struct stf_isp_dev *isp_dev = &stfcamss->isp_dev;
drivers/staging/media/starfive/camss/stf-camss.c
132
ret = stf_isp_register(isp_dev, &stfcamss->v4l2_dev);
drivers/staging/media/starfive/camss/stf-camss.c
134
dev_err(stfcamss->dev,
drivers/staging/media/starfive/camss/stf-camss.c
139
ret = stf_capture_register(stfcamss, &stfcamss->v4l2_dev);
drivers/staging/media/starfive/camss/stf-camss.c
141
dev_err(stfcamss->dev,
drivers/staging/media/starfive/camss/stf-camss.c
156
stf_capture_unregister(stfcamss);
drivers/staging/media/starfive/camss/stf-camss.c
158
stf_isp_unregister(&stfcamss->isp_dev);
drivers/staging/media/starfive/camss/stf-camss.c
163
static void stfcamss_unregister_devs(struct stfcamss *stfcamss)
drivers/staging/media/starfive/camss/stf-camss.c
165
struct stf_capture *cap_yuv = &stfcamss->captures[STF_CAPTURE_YUV];
drivers/staging/media/starfive/camss/stf-camss.c
166
struct stf_isp_dev *isp_dev = &stfcamss->isp_dev;
drivers/staging/media/starfive/camss/stf-camss.c
171
stf_isp_unregister(&stfcamss->isp_dev);
drivers/staging/media/starfive/camss/stf-camss.c
172
stf_capture_unregister(stfcamss);
drivers/staging/media/starfive/camss/stf-camss.c
179
struct stfcamss *stfcamss =
drivers/staging/media/starfive/camss/stf-camss.c
180
container_of(async, struct stfcamss, notifier);
drivers/staging/media/starfive/camss/stf-camss.c
184
struct stf_isp_dev *isp_dev = &stfcamss->isp_dev;
drivers/staging/media/starfive/camss/stf-camss.c
185
struct stf_capture *cap_raw = &stfcamss->captures[STF_CAPTURE_RAW];
drivers/staging/media/starfive/camss/stf-camss.c
192
dev_err(stfcamss->dev, "not support port %d\n", port);
drivers/staging/media/starfive/camss/stf-camss.c
213
struct stfcamss *stfcamss =
drivers/staging/media/starfive/camss/stf-camss.c
214
container_of(ntf, struct stfcamss, notifier);
drivers/staging/media/starfive/camss/stf-camss.c
216
return v4l2_device_register_subdev_nodes(&stfcamss->v4l2_dev);
drivers/staging/media/starfive/camss/stf-camss.c
226
struct stfcamss *stfcamss)
drivers/staging/media/starfive/camss/stf-camss.c
228
stfcamss->media_dev.dev = stfcamss->dev;
drivers/staging/media/starfive/camss/stf-camss.c
229
strscpy(stfcamss->media_dev.model, "Starfive Camera Subsystem",
drivers/staging/media/starfive/camss/stf-camss.c
230
sizeof(stfcamss->media_dev.model));
drivers/staging/media/starfive/camss/stf-camss.c
231
media_device_init(&stfcamss->media_dev);
drivers/staging/media/starfive/camss/stf-camss.c
233
stfcamss->v4l2_dev.mdev = &stfcamss->media_dev;
drivers/staging/media/starfive/camss/stf-camss.c
244
struct stfcamss *stfcamss;
drivers/staging/media/starfive/camss/stf-camss.c
249
stfcamss = devm_kzalloc(dev, sizeof(*stfcamss), GFP_KERNEL);
drivers/staging/media/starfive/camss/stf-camss.c
250
if (!stfcamss)
drivers/staging/media/starfive/camss/stf-camss.c
253
stfcamss->dev = dev;
drivers/staging/media/starfive/camss/stf-camss.c
262
ret = devm_request_irq(stfcamss->dev, irq, stf_isrs[i].isr, 0,
drivers/staging/media/starfive/camss/stf-camss.c
263
stf_isrs[i].name, stfcamss);
drivers/staging/media/starfive/camss/stf-camss.c
270
stfcamss->nclks = ARRAY_SIZE(stfcamss->sys_clk);
drivers/staging/media/starfive/camss/stf-camss.c
271
for (i = 0; i < stfcamss->nclks; ++i)
drivers/staging/media/starfive/camss/stf-camss.c
272
stfcamss->sys_clk[i].id = stfcamss_clocks[i];
drivers/staging/media/starfive/camss/stf-camss.c
273
ret = devm_clk_bulk_get(dev, stfcamss->nclks, stfcamss->sys_clk);
drivers/staging/media/starfive/camss/stf-camss.c
279
stfcamss->nrsts = ARRAY_SIZE(stfcamss->sys_rst);
drivers/staging/media/starfive/camss/stf-camss.c
280
for (i = 0; i < stfcamss->nrsts; ++i)
drivers/staging/media/starfive/camss/stf-camss.c
281
stfcamss->sys_rst[i].id = stfcamss_resets[i];
drivers/staging/media/starfive/camss/stf-camss.c
282
ret = devm_reset_control_bulk_get_shared(dev, stfcamss->nrsts,
drivers/staging/media/starfive/camss/stf-camss.c
283
stfcamss->sys_rst);
drivers/staging/media/starfive/camss/stf-camss.c
289
ret = stfcamss_get_mem_res(stfcamss);
drivers/staging/media/starfive/camss/stf-camss.c
295
platform_set_drvdata(pdev, stfcamss);
drivers/staging/media/starfive/camss/stf-camss.c
297
v4l2_async_nf_init(&stfcamss->notifier, &stfcamss->v4l2_dev);
drivers/staging/media/starfive/camss/stf-camss.c
299
num_subdevs = stfcamss_of_parse_ports(stfcamss);
drivers/staging/media/starfive/camss/stf-camss.c
306
ret = stf_isp_init(stfcamss);
drivers/staging/media/starfive/camss/stf-camss.c
312
stfcamss_mc_init(pdev, stfcamss);
drivers/staging/media/starfive/camss/stf-camss.c
314
ret = v4l2_device_register(stfcamss->dev, &stfcamss->v4l2_dev);
drivers/staging/media/starfive/camss/stf-camss.c
320
ret = media_device_register(&stfcamss->media_dev);
drivers/staging/media/starfive/camss/stf-camss.c
326
ret = stfcamss_register_devs(stfcamss);
drivers/staging/media/starfive/camss/stf-camss.c
334
stfcamss->notifier.ops = &stfcamss_subdev_notifier_ops;
drivers/staging/media/starfive/camss/stf-camss.c
335
ret = v4l2_async_nf_register(&stfcamss->notifier);
drivers/staging/media/starfive/camss/stf-camss.c
346
stfcamss_unregister_devs(stfcamss);
drivers/staging/media/starfive/camss/stf-camss.c
348
media_device_unregister(&stfcamss->media_dev);
drivers/staging/media/starfive/camss/stf-camss.c
350
v4l2_device_unregister(&stfcamss->v4l2_dev);
drivers/staging/media/starfive/camss/stf-camss.c
352
media_device_cleanup(&stfcamss->media_dev);
drivers/staging/media/starfive/camss/stf-camss.c
354
v4l2_async_nf_cleanup(&stfcamss->notifier);
drivers/staging/media/starfive/camss/stf-camss.c
364
struct stfcamss *stfcamss = platform_get_drvdata(pdev);
drivers/staging/media/starfive/camss/stf-camss.c
366
stfcamss_unregister_devs(stfcamss);
drivers/staging/media/starfive/camss/stf-camss.c
367
v4l2_device_unregister(&stfcamss->v4l2_dev);
drivers/staging/media/starfive/camss/stf-camss.c
368
media_device_cleanup(&stfcamss->media_dev);
drivers/staging/media/starfive/camss/stf-camss.c
369
v4l2_async_nf_cleanup(&stfcamss->notifier);
drivers/staging/media/starfive/camss/stf-camss.c
382
struct stfcamss *stfcamss = dev_get_drvdata(dev);
drivers/staging/media/starfive/camss/stf-camss.c
385
ret = reset_control_bulk_assert(stfcamss->nrsts, stfcamss->sys_rst);
drivers/staging/media/starfive/camss/stf-camss.c
391
clk_bulk_disable_unprepare(stfcamss->nclks, stfcamss->sys_clk);
drivers/staging/media/starfive/camss/stf-camss.c
398
struct stfcamss *stfcamss = dev_get_drvdata(dev);
drivers/staging/media/starfive/camss/stf-camss.c
401
ret = clk_bulk_prepare_enable(stfcamss->nclks, stfcamss->sys_clk);
drivers/staging/media/starfive/camss/stf-camss.c
407
ret = reset_control_bulk_deassert(stfcamss->nrsts, stfcamss->sys_rst);
drivers/staging/media/starfive/camss/stf-camss.c
410
clk_bulk_disable_unprepare(stfcamss->nclks, stfcamss->sys_clk);
drivers/staging/media/starfive/camss/stf-camss.c
44
static int stfcamss_get_mem_res(struct stfcamss *stfcamss)
drivers/staging/media/starfive/camss/stf-camss.c
46
struct platform_device *pdev = to_platform_device(stfcamss->dev);
drivers/staging/media/starfive/camss/stf-camss.c
48
stfcamss->syscon_base =
drivers/staging/media/starfive/camss/stf-camss.c
50
if (IS_ERR(stfcamss->syscon_base))
drivers/staging/media/starfive/camss/stf-camss.c
51
return PTR_ERR(stfcamss->syscon_base);
drivers/staging/media/starfive/camss/stf-camss.c
53
stfcamss->isp_base = devm_platform_ioremap_resource_byname(pdev, "isp");
drivers/staging/media/starfive/camss/stf-camss.c
54
if (IS_ERR(stfcamss->isp_base))
drivers/staging/media/starfive/camss/stf-camss.c
55
return PTR_ERR(stfcamss->isp_base);
drivers/staging/media/starfive/camss/stf-camss.c
68
static int stfcamss_of_parse_endpoint_node(struct stfcamss *stfcamss,
drivers/staging/media/starfive/camss/stf-camss.c
77
dev_err(stfcamss->dev, "endpoint not defined at %pOF\n", node);
drivers/staging/media/starfive/camss/stf-camss.c
92
static int stfcamss_of_parse_ports(struct stfcamss *stfcamss)
drivers/staging/media/starfive/camss/stf-camss.c
97
for_each_endpoint_of_node(stfcamss->dev->of_node, node) {
drivers/staging/media/starfive/camss/stf-camss.h
100
static inline void stf_isp_reg_set(struct stfcamss *stfcamss, u32 reg, u32 mask)
drivers/staging/media/starfive/camss/stf-camss.h
102
iowrite32(ioread32(stfcamss->isp_base + reg) | mask,
drivers/staging/media/starfive/camss/stf-camss.h
103
stfcamss->isp_base + reg);
drivers/staging/media/starfive/camss/stf-camss.h
106
static inline u32 stf_syscon_reg_read(struct stfcamss *stfcamss, u32 reg)
drivers/staging/media/starfive/camss/stf-camss.h
108
return ioread32(stfcamss->syscon_base + reg);
drivers/staging/media/starfive/camss/stf-camss.h
111
static inline void stf_syscon_reg_write(struct stfcamss *stfcamss,
drivers/staging/media/starfive/camss/stf-camss.h
114
iowrite32(val, stfcamss->syscon_base + reg);
drivers/staging/media/starfive/camss/stf-camss.h
117
static inline void stf_syscon_reg_set_bit(struct stfcamss *stfcamss,
drivers/staging/media/starfive/camss/stf-camss.h
122
value = ioread32(stfcamss->syscon_base + reg);
drivers/staging/media/starfive/camss/stf-camss.h
123
iowrite32(value | bit_mask, stfcamss->syscon_base + reg);
drivers/staging/media/starfive/camss/stf-camss.h
126
static inline void stf_syscon_reg_clear_bit(struct stfcamss *stfcamss,
drivers/staging/media/starfive/camss/stf-camss.h
131
value = ioread32(stfcamss->syscon_base + reg);
drivers/staging/media/starfive/camss/stf-camss.h
132
iowrite32(value & ~bit_mask, stfcamss->syscon_base + reg);
drivers/staging/media/starfive/camss/stf-camss.h
71
static inline u32 stf_isp_reg_read(struct stfcamss *stfcamss, u32 reg)
drivers/staging/media/starfive/camss/stf-camss.h
73
return ioread32(stfcamss->isp_base + reg);
drivers/staging/media/starfive/camss/stf-camss.h
76
static inline void stf_isp_reg_write(struct stfcamss *stfcamss,
drivers/staging/media/starfive/camss/stf-camss.h
79
iowrite32(val, stfcamss->isp_base + reg);
drivers/staging/media/starfive/camss/stf-camss.h
82
static inline void stf_isp_reg_write_delay(struct stfcamss *stfcamss,
drivers/staging/media/starfive/camss/stf-camss.h
85
iowrite32(val, stfcamss->isp_base + reg);
drivers/staging/media/starfive/camss/stf-camss.h
89
static inline void stf_isp_reg_set_bit(struct stfcamss *stfcamss,
drivers/staging/media/starfive/camss/stf-camss.h
94
value = ioread32(stfcamss->isp_base + reg) & ~mask;
drivers/staging/media/starfive/camss/stf-camss.h
97
iowrite32(val, stfcamss->isp_base + reg);
drivers/staging/media/starfive/camss/stf-capture.c
153
struct stfcamss *stfcamss = cap->video.stfcamss;
drivers/staging/media/starfive/camss/stf-capture.c
155
stf_syscon_reg_set_bit(stfcamss, VIN_CHANNEL_SEL_EN, U0_VIN_AXIWR0_EN);
drivers/staging/media/starfive/camss/stf-capture.c
161
struct stfcamss *stfcamss = cap->video.stfcamss;
drivers/staging/media/starfive/camss/stf-capture.c
163
stf_syscon_reg_clear_bit(stfcamss, VIN_INRT_PIX_CFG, U0_VIN_INTR_M);
drivers/staging/media/starfive/camss/stf-capture.c
169
struct stfcamss *stfcamss = cap->video.stfcamss;
drivers/staging/media/starfive/camss/stf-capture.c
171
stf_syscon_reg_set_bit(stfcamss, VIN_INRT_PIX_CFG, U0_VIN_INTR_CLEAN);
drivers/staging/media/starfive/camss/stf-capture.c
172
stf_syscon_reg_clear_bit(stfcamss, VIN_INRT_PIX_CFG, U0_VIN_INTR_CLEAN);
drivers/staging/media/starfive/camss/stf-capture.c
173
stf_syscon_reg_set_bit(stfcamss, VIN_INRT_PIX_CFG, U0_VIN_INTR_M);
drivers/staging/media/starfive/camss/stf-capture.c
179
struct stfcamss *stfcamss = cap->video.stfcamss;
drivers/staging/media/starfive/camss/stf-capture.c
185
val = stf_syscon_reg_read(stfcamss, VIN_CHANNEL_SEL_EN);
drivers/staging/media/starfive/camss/stf-capture.c
188
stf_syscon_reg_write(stfcamss, VIN_CHANNEL_SEL_EN, val);
drivers/staging/media/starfive/camss/stf-capture.c
190
val = stf_syscon_reg_read(stfcamss, VIN_INRT_PIX_CFG);
drivers/staging/media/starfive/camss/stf-capture.c
200
stf_syscon_reg_write(stfcamss, VIN_INRT_PIX_CFG, val);
drivers/staging/media/starfive/camss/stf-capture.c
202
val = stf_syscon_reg_read(stfcamss, VIN_CFG_REG);
drivers/staging/media/starfive/camss/stf-capture.c
215
stf_syscon_reg_write(stfcamss, VIN_CFG_REG, val);
drivers/staging/media/starfive/camss/stf-capture.c
242
static void stf_capture_init(struct stfcamss *stfcamss, struct stf_capture *cap)
drivers/staging/media/starfive/camss/stf-capture.c
254
cap->video.stfcamss = stfcamss;
drivers/staging/media/starfive/camss/stf-capture.c
399
struct stfcamss *stfcamss = cap->video.stfcamss;
drivers/staging/media/starfive/camss/stf-capture.c
417
dev_dbg(stfcamss->dev, "missing ready buf %d %d.\n",
drivers/staging/media/starfive/camss/stf-capture.c
422
dev_dbg(stfcamss->dev,
drivers/staging/media/starfive/camss/stf-capture.c
443
stf_set_raw_addr(stfcamss, new_addr[0]);
drivers/staging/media/starfive/camss/stf-capture.c
445
stf_set_yuv_addr(stfcamss, new_addr[0], new_addr[1]);
drivers/staging/media/starfive/camss/stf-capture.c
456
struct stfcamss *stfcamss = priv;
drivers/staging/media/starfive/camss/stf-capture.c
457
struct stf_capture *cap = &stfcamss->captures[STF_CAPTURE_RAW];
drivers/staging/media/starfive/camss/stf-capture.c
464
stf_syscon_reg_set_bit(stfcamss, VIN_INRT_PIX_CFG, U0_VIN_INTR_CLEAN);
drivers/staging/media/starfive/camss/stf-capture.c
465
stf_syscon_reg_clear_bit(stfcamss, VIN_INRT_PIX_CFG, U0_VIN_INTR_CLEAN);
drivers/staging/media/starfive/camss/stf-capture.c
472
struct stfcamss *stfcamss = priv;
drivers/staging/media/starfive/camss/stf-capture.c
473
struct stf_capture *cap = &stfcamss->captures[STF_CAPTURE_YUV];
drivers/staging/media/starfive/camss/stf-capture.c
476
status = stf_isp_reg_read(stfcamss, ISP_REG_ISP_CTRL_0);
drivers/staging/media/starfive/camss/stf-capture.c
481
stf_isp_reg_write(stfcamss, ISP_REG_ISP_CTRL_0,
drivers/staging/media/starfive/camss/stf-capture.c
491
struct stfcamss *stfcamss = priv;
drivers/staging/media/starfive/camss/stf-capture.c
492
struct stf_capture *cap = &stfcamss->captures[STF_CAPTURE_YUV];
drivers/staging/media/starfive/camss/stf-capture.c
495
status = stf_isp_reg_read(stfcamss, ISP_REG_ISP_CTRL_0);
drivers/staging/media/starfive/camss/stf-capture.c
502
stf_isp_reg_set_bit(stfcamss, ISP_REG_CSIINTS,
drivers/staging/media/starfive/camss/stf-capture.c
504
stf_isp_reg_set_bit(stfcamss, ISP_REG_IESHD,
drivers/staging/media/starfive/camss/stf-capture.c
507
stf_isp_reg_write(stfcamss, ISP_REG_ISP_CTRL_0,
drivers/staging/media/starfive/camss/stf-capture.c
572
void stf_capture_unregister(struct stfcamss *stfcamss)
drivers/staging/media/starfive/camss/stf-capture.c
574
struct stf_capture *cap_raw = &stfcamss->captures[STF_CAPTURE_RAW];
drivers/staging/media/starfive/camss/stf-capture.c
575
struct stf_capture *cap_yuv = &stfcamss->captures[STF_CAPTURE_YUV];
drivers/staging/media/starfive/camss/stf-capture.c
581
int stf_capture_register(struct stfcamss *stfcamss,
drivers/staging/media/starfive/camss/stf-capture.c
587
for (i = 0; i < ARRAY_SIZE(stfcamss->captures); i++) {
drivers/staging/media/starfive/camss/stf-capture.c
588
struct stf_capture *capture = &stfcamss->captures[i];
drivers/staging/media/starfive/camss/stf-capture.c
592
stf_capture_init(stfcamss, capture);
drivers/staging/media/starfive/camss/stf-capture.c
597
dev_err(stfcamss->dev,
drivers/staging/media/starfive/camss/stf-capture.c
599
stf_capture_unregister(stfcamss);
drivers/staging/media/starfive/camss/stf-capture.c
63
static void stf_set_raw_addr(struct stfcamss *stfcamss, dma_addr_t addr)
drivers/staging/media/starfive/camss/stf-capture.c
65
stf_syscon_reg_write(stfcamss, VIN_START_ADDR_O, (long)addr);
drivers/staging/media/starfive/camss/stf-capture.c
66
stf_syscon_reg_write(stfcamss, VIN_START_ADDR_N, (long)addr);
drivers/staging/media/starfive/camss/stf-capture.c
69
static void stf_set_yuv_addr(struct stfcamss *stfcamss,
drivers/staging/media/starfive/camss/stf-capture.c
72
stf_isp_reg_write(stfcamss, ISP_REG_Y_PLANE_START_ADDR, y_addr);
drivers/staging/media/starfive/camss/stf-capture.c
73
stf_isp_reg_write(stfcamss, ISP_REG_UV_PLANE_START_ADDR, uv_addr);
drivers/staging/media/starfive/camss/stf-capture.c
91
stf_set_raw_addr(video->stfcamss, addr0);
drivers/staging/media/starfive/camss/stf-capture.c
93
stf_set_yuv_addr(video->stfcamss, addr0, addr1);
drivers/staging/media/starfive/camss/stf-capture.h
82
int stf_capture_register(struct stfcamss *stfcamss,
drivers/staging/media/starfive/camss/stf-capture.h
84
void stf_capture_unregister(struct stfcamss *stfcamss);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
103
static void stf_isp_config_lccf(struct stfcamss *stfcamss)
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
107
stf_isp_reg_write(stfcamss, ISP_REG_LCCF_CFG_0,
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
109
stf_isp_reg_write(stfcamss, ISP_REG_LCCF_CFG_1, LCCF_MAX_DIS(0xb));
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
112
stf_isp_reg_write(stfcamss, reg_add,
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
118
static void stf_isp_config_awb(struct stfcamss *stfcamss)
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
127
stf_isp_reg_write(stfcamss, reg_add, reg_val);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
13
static void stf_isp_config_obc(struct stfcamss *stfcamss)
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
135
stf_isp_reg_write(stfcamss, reg_add, reg_val);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
143
stf_isp_reg_write(stfcamss, reg_add, reg_val);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
148
static void stf_isp_config_grgb(struct stfcamss *stfcamss)
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
150
stf_isp_reg_write(stfcamss, ISP_REG_ICTC,
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
152
stf_isp_reg_write(stfcamss, ISP_REG_IDBC, BADGT(0x200) | BADXT(0x200));
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
155
static void stf_isp_config_cfa(struct stfcamss *stfcamss)
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
157
stf_isp_reg_write(stfcamss, ISP_REG_RAW_FORMAT_CFG,
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
160
stf_isp_reg_write(stfcamss, ISP_REG_ICFAM, CROSS_COV(3) | HV_W(2));
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
163
static void stf_isp_config_ccm(struct stfcamss *stfcamss)
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
167
stf_isp_reg_write(stfcamss, ISP_REG_ICAMD_0, DNRM_F(6) | CCM_M_DAT(0));
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
17
stf_isp_reg_write(stfcamss, ISP_REG_OBC_CFG, OBC_W_H(11) | OBC_W_W(11));
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
170
stf_isp_reg_write(stfcamss, reg_add, CCM_M_DAT(0x80));
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
174
stf_isp_reg_write(stfcamss, ISP_REG_ICAMD_24, CCM_M_DAT(0x700));
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
175
stf_isp_reg_write(stfcamss, ISP_REG_ICAMD_25, CCM_M_DAT(0x200));
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
178
static void stf_isp_config_gamma(struct stfcamss *stfcamss)
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
185
stf_isp_reg_write(stfcamss, ISP_REG_GAMMA_VAL0, reg_val);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
190
stf_isp_reg_write(stfcamss, reg_add, reg_val);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
198
stf_isp_reg_write(stfcamss, reg_add, reg_val);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
205
stf_isp_reg_write(stfcamss, ISP_REG_GAMMA_VAL14, reg_val);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
208
static void stf_isp_config_r2y(struct stfcamss *stfcamss)
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
210
stf_isp_reg_write(stfcamss, ISP_REG_R2Y_0, 0x4C);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
211
stf_isp_reg_write(stfcamss, ISP_REG_R2Y_1, 0x97);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
212
stf_isp_reg_write(stfcamss, ISP_REG_R2Y_2, 0x1d);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
213
stf_isp_reg_write(stfcamss, ISP_REG_R2Y_3, 0x1d5);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
214
stf_isp_reg_write(stfcamss, ISP_REG_R2Y_4, 0x1ac);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
215
stf_isp_reg_write(stfcamss, ISP_REG_R2Y_5, 0x80);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
216
stf_isp_reg_write(stfcamss, ISP_REG_R2Y_6, 0x80);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
217
stf_isp_reg_write(stfcamss, ISP_REG_R2Y_7, 0x194);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
218
stf_isp_reg_write(stfcamss, ISP_REG_R2Y_8, 0x1ec);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
22
stf_isp_reg_write(stfcamss, reg_add, reg_val);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
221
static void stf_isp_config_y_curve(struct stfcamss *stfcamss)
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
228
stf_isp_reg_write(stfcamss, reg_add, y_curve);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
234
static void stf_isp_config_sharpen(struct stfcamss *sc)
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
266
static void stf_isp_config_dnyuv(struct stfcamss *stfcamss)
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
272
stf_isp_reg_write(stfcamss, ISP_REG_DNYUV_YSWR0, reg_val);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
273
stf_isp_reg_write(stfcamss, ISP_REG_DNYUV_CSWR0, reg_val);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
276
stf_isp_reg_write(stfcamss, ISP_REG_DNYUV_YSWR1, reg_val);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
277
stf_isp_reg_write(stfcamss, ISP_REG_DNYUV_CSWR1, reg_val);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
280
stf_isp_reg_write(stfcamss, ISP_REG_DNYUV_YDR0, reg_val);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
281
stf_isp_reg_write(stfcamss, ISP_REG_DNYUV_CDR0, reg_val);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
284
stf_isp_reg_write(stfcamss, ISP_REG_DNYUV_YDR1, reg_val);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
285
stf_isp_reg_write(stfcamss, ISP_REG_DNYUV_CDR1, reg_val);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
288
stf_isp_reg_write(stfcamss, ISP_REG_DNYUV_YDR2, reg_val);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
289
stf_isp_reg_write(stfcamss, ISP_REG_DNYUV_CDR2, reg_val);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
29
stf_isp_reg_write(stfcamss, reg_add, reg_val);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
292
static void stf_isp_config_sat(struct stfcamss *stfcamss)
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
294
stf_isp_reg_write(stfcamss, ISP_REG_CS_GAIN, CMAD(0x0) | CMAB(0x100));
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
295
stf_isp_reg_write(stfcamss, ISP_REG_CS_THRESHOLD, CMD(0x1f) | CMB(0x1));
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
296
stf_isp_reg_write(stfcamss, ISP_REG_CS_OFFSET, VOFF(0x0) | UOFF(0x0));
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
297
stf_isp_reg_write(stfcamss, ISP_REG_CS_HUE_F, SIN(0x0) | COS(0x100));
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
298
stf_isp_reg_write(stfcamss, ISP_REG_CS_SCALE, 0x8);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
299
stf_isp_reg_write(stfcamss, ISP_REG_YADJ0, YOIR(0x401) | YIMIN(0x1));
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
300
stf_isp_reg_write(stfcamss, ISP_REG_YADJ1, YOMAX(0x3ff) | YOMIN(0x1));
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
305
stf_isp_reg_set_bit(isp_dev->stfcamss, ISP_REG_ISP_CTRL_0,
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
307
stf_isp_reg_set_bit(isp_dev->stfcamss, ISP_REG_ISP_CTRL_0,
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
315
stf_isp_reg_write(isp_dev->stfcamss, ISP_REG_DC_CFG_1, DC_AXI_ID(0x0));
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
316
stf_isp_reg_write(isp_dev->stfcamss, ISP_REG_DEC_CFG,
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
322
stf_isp_config_obc(isp_dev->stfcamss);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
323
stf_isp_config_oecf(isp_dev->stfcamss);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
324
stf_isp_config_lccf(isp_dev->stfcamss);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
325
stf_isp_config_awb(isp_dev->stfcamss);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
326
stf_isp_config_grgb(isp_dev->stfcamss);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
327
stf_isp_config_cfa(isp_dev->stfcamss);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
328
stf_isp_config_ccm(isp_dev->stfcamss);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
329
stf_isp_config_gamma(isp_dev->stfcamss);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
330
stf_isp_config_r2y(isp_dev->stfcamss);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
331
stf_isp_config_y_curve(isp_dev->stfcamss);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
332
stf_isp_config_sharpen(isp_dev->stfcamss);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
333
stf_isp_config_dnyuv(isp_dev->stfcamss);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
334
stf_isp_config_sat(isp_dev->stfcamss);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
336
stf_isp_reg_write(isp_dev->stfcamss, ISP_REG_CSI_MODULE_CFG,
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
339
stf_isp_reg_write(isp_dev->stfcamss, ISP_REG_ISP_CTRL_1,
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
34
static void stf_isp_config_oecf(struct stfcamss *stfcamss)
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
345
static void stf_isp_config_crop(struct stfcamss *stfcamss,
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
348
u32 bpp = stfcamss->isp_dev.current_fmt->bpp;
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
352
stf_isp_reg_write(stfcamss, ISP_REG_PIC_CAPTURE_START_CFG, val);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
356
stf_isp_reg_write(stfcamss, ISP_REG_PIC_CAPTURE_END_CFG, val);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
359
stf_isp_reg_write(stfcamss, ISP_REG_PIPELINE_XY_SIZE, val);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
362
stf_isp_reg_write(stfcamss, ISP_REG_STRIDE, val);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
365
static void stf_isp_config_raw_fmt(struct stfcamss *stfcamss, u32 mcode)
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
404
stf_isp_reg_write(stfcamss, ISP_REG_RAW_FORMAT_CFG, val);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
405
stf_isp_reg_set_bit(stfcamss, ISP_REG_ISP_CTRL_1, CTRL_SAT_MASK, val1);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
411
struct stfcamss *stfcamss = isp_dev->stfcamss;
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
413
stf_isp_config_crop(stfcamss, crop);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
414
stf_isp_config_raw_fmt(stfcamss, mcode);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
416
stf_isp_reg_set_bit(stfcamss, ISP_REG_DUMP_CFG_1,
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
42
stf_isp_reg_write(stfcamss, reg_add, par_val);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
420
stf_isp_reg_write(stfcamss, ISP_REG_ITIIWSR,
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
423
stf_isp_reg_write(stfcamss, ISP_REG_ITIDWLSR, 0x960);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
424
stf_isp_reg_write(stfcamss, ISP_REG_ITIDRLSR, 0x960);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
425
stf_isp_reg_write(stfcamss, ISP_REG_SENSOR, IMAGER_SEL(1));
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
430
struct stfcamss *stfcamss = isp_dev->stfcamss;
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
432
stf_isp_reg_write_delay(stfcamss, ISP_REG_ISP_CTRL_0,
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
434
stf_isp_reg_write_delay(stfcamss, ISP_REG_ISP_CTRL_0,
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
436
stf_isp_reg_write(stfcamss, ISP_REG_IESHD, SHAD_UP_M);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
437
stf_isp_reg_write_delay(stfcamss, ISP_REG_ISP_CTRL_0,
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
439
stf_isp_reg_write_delay(stfcamss, ISP_REG_CSIINTS,
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
441
stf_isp_reg_write_delay(stfcamss, ISP_REG_CSIINTS,
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
443
stf_isp_reg_write_delay(stfcamss, ISP_REG_CSI_INPUT_EN_AND_STATUS,
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
49
stf_isp_reg_write(stfcamss, reg_add, par_val);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
56
stf_isp_reg_write(stfcamss, reg_add, par_val);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
63
stf_isp_reg_write(stfcamss, reg_add, par_val);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
70
stf_isp_reg_write(stfcamss, reg_add, par_val);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
77
stf_isp_reg_write(stfcamss, reg_add, par_val);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
84
stf_isp_reg_write(stfcamss, reg_add, par_val);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
91
stf_isp_reg_write(stfcamss, reg_add, par_val);
drivers/staging/media/starfive/camss/stf-isp-hw-ops.c
98
stf_isp_reg_write(stfcamss, reg_add, par_val);
drivers/staging/media/starfive/camss/stf-isp.c
281
dev_dbg(isp_dev->stfcamss->dev, "pad: %d sel(%d,%d)/%ux%u\n",
drivers/staging/media/starfive/camss/stf-isp.c
347
dev_err(isp_dev->stfcamss->dev,
drivers/staging/media/starfive/camss/stf-isp.c
358
dev_err(isp_dev->stfcamss->dev,
drivers/staging/media/starfive/camss/stf-isp.c
46
int stf_isp_init(struct stfcamss *stfcamss)
drivers/staging/media/starfive/camss/stf-isp.c
48
struct stf_isp_dev *isp_dev = &stfcamss->isp_dev;
drivers/staging/media/starfive/camss/stf-isp.c
50
isp_dev->stfcamss = stfcamss;
drivers/staging/media/starfive/camss/stf-isp.h
410
struct stfcamss *stfcamss;
drivers/staging/media/starfive/camss/stf-isp.h
424
int stf_isp_init(struct stfcamss *stfcamss);
drivers/staging/media/starfive/camss/stf-video.c
153
dev_dbg(video->stfcamss->dev,
drivers/staging/media/starfive/camss/stf-video.c
158
dev_dbg(video->stfcamss->dev, "planes = %d, size = %d\n",
drivers/staging/media/starfive/camss/stf-video.c
189
dev_dbg(video->stfcamss->dev,
drivers/staging/media/starfive/camss/stf-video.c
275
ret = video_device_pipeline_start(vdev, &video->stfcamss->pipe);
drivers/staging/media/starfive/camss/stf-video.c
277
dev_err(video->stfcamss->dev,
drivers/staging/media/starfive/camss/stf-video.c
282
ret = pm_runtime_resume_and_get(video->stfcamss->dev);
drivers/staging/media/starfive/camss/stf-video.c
284
dev_err(video->stfcamss->dev, "power up failed %d\n", ret);
drivers/staging/media/starfive/camss/stf-video.c
292
dev_err(video->stfcamss->dev, "stream on failed\n");
drivers/staging/media/starfive/camss/stf-video.c
299
pm_runtime_put(video->stfcamss->dev);
drivers/staging/media/starfive/camss/stf-video.c
316
pm_runtime_put(video->stfcamss->dev);
drivers/staging/media/starfive/camss/stf-video.c
512
q->dev = video->stfcamss->dev;
drivers/staging/media/starfive/camss/stf-video.c
517
dev_err(video->stfcamss->dev,
drivers/staging/media/starfive/camss/stf-video.c
525
dev_err(video->stfcamss->dev,
drivers/staging/media/starfive/camss/stf-video.c
532
dev_err(video->stfcamss->dev,
drivers/staging/media/starfive/camss/stf-video.c
552
dev_err(video->stfcamss->dev,
drivers/staging/media/starfive/camss/stf-video.h
71
struct stfcamss *stfcamss;