This reverts commit 9314891df119442a6ec1518b3d872c330e2bf1a1.
We're adding support for TI VIP driver, so this is no longer unused.
Signed-off-by: Yemike Abhilash Chandra <y-abhilashchandra@ti.com>
---
drivers/media/platform/ti/vpe/vpdma.c | 32 +++++++++++++++++++++++++++
drivers/media/platform/ti/vpe/vpdma.h | 3 +++
2 files changed, 35 insertions(+)
diff --git a/drivers/media/platform/ti/vpe/vpdma.c b/drivers/media/platform/ti/vpe/vpdma.c
index bb8a8bd7980c..da90d7f03f82 100644
--- a/drivers/media/platform/ti/vpe/vpdma.c
+++ b/drivers/media/platform/ti/vpe/vpdma.c
@@ -552,6 +552,38 @@ EXPORT_SYMBOL(vpdma_submit_descs);
static void dump_dtd(struct vpdma_dtd *dtd);
+void vpdma_update_dma_addr(struct vpdma_data *vpdma,
+ struct vpdma_desc_list *list, dma_addr_t dma_addr,
+ void *write_dtd, int drop, int idx)
+{
+ struct vpdma_dtd *dtd = list->buf.addr;
+ dma_addr_t write_desc_addr;
+ int offset;
+
+ dtd += idx;
+ vpdma_unmap_desc_buf(vpdma, &list->buf);
+
+ dtd->start_addr = dma_addr;
+
+ /* Calculate write address from the offset of write_dtd from start
+ * of the list->buf
+ */
+ offset = (void *)write_dtd - list->buf.addr;
+ write_desc_addr = list->buf.dma_addr + offset;
+
+ if (drop)
+ dtd->desc_write_addr = dtd_desc_write_addr(write_desc_addr,
+ 1, 1, 0);
+ else
+ dtd->desc_write_addr = dtd_desc_write_addr(write_desc_addr,
+ 1, 0, 0);
+
+ vpdma_map_desc_buf(vpdma, &list->buf);
+
+ dump_dtd(dtd);
+}
+EXPORT_SYMBOL(vpdma_update_dma_addr);
+
void vpdma_set_max_size(struct vpdma_data *vpdma, int reg_addr,
u32 width, u32 height)
{
diff --git a/drivers/media/platform/ti/vpe/vpdma.h b/drivers/media/platform/ti/vpe/vpdma.h
index e4d7941c6207..393fcbb3cb40 100644
--- a/drivers/media/platform/ti/vpe/vpdma.h
+++ b/drivers/media/platform/ti/vpe/vpdma.h
@@ -222,6 +222,9 @@ void vpdma_free_desc_list(struct vpdma_desc_list *list);
int vpdma_submit_descs(struct vpdma_data *vpdma, struct vpdma_desc_list *list,
int list_num);
bool vpdma_list_busy(struct vpdma_data *vpdma, int list_num);
+void vpdma_update_dma_addr(struct vpdma_data *vpdma,
+ struct vpdma_desc_list *list, dma_addr_t dma_addr,
+ void *write_dtd, int drop, int idx);
/* VPDMA hardware list funcs */
int vpdma_hwlist_alloc(struct vpdma_data *vpdma, void *priv);
--
2.34.1
On 16/07/2025 13:19, Yemike Abhilash Chandra wrote: > This reverts commit 9314891df119442a6ec1518b3d872c330e2bf1a1. > > We're adding support for TI VIP driver, so this is no longer unused. > > Signed-off-by: Yemike Abhilash Chandra <y-abhilashchandra@ti.com> > --- > drivers/media/platform/ti/vpe/vpdma.c | 32 +++++++++++++++++++++++++++ > drivers/media/platform/ti/vpe/vpdma.h | 3 +++ > 2 files changed, 35 insertions(+) > > diff --git a/drivers/media/platform/ti/vpe/vpdma.c b/drivers/media/platform/ti/vpe/vpdma.c > index bb8a8bd7980c..da90d7f03f82 100644 > --- a/drivers/media/platform/ti/vpe/vpdma.c > +++ b/drivers/media/platform/ti/vpe/vpdma.c > @@ -552,6 +552,38 @@ EXPORT_SYMBOL(vpdma_submit_descs); > > static void dump_dtd(struct vpdma_dtd *dtd); > Please add kerneldoc. > +void vpdma_update_dma_addr(struct vpdma_data *vpdma, > + struct vpdma_desc_list *list, dma_addr_t dma_addr, > + void *write_dtd, int drop, int idx) > +{ > + struct vpdma_dtd *dtd = list->buf.addr; > + dma_addr_t write_desc_addr; > + int offset; > + > + dtd += idx; > + vpdma_unmap_desc_buf(vpdma, &list->buf); > + > + dtd->start_addr = dma_addr; > + > + /* Calculate write address from the offset of write_dtd from start > + * of the list->buf > + */ > + offset = (void *)write_dtd - list->buf.addr; > + write_desc_addr = list->buf.dma_addr + offset; > + > + if (drop) > + dtd->desc_write_addr = dtd_desc_write_addr(write_desc_addr, > + 1, 1, 0); > + else > + dtd->desc_write_addr = dtd_desc_write_addr(write_desc_addr, > + 1, 0, 0); > + > + vpdma_map_desc_buf(vpdma, &list->buf); > + > + dump_dtd(dtd); > +} > +EXPORT_SYMBOL(vpdma_update_dma_addr); This has to be GPL > + > void vpdma_set_max_size(struct vpdma_data *vpdma, int reg_addr, > u32 width, u32 height) Best regards, Krzysztof
Hi Krzysztof, Thanks for the review. On 16/07/25 19:53, Krzysztof Kozlowski wrote: > On 16/07/2025 13:19, Yemike Abhilash Chandra wrote: >> This reverts commit 9314891df119442a6ec1518b3d872c330e2bf1a1. >> >> We're adding support for TI VIP driver, so this is no longer unused. >> >> Signed-off-by: Yemike Abhilash Chandra <y-abhilashchandra@ti.com> >> --- >> drivers/media/platform/ti/vpe/vpdma.c | 32 +++++++++++++++++++++++++++ >> drivers/media/platform/ti/vpe/vpdma.h | 3 +++ >> 2 files changed, 35 insertions(+) >> >> diff --git a/drivers/media/platform/ti/vpe/vpdma.c b/drivers/media/platform/ti/vpe/vpdma.c >> index bb8a8bd7980c..da90d7f03f82 100644 >> --- a/drivers/media/platform/ti/vpe/vpdma.c >> +++ b/drivers/media/platform/ti/vpe/vpdma.c >> @@ -552,6 +552,38 @@ EXPORT_SYMBOL(vpdma_submit_descs); >> >> static void dump_dtd(struct vpdma_dtd *dtd); >> > > > Please add kerneldoc. > I will add kerneldoc in v3. Thanks >> +void vpdma_update_dma_addr(struct vpdma_data *vpdma, >> + struct vpdma_desc_list *list, dma_addr_t dma_addr, >> + void *write_dtd, int drop, int idx) >> +{ >> + struct vpdma_dtd *dtd = list->buf.addr; >> + dma_addr_t write_desc_addr; >> + int offset; >> + >> + dtd += idx; >> + vpdma_unmap_desc_buf(vpdma, &list->buf); >> + >> + dtd->start_addr = dma_addr; >> + >> + /* Calculate write address from the offset of write_dtd from start >> + * of the list->buf >> + */ >> + offset = (void *)write_dtd - list->buf.addr; >> + write_desc_addr = list->buf.dma_addr + offset; >> + >> + if (drop) >> + dtd->desc_write_addr = dtd_desc_write_addr(write_desc_addr, >> + 1, 1, 0); >> + else >> + dtd->desc_write_addr = dtd_desc_write_addr(write_desc_addr, >> + 1, 0, 0); >> + >> + vpdma_map_desc_buf(vpdma, &list->buf); >> + >> + dump_dtd(dtd); >> +} >> +EXPORT_SYMBOL(vpdma_update_dma_addr); > > > This has to be GPL > I will correct this in v3. Thanks and Regards Yemike Abhilash Chandra >> + >> void vpdma_set_max_size(struct vpdma_data *vpdma, int reg_addr, >> u32 width, u32 height) > > Best regards, > Krzysztof
© 2016 - 2025 Red Hat, Inc.