Symbol: mali_c55
drivers/media/platform/arm/mali-c55/mali-c55-capture.c
208
mali_c55_ctx_write(cap_dev->mali_c55, addr + cap_dev->reg_offset, val);
drivers/media/platform/arm/mali-c55/mali-c55-capture.c
213
return mali_c55_ctx_read(cap_dev->mali_c55, addr + cap_dev->reg_offset);
drivers/media/platform/arm/mali-c55/mali-c55-capture.c
303
dev_dbg(cap_dev->mali_c55->dev,
drivers/media/platform/arm/mali-c55/mali-c55-capture.c
313
dev_dbg(cap_dev->mali_c55->dev,
drivers/media/platform/arm/mali-c55/mali-c55-capture.c
460
struct mali_c55_isp *isp = &cap_dev->mali_c55->isp;
drivers/media/platform/arm/mali-c55/mali-c55-capture.c
586
struct mali_c55 *mali_c55 = cap_dev->mali_c55;
drivers/media/platform/arm/mali-c55/mali-c55-capture.c
588
struct mali_c55_isp *isp = &mali_c55->isp;
drivers/media/platform/arm/mali-c55/mali-c55-capture.c
593
ret = pm_runtime_resume_and_get(mali_c55->dev);
drivers/media/platform/arm/mali-c55/mali-c55-capture.c
599
dev_dbg(mali_c55->dev, "%s failed to start media pipeline\n",
drivers/media/platform/arm/mali-c55/mali-c55-capture.c
612
if (mali_c55_pipeline_ready(mali_c55)) {
drivers/media/platform/arm/mali-c55/mali-c55-capture.c
613
ret = v4l2_subdev_enable_streams(&mali_c55->isp.sd,
drivers/media/platform/arm/mali-c55/mali-c55-capture.c
628
pm_runtime_put_autosuspend(mali_c55->dev);
drivers/media/platform/arm/mali-c55/mali-c55-capture.c
638
struct mali_c55 *mali_c55 = cap_dev->mali_c55;
drivers/media/platform/arm/mali-c55/mali-c55-capture.c
640
struct mali_c55_isp *isp = &mali_c55->isp;
drivers/media/platform/arm/mali-c55/mali-c55-capture.c
644
if (mali_c55_pipeline_ready(mali_c55)) {
drivers/media/platform/arm/mali-c55/mali-c55-capture.c
655
pm_runtime_put_autosuspend(mali_c55->dev);
drivers/media/platform/arm/mali-c55/mali-c55-capture.c
825
static int mali_c55_register_cap_dev(struct mali_c55 *mali_c55,
drivers/media/platform/arm/mali-c55/mali-c55-capture.c
828
struct mali_c55_cap_dev *cap_dev = &mali_c55->cap_devs[cap_dev_id];
drivers/media/platform/arm/mali-c55/mali-c55-capture.c
837
cap_dev->mali_c55 = mali_c55;
drivers/media/platform/arm/mali-c55/mali-c55-capture.c
846
cap_dev->rsz = &mali_c55->resizers[MALI_C55_RSZ_FR];
drivers/media/platform/arm/mali-c55/mali-c55-capture.c
850
cap_dev->rsz = &mali_c55->resizers[MALI_C55_RSZ_DS];
drivers/media/platform/arm/mali-c55/mali-c55-capture.c
874
vb2q->dev = mali_c55->dev;
drivers/media/platform/arm/mali-c55/mali-c55-capture.c
878
dev_err(mali_c55->dev, "%s vb2 queue init failed\n",
drivers/media/platform/arm/mali-c55/mali-c55-capture.c
889
vdev->v4l2_dev = &mali_c55->v4l2_dev;
drivers/media/platform/arm/mali-c55/mali-c55-capture.c
904
dev_err(mali_c55->dev,
drivers/media/platform/arm/mali-c55/mali-c55-capture.c
922
int mali_c55_register_capture_devs(struct mali_c55 *mali_c55)
drivers/media/platform/arm/mali-c55/mali-c55-capture.c
926
ret = mali_c55_register_cap_dev(mali_c55, MALI_C55_CAP_DEV_FR);
drivers/media/platform/arm/mali-c55/mali-c55-capture.c
930
if (mali_c55->capabilities & MALI_C55_GPS_DS_PIPE_FITTED) {
drivers/media/platform/arm/mali-c55/mali-c55-capture.c
931
ret = mali_c55_register_cap_dev(mali_c55, MALI_C55_CAP_DEV_DS);
drivers/media/platform/arm/mali-c55/mali-c55-capture.c
933
mali_c55_unregister_capture_devs(mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-capture.c
941
static void mali_c55_unregister_cap_dev(struct mali_c55 *mali_c55,
drivers/media/platform/arm/mali-c55/mali-c55-capture.c
944
struct mali_c55_cap_dev *cap_dev = &mali_c55->cap_devs[cap_dev_id];
drivers/media/platform/arm/mali-c55/mali-c55-capture.c
954
void mali_c55_unregister_capture_devs(struct mali_c55 *mali_c55)
drivers/media/platform/arm/mali-c55/mali-c55-capture.c
956
mali_c55_unregister_cap_dev(mali_c55, MALI_C55_CAP_DEV_FR);
drivers/media/platform/arm/mali-c55/mali-c55-capture.c
957
if (mali_c55->capabilities & MALI_C55_GPS_DS_PIPE_FITTED)
drivers/media/platform/arm/mali-c55/mali-c55-capture.c
958
mali_c55_unregister_cap_dev(mali_c55, MALI_C55_CAP_DEV_DS);
drivers/media/platform/arm/mali-c55/mali-c55-common.h
145
struct mali_c55 *mali_c55;
drivers/media/platform/arm/mali-c55/mali-c55-common.h
183
struct mali_c55 *mali_c55;
drivers/media/platform/arm/mali-c55/mali-c55-common.h
198
struct mali_c55 *mali_c55;
drivers/media/platform/arm/mali-c55/mali-c55-common.h
229
struct mali_c55 *mali_c55;
drivers/media/platform/arm/mali-c55/mali-c55-common.h
262
void mali_c55_write(struct mali_c55 *mali_c55, unsigned int addr, u32 val);
drivers/media/platform/arm/mali-c55/mali-c55-common.h
265
void mali_c55_update_bits(struct mali_c55 *mali_c55, unsigned int addr,
drivers/media/platform/arm/mali-c55/mali-c55-common.h
267
u32 mali_c55_read(struct mali_c55 *mali_c55, unsigned int addr);
drivers/media/platform/arm/mali-c55/mali-c55-common.h
268
void mali_c55_ctx_write(struct mali_c55 *mali_c55, unsigned int addr, u32 val);
drivers/media/platform/arm/mali-c55/mali-c55-common.h
269
u32 mali_c55_ctx_read(struct mali_c55 *mali_c55, unsigned int addr);
drivers/media/platform/arm/mali-c55/mali-c55-common.h
270
void mali_c55_ctx_update_bits(struct mali_c55 *mali_c55, unsigned int addr,
drivers/media/platform/arm/mali-c55/mali-c55-common.h
277
int mali_c55_register_isp(struct mali_c55 *mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-common.h
278
int mali_c55_register_tpg(struct mali_c55 *mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-common.h
279
void mali_c55_unregister_tpg(struct mali_c55 *mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-common.h
280
void mali_c55_unregister_isp(struct mali_c55 *mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-common.h
281
int mali_c55_register_resizers(struct mali_c55 *mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-common.h
282
void mali_c55_unregister_resizers(struct mali_c55 *mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-common.h
283
int mali_c55_register_capture_devs(struct mali_c55 *mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-common.h
284
void mali_c55_unregister_capture_devs(struct mali_c55 *mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-common.h
285
int mali_c55_register_stats(struct mali_c55 *mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-common.h
286
void mali_c55_unregister_stats(struct mali_c55 *mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-common.h
287
int mali_c55_register_params(struct mali_c55 *mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-common.h
288
void mali_c55_unregister_params(struct mali_c55 *mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-common.h
289
struct mali_c55_context *mali_c55_get_active_context(struct mali_c55 *mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-common.h
293
void mali_c55_isp_queue_event_sof(struct mali_c55 *mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-common.h
305
bool mali_c55_pipeline_ready(struct mali_c55 *mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-common.h
306
void mali_c55_stats_fill_buffer(struct mali_c55 *mali_c55,
drivers/media/platform/arm/mali-c55/mali-c55-common.h
308
void mali_c55_params_write_config(struct mali_c55 *mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-common.h
45
struct mali_c55;
drivers/media/platform/arm/mali-c55/mali-c55-common.h
62
struct mali_c55 *mali_c55;
drivers/media/platform/arm/mali-c55/mali-c55-common.h
72
struct mali_c55 *mali_c55;
drivers/media/platform/arm/mali-c55/mali-c55-common.h
96
struct mali_c55 *mali_c55;
drivers/media/platform/arm/mali-c55/mali-c55-core.c
103
writel(val, mali_c55->base + addr);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
106
u32 mali_c55_read(struct mali_c55 *mali_c55, unsigned int addr)
drivers/media/platform/arm/mali-c55/mali-c55-core.c
110
return readl(mali_c55->base + addr);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
113
void mali_c55_update_bits(struct mali_c55 *mali_c55, unsigned int addr,
drivers/media/platform/arm/mali-c55/mali-c55-core.c
118
orig = mali_c55_read(mali_c55, addr);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
124
mali_c55_write(mali_c55, addr, new);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
134
void mali_c55_ctx_write(struct mali_c55 *mali_c55, unsigned int addr, u32 val)
drivers/media/platform/arm/mali-c55/mali-c55-core.c
136
struct mali_c55_context *ctx = mali_c55_get_active_context(mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
151
u32 mali_c55_ctx_read(struct mali_c55 *mali_c55, unsigned int addr)
drivers/media/platform/arm/mali-c55/mali-c55-core.c
153
struct mali_c55_context *ctx = mali_c55_get_active_context(mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
165
void mali_c55_ctx_update_bits(struct mali_c55 *mali_c55, unsigned int addr,
drivers/media/platform/arm/mali-c55/mali-c55-core.c
168
struct mali_c55_context *ctx = mali_c55_get_active_context(mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
190
struct mali_c55 *mali_c55 = ctx->mali_c55;
drivers/media/platform/arm/mali-c55/mali-c55-core.c
192
memcpy_toio(mali_c55->base + config_space_addrs[cfg_space],
drivers/media/platform/arm/mali-c55/mali-c55-core.c
198
struct mali_c55_context *mali_c55_get_active_context(struct mali_c55 *mali_c55)
drivers/media/platform/arm/mali-c55/mali-c55-core.c
200
return &mali_c55->context;
drivers/media/platform/arm/mali-c55/mali-c55-core.c
203
static void mali_c55_remove_links(struct mali_c55 *mali_c55)
drivers/media/platform/arm/mali-c55/mali-c55-core.c
207
media_entity_remove_links(&mali_c55->tpg.sd.entity);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
208
media_entity_remove_links(&mali_c55->isp.sd.entity);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
211
media_entity_remove_links(&mali_c55->resizers[i].sd.entity);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
214
media_entity_remove_links(&mali_c55->cap_devs[i].vdev.entity);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
217
static int mali_c55_create_links(struct mali_c55 *mali_c55)
drivers/media/platform/arm/mali-c55/mali-c55-core.c
222
ret = media_create_pad_link(&mali_c55->tpg.sd.entity, 0,
drivers/media/platform/arm/mali-c55/mali-c55-core.c
223
&mali_c55->isp.sd.entity,
drivers/media/platform/arm/mali-c55/mali-c55-core.c
226
dev_err(mali_c55->dev, "failed to link TPG and ISP\n");
drivers/media/platform/arm/mali-c55/mali-c55-core.c
231
ret = media_create_pad_link(&mali_c55->isp.sd.entity,
drivers/media/platform/arm/mali-c55/mali-c55-core.c
233
&mali_c55->resizers[MALI_C55_RSZ_FR].sd.entity,
drivers/media/platform/arm/mali-c55/mali-c55-core.c
237
dev_err(mali_c55->dev, "failed to link ISP and FR resizer\n");
drivers/media/platform/arm/mali-c55/mali-c55-core.c
242
ret = media_create_pad_link(&mali_c55->isp.sd.entity,
drivers/media/platform/arm/mali-c55/mali-c55-core.c
244
&mali_c55->resizers[MALI_C55_RSZ_FR].sd.entity,
drivers/media/platform/arm/mali-c55/mali-c55-core.c
248
dev_err(mali_c55->dev, "failed to link ISP and FR resizer\n");
drivers/media/platform/arm/mali-c55/mali-c55-core.c
253
ret = media_create_pad_link(&mali_c55->resizers[0].sd.entity,
drivers/media/platform/arm/mali-c55/mali-c55-core.c
255
&mali_c55->cap_devs[MALI_C55_CAP_DEV_FR].vdev.entity,
drivers/media/platform/arm/mali-c55/mali-c55-core.c
258
dev_err(mali_c55->dev,
drivers/media/platform/arm/mali-c55/mali-c55-core.c
264
if (mali_c55->capabilities & MALI_C55_GPS_DS_PIPE_FITTED) {
drivers/media/platform/arm/mali-c55/mali-c55-core.c
265
ret = media_create_pad_link(&mali_c55->isp.sd.entity,
drivers/media/platform/arm/mali-c55/mali-c55-core.c
267
&mali_c55->resizers[MALI_C55_RSZ_DS].sd.entity,
drivers/media/platform/arm/mali-c55/mali-c55-core.c
271
dev_err(mali_c55->dev,
drivers/media/platform/arm/mali-c55/mali-c55-core.c
276
ret = media_create_pad_link(&mali_c55->resizers[1].sd.entity,
drivers/media/platform/arm/mali-c55/mali-c55-core.c
278
&mali_c55->cap_devs[MALI_C55_CAP_DEV_DS].vdev.entity,
drivers/media/platform/arm/mali-c55/mali-c55-core.c
281
dev_err(mali_c55->dev,
drivers/media/platform/arm/mali-c55/mali-c55-core.c
287
ret = media_create_pad_link(&mali_c55->isp.sd.entity,
drivers/media/platform/arm/mali-c55/mali-c55-core.c
289
&mali_c55->stats.vdev.entity, 0,
drivers/media/platform/arm/mali-c55/mali-c55-core.c
292
dev_err(mali_c55->dev,
drivers/media/platform/arm/mali-c55/mali-c55-core.c
297
ret = media_create_pad_link(&mali_c55->params.vdev.entity, 0,
drivers/media/platform/arm/mali-c55/mali-c55-core.c
298
&mali_c55->isp.sd.entity,
drivers/media/platform/arm/mali-c55/mali-c55-core.c
302
dev_err(mali_c55->dev,
drivers/media/platform/arm/mali-c55/mali-c55-core.c
310
mali_c55_remove_links(mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
314
static void mali_c55_unregister_entities(struct mali_c55 *mali_c55)
drivers/media/platform/arm/mali-c55/mali-c55-core.c
316
mali_c55_remove_links(mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
317
mali_c55_unregister_tpg(mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
318
mali_c55_unregister_isp(mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
319
mali_c55_unregister_resizers(mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
320
mali_c55_unregister_capture_devs(mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
321
mali_c55_unregister_params(mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
322
mali_c55_unregister_stats(mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
325
static void mali_c55_swap_next_config(struct mali_c55 *mali_c55)
drivers/media/platform/arm/mali-c55/mali-c55-core.c
327
struct mali_c55_context *ctx = mali_c55_get_active_context(mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
329
mali_c55_config_write(ctx, mali_c55->next_config ?
drivers/media/platform/arm/mali-c55/mali-c55-core.c
333
mali_c55_update_bits(mali_c55, MALI_C55_REG_MCU_CONFIG,
drivers/media/platform/arm/mali-c55/mali-c55-core.c
335
MALI_C55_MCU_CONFIG_WRITE(mali_c55->next_config));
drivers/media/platform/arm/mali-c55/mali-c55-core.c
338
static int mali_c55_register_entities(struct mali_c55 *mali_c55)
drivers/media/platform/arm/mali-c55/mali-c55-core.c
342
ret = mali_c55_register_tpg(mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
346
ret = mali_c55_register_isp(mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
350
ret = mali_c55_register_resizers(mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
354
ret = mali_c55_register_capture_devs(mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
358
ret = mali_c55_register_params(mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
362
ret = mali_c55_register_stats(mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
366
ret = mali_c55_create_links(mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
373
mali_c55_unregister_entities(mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
382
struct mali_c55 *mali_c55 = container_of(notifier,
drivers/media/platform/arm/mali-c55/mali-c55-core.c
383
struct mali_c55, notifier);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
384
struct media_pad *pad = &mali_c55->isp.pads[MALI_C55_ISP_PAD_SINK_VIDEO];
drivers/media/platform/arm/mali-c55/mali-c55-core.c
395
dev_err(mali_c55->dev, "failed to create link for %s\n",
drivers/media/platform/arm/mali-c55/mali-c55-core.c
403
struct mali_c55 *mali_c55 = container_of(notifier,
drivers/media/platform/arm/mali-c55/mali-c55-core.c
404
struct mali_c55, notifier);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
406
return v4l2_device_register_subdev_nodes(&mali_c55->v4l2_dev);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
414
static int mali_c55_parse_endpoint(struct mali_c55 *mali_c55)
drivers/media/platform/arm/mali-c55/mali-c55-core.c
425
ep = fwnode_graph_get_endpoint_by_id(dev_fwnode(mali_c55->dev),
drivers/media/platform/arm/mali-c55/mali-c55-core.c
428
dev_warn(mali_c55->dev, "no local endpoint found\n");
drivers/media/platform/arm/mali-c55/mali-c55-core.c
432
asc = v4l2_async_nf_add_fwnode_remote(&mali_c55->notifier, ep,
drivers/media/platform/arm/mali-c55/mali-c55-core.c
436
dev_err(mali_c55->dev, "failed to add remote fwnode\n");
drivers/media/platform/arm/mali-c55/mali-c55-core.c
443
static int mali_c55_media_frameworks_init(struct mali_c55 *mali_c55)
drivers/media/platform/arm/mali-c55/mali-c55-core.c
447
strscpy(mali_c55->media_dev.model, "ARM Mali-C55 ISP",
drivers/media/platform/arm/mali-c55/mali-c55-core.c
448
sizeof(mali_c55->media_dev.model));
drivers/media/platform/arm/mali-c55/mali-c55-core.c
450
media_device_init(&mali_c55->media_dev);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
452
ret = media_device_register(&mali_c55->media_dev);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
456
mali_c55->v4l2_dev.mdev = &mali_c55->media_dev;
drivers/media/platform/arm/mali-c55/mali-c55-core.c
457
ret = v4l2_device_register(mali_c55->dev, &mali_c55->v4l2_dev);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
459
dev_err(mali_c55->dev, "failed to register V4L2 device\n");
drivers/media/platform/arm/mali-c55/mali-c55-core.c
463
mali_c55->notifier.ops = &mali_c55_notifier_ops;
drivers/media/platform/arm/mali-c55/mali-c55-core.c
464
v4l2_async_nf_init(&mali_c55->notifier, &mali_c55->v4l2_dev);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
466
ret = mali_c55_register_entities(mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
468
dev_err(mali_c55->dev, "failed to register entities\n");
drivers/media/platform/arm/mali-c55/mali-c55-core.c
472
ret = mali_c55_parse_endpoint(mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
476
ret = v4l2_async_nf_register(&mali_c55->notifier);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
478
dev_err(mali_c55->dev, "failed to register notifier\n");
drivers/media/platform/arm/mali-c55/mali-c55-core.c
485
mali_c55_unregister_entities(mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
487
v4l2_async_nf_cleanup(&mali_c55->notifier);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
488
v4l2_device_unregister(&mali_c55->v4l2_dev);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
490
media_device_unregister(&mali_c55->media_dev);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
492
media_device_cleanup(&mali_c55->media_dev);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
497
static void mali_c55_media_frameworks_deinit(struct mali_c55 *mali_c55)
drivers/media/platform/arm/mali-c55/mali-c55-core.c
499
v4l2_async_nf_unregister(&mali_c55->notifier);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
500
mali_c55_unregister_entities(mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
501
v4l2_async_nf_cleanup(&mali_c55->notifier);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
502
v4l2_device_unregister(&mali_c55->v4l2_dev);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
503
media_device_unregister(&mali_c55->media_dev);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
504
media_device_cleanup(&mali_c55->media_dev);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
507
bool mali_c55_pipeline_ready(struct mali_c55 *mali_c55)
drivers/media/platform/arm/mali-c55/mali-c55-core.c
509
struct mali_c55_cap_dev *fr = &mali_c55->cap_devs[MALI_C55_CAP_DEV_FR];
drivers/media/platform/arm/mali-c55/mali-c55-core.c
510
struct mali_c55_cap_dev *ds = &mali_c55->cap_devs[MALI_C55_CAP_DEV_DS];
drivers/media/platform/arm/mali-c55/mali-c55-core.c
511
struct mali_c55_params *params = &mali_c55->params;
drivers/media/platform/arm/mali-c55/mali-c55-core.c
512
struct mali_c55_stats *stats = &mali_c55->stats;
drivers/media/platform/arm/mali-c55/mali-c55-core.c
515
(!(mali_c55->capabilities & MALI_C55_GPS_DS_PIPE_FITTED) ||
drivers/media/platform/arm/mali-c55/mali-c55-core.c
521
static int mali_c55_check_hwcfg(struct mali_c55 *mali_c55)
drivers/media/platform/arm/mali-c55/mali-c55-core.c
525
product = mali_c55_read(mali_c55, MALI_C55_REG_PRODUCT);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
526
version = mali_c55_read(mali_c55, MALI_C55_REG_VERSION);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
527
revision = mali_c55_read(mali_c55, MALI_C55_REG_REVISION);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
529
mali_c55->media_dev.hw_revision = version;
drivers/media/platform/arm/mali-c55/mali-c55-core.c
531
dev_info(mali_c55->dev, "Detected Mali-C55 ISP %u.%u.%u\n",
drivers/media/platform/arm/mali-c55/mali-c55-core.c
534
capabilities = mali_c55_read(mali_c55,
drivers/media/platform/arm/mali-c55/mali-c55-core.c
546
dev_err(mali_c55->dev, "Pong config space not fitted.\n");
drivers/media/platform/arm/mali-c55/mali-c55-core.c
550
mali_c55->capabilities = capabilities & 0xffff;
drivers/media/platform/arm/mali-c55/mali-c55-core.c
558
struct mali_c55 *mali_c55 = dev_get_drvdata(dev);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
563
interrupt_status = mali_c55_read(mali_c55,
drivers/media/platform/arm/mali-c55/mali-c55-core.c
568
mali_c55_write(mali_c55, MALI_C55_REG_INTERRUPT_CLEAR_VECTOR,
drivers/media/platform/arm/mali-c55/mali-c55-core.c
570
mali_c55_write(mali_c55, MALI_C55_REG_INTERRUPT_CLEAR, 1);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
571
mali_c55_write(mali_c55, MALI_C55_REG_INTERRUPT_CLEAR, 0);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
576
mali_c55_isp_queue_event_sof(mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
578
mali_c55_set_next_buffer(&mali_c55->cap_devs[MALI_C55_CAP_DEV_FR]);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
579
if (mali_c55->capabilities & MALI_C55_GPS_DS_PIPE_FITTED)
drivers/media/platform/arm/mali-c55/mali-c55-core.c
580
mali_c55_set_next_buffer(&mali_c55->cap_devs[MALI_C55_CAP_DEV_DS]);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
589
curr_config = mali_c55_read(mali_c55,
drivers/media/platform/arm/mali-c55/mali-c55-core.c
593
mali_c55->next_config = curr_config ^ 1;
drivers/media/platform/arm/mali-c55/mali-c55-core.c
601
mali_c55_params_write_config(mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
603
mali_c55_stats_fill_buffer(mali_c55,
drivers/media/platform/arm/mali-c55/mali-c55-core.c
604
mali_c55->next_config ^ 1);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
606
mali_c55_swap_next_config(mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
616
mali_c55_set_plane_done(&mali_c55->cap_devs[MALI_C55_CAP_DEV_FR],
drivers/media/platform/arm/mali-c55/mali-c55-core.c
620
mali_c55_set_plane_done(&mali_c55->cap_devs[MALI_C55_CAP_DEV_FR],
drivers/media/platform/arm/mali-c55/mali-c55-core.c
624
mali_c55_set_plane_done(&mali_c55->cap_devs[MALI_C55_CAP_DEV_DS],
drivers/media/platform/arm/mali-c55/mali-c55-core.c
628
mali_c55_set_plane_done(&mali_c55->cap_devs[MALI_C55_CAP_DEV_DS],
drivers/media/platform/arm/mali-c55/mali-c55-core.c
645
static int mali_c55_init_context(struct mali_c55 *mali_c55,
drivers/media/platform/arm/mali-c55/mali-c55-core.c
648
struct mali_c55_context *ctx = &mali_c55->context;
drivers/media/platform/arm/mali-c55/mali-c55-core.c
651
ctx->mali_c55 = mali_c55;
drivers/media/platform/arm/mali-c55/mali-c55-core.c
663
mali_c55->base + config_space_addrs[MALI_C55_CONFIG_PING],
drivers/media/platform/arm/mali-c55/mali-c55-core.c
672
mali_c55_ctx_update_bits(mali_c55, MALI_C55_REG_BYPASS_1,
drivers/media/platform/arm/mali-c55/mali-c55-core.c
675
mali_c55_ctx_update_bits(mali_c55, MALI_C55_REG_BYPASS_3,
drivers/media/platform/arm/mali-c55/mali-c55-core.c
680
mali_c55_ctx_write(mali_c55, MALI_C55_REG_BYPASS_2,
drivers/media/platform/arm/mali-c55/mali-c55-core.c
684
mali_c55_ctx_write(mali_c55, MALI_C55_REG_TEMPER_DMA_IO, 0x0);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
687
mali_c55_ctx_write(mali_c55, MALI_C55_REG_BYPASS_4,
drivers/media/platform/arm/mali-c55/mali-c55-core.c
691
mali_c55_ctx_update_bits(mali_c55, MALI_C55_REG_SINTER_CONFIG,
drivers/media/platform/arm/mali-c55/mali-c55-core.c
695
mali_c55_ctx_write(mali_c55, MALI_C55_REG_FR_GAMMA_RGB_ENABLE, 0);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
696
mali_c55_ctx_write(mali_c55, MALI_C55_REG_DS_GAMMA_RGB_ENABLE, 0);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
699
mali_c55_ctx_write(mali_c55, MALI_C55_REG_CCM_ENABLE, 0);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
704
static void __mali_c55_power_off(struct mali_c55 *mali_c55)
drivers/media/platform/arm/mali-c55/mali-c55-core.c
706
reset_control_bulk_assert(ARRAY_SIZE(mali_c55->resets), mali_c55->resets);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
707
clk_bulk_disable_unprepare(ARRAY_SIZE(mali_c55->clks), mali_c55->clks);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
712
struct mali_c55 *mali_c55 = dev_get_drvdata(dev);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
714
if (irq_has_action(mali_c55->irqnum))
drivers/media/platform/arm/mali-c55/mali-c55-core.c
715
free_irq(mali_c55->irqnum, dev);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
716
__mali_c55_power_off(mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
721
static int __mali_c55_power_on(struct mali_c55 *mali_c55)
drivers/media/platform/arm/mali-c55/mali-c55-core.c
726
ret = clk_bulk_prepare_enable(ARRAY_SIZE(mali_c55->clks),
drivers/media/platform/arm/mali-c55/mali-c55-core.c
727
mali_c55->clks);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
729
dev_err(mali_c55->dev, "failed to enable clocks\n");
drivers/media/platform/arm/mali-c55/mali-c55-core.c
733
ret = reset_control_bulk_deassert(ARRAY_SIZE(mali_c55->resets),
drivers/media/platform/arm/mali-c55/mali-c55-core.c
734
mali_c55->resets);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
736
dev_err(mali_c55->dev, "failed to deassert resets\n");
drivers/media/platform/arm/mali-c55/mali-c55-core.c
741
mali_c55_update_bits(mali_c55, MALI_C55_REG_MCU_CONFIG,
drivers/media/platform/arm/mali-c55/mali-c55-core.c
748
mali_c55_write(mali_c55, MALI_C55_REG_INTERRUPT_MASK_VECTOR,
drivers/media/platform/arm/mali-c55/mali-c55-core.c
750
mali_c55_write(mali_c55, MALI_C55_REG_INTERRUPT_CLEAR_VECTOR,
drivers/media/platform/arm/mali-c55/mali-c55-core.c
752
mali_c55_write(mali_c55, MALI_C55_REG_INTERRUPT_CLEAR, 0x01);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
753
mali_c55_write(mali_c55, MALI_C55_REG_INTERRUPT_CLEAR, 0x00);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
755
mali_c55_update_bits(mali_c55, MALI_C55_REG_INTERRUPT_MASK_VECTOR,
drivers/media/platform/arm/mali-c55/mali-c55-core.c
765
mali_c55_write(mali_c55, MALI_C55_REG_INPUT_MODE_REQUEST,
drivers/media/platform/arm/mali-c55/mali-c55-core.c
767
readl_poll_timeout(mali_c55->base + MALI_C55_REG_MODE_STATUS,
drivers/media/platform/arm/mali-c55/mali-c55-core.c
775
struct mali_c55 *mali_c55 = dev_get_drvdata(dev);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
778
ret = __mali_c55_power_on(mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
788
ret = request_threaded_irq(mali_c55->irqnum, NULL, mali_c55_isr,
drivers/media/platform/arm/mali-c55/mali-c55-core.c
791
__mali_c55_power_off(mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
808
struct mali_c55 *mali_c55;
drivers/media/platform/arm/mali-c55/mali-c55-core.c
812
mali_c55 = devm_kzalloc(dev, sizeof(*mali_c55), GFP_KERNEL);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
813
if (!mali_c55)
drivers/media/platform/arm/mali-c55/mali-c55-core.c
816
mali_c55->dev = dev;
drivers/media/platform/arm/mali-c55/mali-c55-core.c
817
platform_set_drvdata(pdev, mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
819
mali_c55->base = devm_platform_get_and_ioremap_resource(pdev, 0,
drivers/media/platform/arm/mali-c55/mali-c55-core.c
821
if (IS_ERR(mali_c55->base))
drivers/media/platform/arm/mali-c55/mali-c55-core.c
822
return dev_err_probe(dev, PTR_ERR(mali_c55->base),
drivers/media/platform/arm/mali-c55/mali-c55-core.c
826
mali_c55->clks[i].id = mali_c55_clk_names[i];
drivers/media/platform/arm/mali-c55/mali-c55-core.c
828
ret = devm_clk_bulk_get(dev, ARRAY_SIZE(mali_c55->clks), mali_c55->clks);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
833
mali_c55->resets[i].id = mali_c55_reset_names[i];
drivers/media/platform/arm/mali-c55/mali-c55-core.c
836
ARRAY_SIZE(mali_c55_reset_names), mali_c55->resets);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
843
ret = __mali_c55_power_on(mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
847
ret = mali_c55_check_hwcfg(mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
851
ret = mali_c55_init_context(mali_c55, res);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
855
mali_c55->media_dev.dev = dev;
drivers/media/platform/arm/mali-c55/mali-c55-core.c
862
ret = mali_c55_media_frameworks_init(mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
868
mali_c55->irqnum = platform_get_irq(pdev, 0);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
869
if (mali_c55->irqnum < 0) {
drivers/media/platform/arm/mali-c55/mali-c55-core.c
870
ret = mali_c55->irqnum;
drivers/media/platform/arm/mali-c55/mali-c55-core.c
878
mali_c55_media_frameworks_deinit(mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
881
kfree(mali_c55->context.registers);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
883
__mali_c55_power_off(mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
890
struct mali_c55 *mali_c55 = platform_get_drvdata(pdev);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
892
kfree(mali_c55->context.registers);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
893
mali_c55_media_frameworks_deinit(mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-core.c
99
void mali_c55_write(struct mali_c55 *mali_c55, unsigned int addr, u32 val)
drivers/media/platform/arm/mali-c55/mali-c55-isp.c
101
static void mali_c55_isp_stop(struct mali_c55 *mali_c55)
drivers/media/platform/arm/mali-c55/mali-c55-isp.c
105
mali_c55_write(mali_c55, MALI_C55_REG_INPUT_MODE_REQUEST,
drivers/media/platform/arm/mali-c55/mali-c55-isp.c
107
readl_poll_timeout(mali_c55->base + MALI_C55_REG_MODE_STATUS,
drivers/media/platform/arm/mali-c55/mali-c55-isp.c
111
static int mali_c55_isp_start(struct mali_c55 *mali_c55,
drivers/media/platform/arm/mali-c55/mali-c55-isp.c
114
struct mali_c55_context *ctx = mali_c55_get_active_context(mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-isp.c
121
mali_c55_update_bits(mali_c55, MALI_C55_REG_MCU_CONFIG,
drivers/media/platform/arm/mali-c55/mali-c55-isp.c
131
mali_c55_write(mali_c55, MALI_C55_REG_HC_START,
drivers/media/platform/arm/mali-c55/mali-c55-isp.c
133
mali_c55_write(mali_c55, MALI_C55_REG_HC_SIZE,
drivers/media/platform/arm/mali-c55/mali-c55-isp.c
135
mali_c55_write(mali_c55, MALI_C55_REG_VC_START_SIZE,
drivers/media/platform/arm/mali-c55/mali-c55-isp.c
138
mali_c55_ctx_update_bits(mali_c55, MALI_C55_REG_BASE_ADDR,
drivers/media/platform/arm/mali-c55/mali-c55-isp.c
140
mali_c55_ctx_update_bits(mali_c55, MALI_C55_REG_BASE_ADDR,
drivers/media/platform/arm/mali-c55/mali-c55-isp.c
143
mali_c55_ctx_update_bits(mali_c55, MALI_C55_REG_BAYER_ORDER,
drivers/media/platform/arm/mali-c55/mali-c55-isp.c
145
mali_c55_ctx_update_bits(mali_c55, MALI_C55_REG_INPUT_WIDTH,
drivers/media/platform/arm/mali-c55/mali-c55-isp.c
149
mali_c55_ctx_update_bits(mali_c55, MALI_C55_REG_ISP_RAW_BYPASS,
drivers/media/platform/arm/mali-c55/mali-c55-isp.c
154
mali_c55_params_write_config(mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-isp.c
157
dev_err(mali_c55->dev, "failed to write ISP config\n");
drivers/media/platform/arm/mali-c55/mali-c55-isp.c
161
mali_c55_write(mali_c55, MALI_C55_REG_INPUT_MODE_REQUEST,
drivers/media/platform/arm/mali-c55/mali-c55-isp.c
164
ret = readl_poll_timeout(mali_c55->base + MALI_C55_REG_MODE_STATUS, val,
drivers/media/platform/arm/mali-c55/mali-c55-isp.c
167
mali_c55_isp_stop(mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-isp.c
168
dev_err(mali_c55->dev, "timeout starting ISP\n");
drivers/media/platform/arm/mali-c55/mali-c55-isp.c
350
struct mali_c55 *mali_c55 = isp->mali_c55;
drivers/media/platform/arm/mali-c55/mali-c55-isp.c
366
ret = mali_c55_isp_start(mali_c55, state);
drivers/media/platform/arm/mali-c55/mali-c55-isp.c
368
dev_err(mali_c55->dev, "Failed to start ISP\n");
drivers/media/platform/arm/mali-c55/mali-c55-isp.c
379
dev_err(mali_c55->dev, "Failed to start ISP source\n");
drivers/media/platform/arm/mali-c55/mali-c55-isp.c
380
mali_c55_isp_stop(mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-isp.c
392
struct mali_c55 *mali_c55 = isp->mali_c55;
drivers/media/platform/arm/mali-c55/mali-c55-isp.c
402
mali_c55_isp_stop(mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-isp.c
419
void mali_c55_isp_queue_event_sof(struct mali_c55 *mali_c55)
drivers/media/platform/arm/mali-c55/mali-c55-isp.c
425
event.u.frame_sync.frame_sequence = mali_c55->isp.frame_sequence;
drivers/media/platform/arm/mali-c55/mali-c55-isp.c
426
v4l2_event_queue(mali_c55->isp.sd.devnode, &event);
drivers/media/platform/arm/mali-c55/mali-c55-isp.c
570
static int mali_c55_isp_init_controls(struct mali_c55 *mali_c55)
drivers/media/platform/arm/mali-c55/mali-c55-isp.c
572
struct v4l2_ctrl_handler *handler = &mali_c55->isp.handler;
drivers/media/platform/arm/mali-c55/mali-c55-isp.c
580
mali_c55_isp_v4l2_custom_ctrls[0].def = mali_c55->capabilities;
drivers/media/platform/arm/mali-c55/mali-c55-isp.c
589
dev_err(mali_c55->dev, "failed to register capabilities control\n");
drivers/media/platform/arm/mali-c55/mali-c55-isp.c
595
mali_c55->isp.sd.ctrl_handler = handler;
drivers/media/platform/arm/mali-c55/mali-c55-isp.c
600
int mali_c55_register_isp(struct mali_c55 *mali_c55)
drivers/media/platform/arm/mali-c55/mali-c55-isp.c
602
struct mali_c55_isp *isp = &mali_c55->isp;
drivers/media/platform/arm/mali-c55/mali-c55-isp.c
606
isp->mali_c55 = mali_c55;
drivers/media/platform/arm/mali-c55/mali-c55-isp.c
627
ret = mali_c55_isp_init_controls(mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-isp.c
635
ret = v4l2_device_register_subdev(&mali_c55->v4l2_dev, sd);
drivers/media/platform/arm/mali-c55/mali-c55-isp.c
649
isp->mali_c55 = NULL;
drivers/media/platform/arm/mali-c55/mali-c55-isp.c
654
void mali_c55_unregister_isp(struct mali_c55 *mali_c55)
drivers/media/platform/arm/mali-c55/mali-c55-isp.c
656
struct mali_c55_isp *isp = &mali_c55->isp;
drivers/media/platform/arm/mali-c55/mali-c55-isp.c
658
if (!isp->mali_c55)
drivers/media/platform/arm/mali-c55/mali-c55-params.c
103
mali_c55_ctx_update_bits(mali_c55, MALI_C55_REG_DIGITAL_GAIN_OFFSET,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
107
mali_c55_ctx_update_bits(mali_c55, MALI_C55_REG_BYPASS_3,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
112
static void mali_c55_params_aexp_hist(struct mali_c55 *mali_c55,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
133
mali_c55_ctx_update_bits(mali_c55, MALI_C55_REG_METERING_CONFIG,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
138
mali_c55_ctx_update_bits(mali_c55, MALI_C55_REG_METERING_CONFIG,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
141
mali_c55_ctx_update_bits(mali_c55, base + MALI_C55_AEXP_HIST_SKIP_OFFSET,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
143
mali_c55_ctx_update_bits(mali_c55, base + MALI_C55_AEXP_HIST_SKIP_OFFSET,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
146
mali_c55_ctx_update_bits(mali_c55, base + MALI_C55_AEXP_HIST_SKIP_OFFSET,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
149
mali_c55_ctx_update_bits(mali_c55, base + MALI_C55_AEXP_HIST_SKIP_OFFSET,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
153
mali_c55_ctx_update_bits(mali_c55, base + MALI_C55_AEXP_HIST_SCALE_OFFSET,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
156
mali_c55_ctx_update_bits(mali_c55, base + MALI_C55_AEXP_HIST_SCALE_OFFSET,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
160
mali_c55_ctx_update_bits(mali_c55, base + MALI_C55_AEXP_HIST_PLANE_MODE_OFFSET,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
165
mali_c55_ctx_update_bits(mali_c55, MALI_C55_REG_METERING_CONFIG,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
171
mali_c55_params_aexp_hist_weights(struct mali_c55 *mali_c55,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
186
mali_c55_ctx_update_bits(mali_c55,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
190
mali_c55_ctx_update_bits(mali_c55,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
210
mali_c55_ctx_write(mali_c55, addr, val);
drivers/media/platform/arm/mali-c55/mali-c55-params.c
217
static void mali_c55_params_digital_gain(struct mali_c55 *mali_c55,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
232
mali_c55_ctx_update_bits(mali_c55, MALI_C55_REG_DIGITAL_GAIN,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
237
static void mali_c55_params_awb_gains(struct mali_c55 *mali_c55,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
270
mali_c55_ctx_update_bits(mali_c55, addr1, MALI_C55_AWB_GAIN00_MASK,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
272
mali_c55_ctx_update_bits(mali_c55, addr1, MALI_C55_AWB_GAIN01_MASK,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
274
mali_c55_ctx_update_bits(mali_c55, addr2, MALI_C55_AWB_GAIN10_MASK,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
276
mali_c55_ctx_update_bits(mali_c55, addr2, MALI_C55_AWB_GAIN11_MASK,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
280
static void mali_c55_params_awb_config(struct mali_c55 *mali_c55,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
288
mali_c55_ctx_update_bits(mali_c55, MALI_C55_REG_METERING_CONFIG,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
294
mali_c55_ctx_update_bits(mali_c55, MALI_C55_REG_METERING_CONFIG,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
297
mali_c55_ctx_update_bits(mali_c55, MALI_C55_REG_AWB_STATS_MODE,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
300
mali_c55_ctx_update_bits(mali_c55, MALI_C55_REG_AWB_WHITE_LEVEL,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
302
mali_c55_ctx_update_bits(mali_c55, MALI_C55_REG_AWB_BLACK_LEVEL,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
305
mali_c55_ctx_update_bits(mali_c55, MALI_C55_REG_AWB_CR_MAX,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
307
mali_c55_ctx_update_bits(mali_c55, MALI_C55_REG_AWB_CR_MIN,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
309
mali_c55_ctx_update_bits(mali_c55, MALI_C55_REG_AWB_CB_MAX,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
311
mali_c55_ctx_update_bits(mali_c55, MALI_C55_REG_AWB_CB_MIN,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
314
mali_c55_ctx_update_bits(mali_c55, MALI_C55_REG_AWB_NODES_USED,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
317
mali_c55_ctx_update_bits(mali_c55, MALI_C55_REG_AWB_NODES_USED,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
321
mali_c55_ctx_update_bits(mali_c55, MALI_C55_REG_AWB_CR_HIGH,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
323
mali_c55_ctx_update_bits(mali_c55, MALI_C55_REG_AWB_CR_LOW,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
325
mali_c55_ctx_update_bits(mali_c55, MALI_C55_REG_AWB_CB_HIGH,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
327
mali_c55_ctx_update_bits(mali_c55, MALI_C55_REG_AWB_CB_LOW,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
330
mali_c55_ctx_update_bits(mali_c55, MALI_C55_REG_METERING_CONFIG,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
335
static void mali_c55_params_lsc_config(struct mali_c55 *mali_c55,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
345
mali_c55_ctx_update_bits(mali_c55, MALI_C55_REG_MESH_SHADING_CONFIG,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
351
mali_c55_ctx_update_bits(mali_c55, MALI_C55_REG_MESH_SHADING_CONFIG,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
353
mali_c55_ctx_update_bits(mali_c55, MALI_C55_REG_MESH_SHADING_CONFIG,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
356
mali_c55_ctx_update_bits(mali_c55, MALI_C55_REG_MESH_SHADING_CONFIG,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
359
mali_c55_ctx_update_bits(mali_c55, MALI_C55_REG_MESH_SHADING_CONFIG,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
362
mali_c55_ctx_update_bits(mali_c55, MALI_C55_REG_MESH_SHADING_CONFIG,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
365
mali_c55_ctx_update_bits(mali_c55, MALI_C55_REG_MESH_SHADING_CONFIG,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
368
mali_c55_ctx_update_bits(mali_c55, MALI_C55_REG_MESH_SHADING_CONFIG,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
371
mali_c55_ctx_update_bits(mali_c55, MALI_C55_REG_MESH_SHADING_CONFIG,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
377
mali_c55_ctx_write(mali_c55, addr, params->mesh[i]);
drivers/media/platform/arm/mali-c55/mali-c55-params.c
381
static void mali_c55_params_lsc_selection(struct mali_c55 *mali_c55,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
391
mali_c55_ctx_update_bits(mali_c55, MALI_C55_REG_MESH_SHADING_ALPHA_BANK,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
394
mali_c55_ctx_update_bits(mali_c55, MALI_C55_REG_MESH_SHADING_ALPHA_BANK,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
397
mali_c55_ctx_update_bits(mali_c55, MALI_C55_REG_MESH_SHADING_ALPHA_BANK,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
401
mali_c55_ctx_update_bits(mali_c55, MALI_C55_REG_MESH_SHADING_ALPHA,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
404
mali_c55_ctx_update_bits(mali_c55, MALI_C55_REG_MESH_SHADING_ALPHA,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
407
mali_c55_ctx_update_bits(mali_c55, MALI_C55_REG_MESH_SHADING_ALPHA,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
411
mali_c55_ctx_update_bits(mali_c55,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
582
struct mali_c55 *mali_c55 = params->mali_c55;
drivers/media/platform/arm/mali-c55/mali-c55-params.c
585
ret = v4l2_isp_params_validate_buffer_size(mali_c55->dev, vb,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
598
return v4l2_isp_params_validate_buffer(mali_c55->dev, vb, buf->config,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
631
struct mali_c55 *mali_c55 = params->mali_c55;
drivers/media/platform/arm/mali-c55/mali-c55-params.c
634
ret = pm_runtime_resume_and_get(mali_c55->dev);
drivers/media/platform/arm/mali-c55/mali-c55-params.c
642
if (mali_c55_pipeline_ready(mali_c55)) {
drivers/media/platform/arm/mali-c55/mali-c55-params.c
643
ret = v4l2_subdev_enable_streams(&mali_c55->isp.sd,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
65
typedef void (*mali_c55_params_handler)(struct mali_c55 *mali_c55,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
655
pm_runtime_put_autosuspend(mali_c55->dev);
drivers/media/platform/arm/mali-c55/mali-c55-params.c
665
struct mali_c55 *mali_c55 = params->mali_c55;
drivers/media/platform/arm/mali-c55/mali-c55-params.c
666
struct mali_c55_isp *isp = &mali_c55->isp;
drivers/media/platform/arm/mali-c55/mali-c55-params.c
668
if (mali_c55_pipeline_ready(mali_c55)) {
drivers/media/platform/arm/mali-c55/mali-c55-params.c
677
pm_runtime_put_autosuspend(params->mali_c55->dev);
drivers/media/platform/arm/mali-c55/mali-c55-params.c
690
void mali_c55_params_write_config(struct mali_c55 *mali_c55)
drivers/media/platform/arm/mali-c55/mali-c55-params.c
692
struct mali_c55_params *params = &mali_c55->params;
drivers/media/platform/arm/mali-c55/mali-c55-params.c
709
buf->vb.sequence = mali_c55->isp.frame_sequence;
drivers/media/platform/arm/mali-c55/mali-c55-params.c
71
static void mali_c55_params_sensor_offs(struct mali_c55 *mali_c55,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
727
handler(mali_c55, block);
drivers/media/platform/arm/mali-c55/mali-c55-params.c
735
void mali_c55_unregister_params(struct mali_c55 *mali_c55)
drivers/media/platform/arm/mali-c55/mali-c55-params.c
737
struct mali_c55_params *params = &mali_c55->params;
drivers/media/platform/arm/mali-c55/mali-c55-params.c
747
int mali_c55_register_params(struct mali_c55 *mali_c55)
drivers/media/platform/arm/mali-c55/mali-c55-params.c
749
struct mali_c55_params *params = &mali_c55->params;
drivers/media/platform/arm/mali-c55/mali-c55-params.c
772
vb2q->dev = mali_c55->dev;
drivers/media/platform/arm/mali-c55/mali-c55-params.c
776
dev_err(mali_c55->dev, "params vb2 queue init failed\n");
drivers/media/platform/arm/mali-c55/mali-c55-params.c
786
vdev->v4l2_dev = &mali_c55->v4l2_dev;
drivers/media/platform/arm/mali-c55/mali-c55-params.c
795
dev_err(mali_c55->dev,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
80
mali_c55_ctx_update_bits(mali_c55, MALI_C55_REG_BYPASS_3,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
800
params->mali_c55 = mali_c55;
drivers/media/platform/arm/mali-c55/mali-c55-params.c
89
mali_c55_ctx_write(mali_c55, MALI_C55_REG_SENSOR_OFF_PRE_SHA_00,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
91
mali_c55_ctx_write(mali_c55, MALI_C55_REG_SENSOR_OFF_PRE_SHA_01,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
93
mali_c55_ctx_write(mali_c55, MALI_C55_REG_SENSOR_OFF_PRE_SHA_10,
drivers/media/platform/arm/mali-c55/mali-c55-params.c
95
mali_c55_ctx_write(mali_c55, MALI_C55_REG_SENSOR_OFF_PRE_SHA_11,
drivers/media/platform/arm/mali-c55/mali-c55-resizer.c
1004
mali_c55_ctx_update_bits(mali_c55, MALI_C55_REG_ISP_RAW_BYPASS,
drivers/media/platform/arm/mali-c55/mali-c55-resizer.c
1060
static int mali_c55_register_resizer(struct mali_c55 *mali_c55,
drivers/media/platform/arm/mali-c55/mali-c55-resizer.c
1063
struct mali_c55_resizer *rsz = &mali_c55->resizers[index];
drivers/media/platform/arm/mali-c55/mali-c55-resizer.c
1103
ret = v4l2_device_register_subdev(&mali_c55->v4l2_dev, sd);
drivers/media/platform/arm/mali-c55/mali-c55-resizer.c
1107
rsz->cap_dev = &mali_c55->cap_devs[index];
drivers/media/platform/arm/mali-c55/mali-c55-resizer.c
1108
rsz->mali_c55 = mali_c55;
drivers/media/platform/arm/mali-c55/mali-c55-resizer.c
1122
if (!rsz->mali_c55)
drivers/media/platform/arm/mali-c55/mali-c55-resizer.c
1130
int mali_c55_register_resizers(struct mali_c55 *mali_c55)
drivers/media/platform/arm/mali-c55/mali-c55-resizer.c
1134
ret = mali_c55_register_resizer(mali_c55, MALI_C55_RSZ_FR);
drivers/media/platform/arm/mali-c55/mali-c55-resizer.c
1138
if (mali_c55->capabilities & MALI_C55_GPS_DS_PIPE_FITTED) {
drivers/media/platform/arm/mali-c55/mali-c55-resizer.c
1139
ret = mali_c55_register_resizer(mali_c55, MALI_C55_RSZ_DS);
drivers/media/platform/arm/mali-c55/mali-c55-resizer.c
1147
mali_c55_unregister_resizer(&mali_c55->resizers[MALI_C55_RSZ_FR]);
drivers/media/platform/arm/mali-c55/mali-c55-resizer.c
1152
void mali_c55_unregister_resizers(struct mali_c55 *mali_c55)
drivers/media/platform/arm/mali-c55/mali-c55-resizer.c
1155
mali_c55_unregister_resizer(&mali_c55->resizers[i]);
drivers/media/platform/arm/mali-c55/mali-c55-resizer.c
336
static unsigned int mali_c55_rsz_calculate_bank(struct mali_c55 *mali_c55,
drivers/media/platform/arm/mali-c55/mali-c55-resizer.c
357
struct mali_c55 *mali_c55 = rsz->mali_c55;
drivers/media/platform/arm/mali-c55/mali-c55-resizer.c
367
mali_c55_write(mali_c55, haddr,
drivers/media/platform/arm/mali-c55/mali-c55-resizer.c
369
mali_c55_write(mali_c55, vaddr,
drivers/media/platform/arm/mali-c55/mali-c55-resizer.c
409
struct mali_c55 *mali_c55 = rsz->mali_c55;
drivers/media/platform/arm/mali-c55/mali-c55-resizer.c
447
h_bank = mali_c55_rsz_calculate_bank(mali_c55, crop->width,
drivers/media/platform/arm/mali-c55/mali-c55-resizer.c
452
v_bank = mali_c55_rsz_calculate_bank(mali_c55, crop->height,
drivers/media/platform/arm/mali-c55/mali-c55-resizer.c
463
struct mali_c55 *mali_c55 = rsz->mali_c55;
drivers/media/platform/arm/mali-c55/mali-c55-resizer.c
470
mali_c55_ctx_update_bits(mali_c55, rsz->id == MALI_C55_RSZ_FR ?
drivers/media/platform/arm/mali-c55/mali-c55-resizer.c
527
dev_dbg(rsz->mali_c55->dev,
drivers/media/platform/arm/mali-c55/mali-c55-resizer.c
535
dev_dbg(rsz->mali_c55->dev, "One route has to be active");
drivers/media/platform/arm/mali-c55/mali-c55-resizer.c
541
dev_dbg(rsz->mali_c55->dev, "Failed to set routing\n");
drivers/media/platform/arm/mali-c55/mali-c55-resizer.c
915
struct mali_c55 *mali_c55 = rsz->mali_c55;
drivers/media/platform/arm/mali-c55/mali-c55-resizer.c
932
!(mali_c55->capabilities & MALI_C55_GPS_FRSCALER_FITTED))
drivers/media/platform/arm/mali-c55/mali-c55-resizer.c
991
struct mali_c55 *mali_c55 = rsz->mali_c55;
drivers/media/platform/arm/mali-c55/mali-c55-resizer.c
997
mali_c55_ctx_update_bits(mali_c55, MALI_C55_REG_ISP_RAW_BYPASS,
drivers/media/platform/arm/mali-c55/mali-c55-stats.c
146
struct mali_c55 *mali_c55 = stats->mali_c55;
drivers/media/platform/arm/mali-c55/mali-c55-stats.c
149
ret = pm_runtime_resume_and_get(mali_c55->dev);
drivers/media/platform/arm/mali-c55/mali-c55-stats.c
157
if (mali_c55_pipeline_ready(mali_c55)) {
drivers/media/platform/arm/mali-c55/mali-c55-stats.c
158
ret = v4l2_subdev_enable_streams(&mali_c55->isp.sd,
drivers/media/platform/arm/mali-c55/mali-c55-stats.c
170
pm_runtime_put_autosuspend(mali_c55->dev);
drivers/media/platform/arm/mali-c55/mali-c55-stats.c
180
struct mali_c55 *mali_c55 = stats->mali_c55;
drivers/media/platform/arm/mali-c55/mali-c55-stats.c
181
struct mali_c55_isp *isp = &mali_c55->isp;
drivers/media/platform/arm/mali-c55/mali-c55-stats.c
183
if (mali_c55_pipeline_ready(mali_c55)) {
drivers/media/platform/arm/mali-c55/mali-c55-stats.c
193
pm_runtime_put_autosuspend(stats->mali_c55->dev);
drivers/media/platform/arm/mali-c55/mali-c55-stats.c
207
struct mali_c55 *mali_c55 = stats->mali_c55;
drivers/media/platform/arm/mali-c55/mali-c55-stats.c
212
src = mali_c55->base + MALI_C55_REG_1024BIN_HIST;
drivers/media/platform/arm/mali-c55/mali-c55-stats.c
216
src = mali_c55->base + metering_space_addrs[cfg_space];
drivers/media/platform/arm/mali-c55/mali-c55-stats.c
222
void mali_c55_stats_fill_buffer(struct mali_c55 *mali_c55,
drivers/media/platform/arm/mali-c55/mali-c55-stats.c
225
struct mali_c55_stats *stats = &mali_c55->stats;
drivers/media/platform/arm/mali-c55/mali-c55-stats.c
239
buf->vb.sequence = mali_c55->isp.frame_sequence;
drivers/media/platform/arm/mali-c55/mali-c55-stats.c
246
void mali_c55_unregister_stats(struct mali_c55 *mali_c55)
drivers/media/platform/arm/mali-c55/mali-c55-stats.c
248
struct mali_c55_stats *stats = &mali_c55->stats;
drivers/media/platform/arm/mali-c55/mali-c55-stats.c
259
int mali_c55_register_stats(struct mali_c55 *mali_c55)
drivers/media/platform/arm/mali-c55/mali-c55-stats.c
261
struct mali_c55_stats *stats = &mali_c55->stats;
drivers/media/platform/arm/mali-c55/mali-c55-stats.c
284
vb2q->dev = mali_c55->dev;
drivers/media/platform/arm/mali-c55/mali-c55-stats.c
288
dev_err(mali_c55->dev, "stats vb2 queue init failed\n");
drivers/media/platform/arm/mali-c55/mali-c55-stats.c
297
vdev->v4l2_dev = &mali_c55->v4l2_dev;
drivers/media/platform/arm/mali-c55/mali-c55-stats.c
305
dev_err(mali_c55->dev,
drivers/media/platform/arm/mali-c55/mali-c55-stats.c
310
stats->mali_c55 = mali_c55;
drivers/media/platform/arm/mali-c55/mali-c55-tpg.c
100
mali_c55_update_bits(mali_c55, MALI_C55_REG_BLANKING,
drivers/media/platform/arm/mali-c55/mali-c55-tpg.c
109
pm_runtime_put_autosuspend(mali_c55->dev);
drivers/media/platform/arm/mali-c55/mali-c55-tpg.c
128
mali_c55_update_bits(tpg->mali_c55, MALI_C55_REG_BLANKING,
drivers/media/platform/arm/mali-c55/mali-c55-tpg.c
131
mali_c55_update_bits(tpg->mali_c55, MALI_C55_REG_GEN_VIDEO,
drivers/media/platform/arm/mali-c55/mali-c55-tpg.c
140
mali_c55_ctx_update_bits(tpg->mali_c55, MALI_C55_REG_TPG_CH0,
drivers/media/platform/arm/mali-c55/mali-c55-tpg.c
227
struct mali_c55 *mali_c55 = container_of(tpg, struct mali_c55, tpg);
drivers/media/platform/arm/mali-c55/mali-c55-tpg.c
240
mali_c55_ctx_update_bits(mali_c55, MALI_C55_REG_TPG_CH0,
drivers/media/platform/arm/mali-c55/mali-c55-tpg.c
243
mali_c55_update_bits(mali_c55, MALI_C55_REG_GEN_VIDEO,
drivers/media/platform/arm/mali-c55/mali-c55-tpg.c
255
struct mali_c55 *mali_c55 = container_of(tpg, struct mali_c55, tpg);
drivers/media/platform/arm/mali-c55/mali-c55-tpg.c
257
mali_c55_ctx_update_bits(mali_c55, MALI_C55_REG_TPG_CH0,
drivers/media/platform/arm/mali-c55/mali-c55-tpg.c
259
mali_c55_update_bits(mali_c55, MALI_C55_REG_GEN_VIDEO,
drivers/media/platform/arm/mali-c55/mali-c55-tpg.c
308
static int mali_c55_tpg_init_controls(struct mali_c55 *mali_c55)
drivers/media/platform/arm/mali-c55/mali-c55-tpg.c
310
struct mali_c55_tpg_ctrls *ctrls = &mali_c55->tpg.ctrls;
drivers/media/platform/arm/mali-c55/mali-c55-tpg.c
351
dev_err(mali_c55->dev, "Error during v4l2 controls init\n");
drivers/media/platform/arm/mali-c55/mali-c55-tpg.c
356
mali_c55->tpg.sd.ctrl_handler = &ctrls->handler;
drivers/media/platform/arm/mali-c55/mali-c55-tpg.c
357
mali_c55->tpg.sd.state_lock = ctrls->handler.lock;
drivers/media/platform/arm/mali-c55/mali-c55-tpg.c
362
int mali_c55_register_tpg(struct mali_c55 *mali_c55)
drivers/media/platform/arm/mali-c55/mali-c55-tpg.c
364
struct mali_c55_tpg *tpg = &mali_c55->tpg;
drivers/media/platform/arm/mali-c55/mali-c55-tpg.c
378
dev_err(mali_c55->dev,
drivers/media/platform/arm/mali-c55/mali-c55-tpg.c
383
ret = mali_c55_tpg_init_controls(mali_c55);
drivers/media/platform/arm/mali-c55/mali-c55-tpg.c
385
dev_err(mali_c55->dev,
drivers/media/platform/arm/mali-c55/mali-c55-tpg.c
394
ret = v4l2_device_register_subdev(&mali_c55->v4l2_dev, sd);
drivers/media/platform/arm/mali-c55/mali-c55-tpg.c
396
dev_err(mali_c55->dev, "Failed to register tpg subdev\n");
drivers/media/platform/arm/mali-c55/mali-c55-tpg.c
405
mali_c55_ctx_write(mali_c55, MALI_C55_REG_TPG_R_BACKGROUND,
drivers/media/platform/arm/mali-c55/mali-c55-tpg.c
407
mali_c55_ctx_write(mali_c55, MALI_C55_REG_TPG_G_BACKGROUND,
drivers/media/platform/arm/mali-c55/mali-c55-tpg.c
409
mali_c55_ctx_write(mali_c55, MALI_C55_REG_TPG_B_BACKGROUND,
drivers/media/platform/arm/mali-c55/mali-c55-tpg.c
412
tpg->mali_c55 = mali_c55;
drivers/media/platform/arm/mali-c55/mali-c55-tpg.c
426
void mali_c55_unregister_tpg(struct mali_c55 *mali_c55)
drivers/media/platform/arm/mali-c55/mali-c55-tpg.c
428
struct mali_c55_tpg *tpg = &mali_c55->tpg;
drivers/media/platform/arm/mali-c55/mali-c55-tpg.c
430
if (!tpg->mali_c55)
drivers/media/platform/arm/mali-c55/mali-c55-tpg.c
87
struct mali_c55 *mali_c55 = container_of(tpg, struct mali_c55, tpg);
drivers/media/platform/arm/mali-c55/mali-c55-tpg.c
90
if (!pm_runtime_get_if_in_use(mali_c55->dev))
drivers/media/platform/arm/mali-c55/mali-c55-tpg.c
95
mali_c55_ctx_write(mali_c55,