hc
2023-12-11 6778948f9de86c3cfaf36725a7c87dcff9ba247f
kernel/drivers/video/rockchip/rga3/rga_debugger.c
....@@ -621,7 +621,11 @@
621621 #ifdef CONFIG_ROCKCHIP_RGA_PROC_FS
622622 static int rga_procfs_open(struct inode *inode, struct file *file)
623623 {
624
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 1, 0)
625
+ struct rga_debugger_node *node = pde_data(inode);
626
+#else
624627 struct rga_debugger_node *node = PDE_DATA(inode);
628
+#endif
625629
626630 return single_open(file, node->info_ent->show, node);
627631 }
....@@ -836,6 +840,10 @@
836840 struct file *file;
837841 size_t size = 0;
838842 loff_t pos = 0;
843
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 1, 0)
844
+ int ret;
845
+ struct iosys_map map;
846
+#endif
839847 void *kvaddr = NULL;
840848 void *kvaddr_origin = NULL;
841849
....@@ -848,7 +856,12 @@
848856 return -EINVAL;
849857 }
850858
859
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 1, 0)
860
+ ret = dma_buf_vmap(dump_buffer->dma_buffer->dma_buf, &map);
861
+ kvaddr = ret ? NULL : map.vaddr;
862
+#else
851863 kvaddr = dma_buf_vmap(dump_buffer->dma_buffer->dma_buf);
864
+#endif
852865 if (!kvaddr) {
853866 pr_err("can't vmap the dma buffer!\n");
854867 return -EINVAL;
....@@ -918,7 +931,11 @@
918931 switch (dump_buffer->type) {
919932 case RGA_DMA_BUFFER:
920933 case RGA_DMA_BUFFER_PTR:
934
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 1, 0)
935
+ dma_buf_vunmap(dump_buffer->dma_buffer->dma_buf, &map);
936
+#else
921937 dma_buf_vunmap(dump_buffer->dma_buffer->dma_buf, kvaddr_origin);
938
+#endif
922939 break;
923940 case RGA_VIRTUAL_ADDRESS:
924941 vunmap(kvaddr_origin);