hc
2024-05-14 bedbef8ad3e75a304af6361af235302bcc61d06b
kernel/drivers/media/platform/rockchip/ispp/common.c
....@@ -269,7 +269,7 @@
269269 if (rkispp_debug)
270270 dev_info(hw->dev, "%s dbufs[%d]:0x%p\n",
271271 __func__, i, buf->dbufs);
272
- for (j = 0; j < GROUP_BUF_MAX; j++) {
272
+ for (j = 0; j < hw->pool[0].group_buf_max; j++) {
273273 if (buf->mem_priv[j]) {
274274 g_ops->unmap_dmabuf(buf->mem_priv[j]);
275275 g_ops->detach_dmabuf(buf->mem_priv[j]);
....@@ -304,7 +304,7 @@
304304 if (rkispp_debug)
305305 dev_info(hw->dev, "%s dbufs[%d]:0x%p\n",
306306 __func__, i, dbufs);
307
- for (i = 0; i < GROUP_BUF_MAX; i++) {
307
+ for (i = 0; i < hw->pool[0].group_buf_max; i++) {
308308 mem = g_ops->attach_dmabuf(hw->dev, dbufs->dbuf[i],
309309 dbufs->dbuf[i]->size, DMA_BIDIRECTIONAL);
310310 if (IS_ERR(mem)) {
....@@ -370,8 +370,9 @@
370370 hw->cur_dev_id = buf->index;
371371 ispp = hw->ispp[buf->index];
372372 vdev = &ispp->stream_vdev;
373
- val = (vdev->module_ens & ISPP_MODULE_TNR) ? ISPP_MODULE_TNR : ISPP_MODULE_NR;
374
- rkispp_module_work_event(ispp, buf, NULL, val, false);
373
+ val = (vdev->module_ens & ISPP_MODULE_TNR) ? ISPP_MODULE_TNR :
374
+ ((vdev->module_ens & ISPP_MODULE_NR) ? ISPP_MODULE_NR : ISPP_MODULE_FEC);
375
+ vdev->stream_ops->rkispp_module_work_event(ispp, buf, NULL, val, false);
375376 }
376377
377378 spin_unlock_irqrestore(&hw->buf_lock, lock_flags);