@@ -937,18 +937,18 @@ EXPORT_SYMBOL(mpp_dev_read);
void mpp_debug_time_record(struct mpp_task *task)
{
if (unlikely(debug & DEBUG_TIMING) && task)
- do_gettimeofday(&task->start);
+ getboottime64(&task->start);
}
EXPORT_SYMBOL(mpp_debug_time_record);
void mpp_debug_time_diff(struct mpp_task *task)
{
- struct timeval end;
+ struct timespec64 end;
- do_gettimeofday(&end);
- mpp_debug(DEBUG_TIMING, "time: %ld us\n",
- (end.tv_sec - task->start.tv_sec) * 1000000 +
- (end.tv_usec - task->start.tv_usec));
+ getboottime64(&end);
+ mpp_debug(DEBUG_TIMING, "time: %lld ms\n",
+ (end.tv_sec - task->start.tv_sec) * 1000 +
+ (end.tv_nsec - task->start.tv_nsec) / 1000000);
}
EXPORT_SYMBOL(mpp_debug_time_diff);
@@ -124,7 +124,7 @@ struct mpp_task {
struct work_struct work;
/* record context running start time */
- struct timeval start;
+ struct timespec64 start;
};
/*
@@ -19,10 +19,10 @@
#include <linux/module.h>
#include <linux/types.h>
#include <linux/of_platform.h>
-#include <linux/rockchip/rockchip_sip.h>
#include <linux/slab.h>
#include <linux/uaccess.h>
#include <soc/rockchip/pm_domains.h>
+#include <soc/rockchip/rockchip_sip.h>
#include "mpp_debug.h"
#include "mpp_dev_common.h"
@@ -230,8 +230,7 @@ static int fill_scaling_list_pps(struct rkvdec_task *task, int fd, int offset,
return -ENOENT;
}
- ret = dma_buf_begin_cpu_access(dmabuf, 0, dmabuf->size,
- DMA_FROM_DEVICE);
+ ret = dma_buf_begin_cpu_access(dmabuf, DMA_FROM_DEVICE);
if (ret) {
dev_err(dev, "can't access the pps buffer\n");
goto done;
@@ -277,7 +276,7 @@ static int fill_scaling_list_pps(struct rkvdec_task *task, int fd, int offset,
done:
dma_buf_vunmap(dmabuf, vaddr);
- dma_buf_end_cpu_access(dmabuf, 0, dmabuf->size, DMA_FROM_DEVICE);
+ dma_buf_end_cpu_access(dmabuf, DMA_FROM_DEVICE);
dma_buf_put(dmabuf);
return ret;
@@ -460,9 +460,8 @@ static int rockchip_mpp_rkvdpu_assign_reset(struct rockchip_rkvdpu_dev *dec_dev)
{
struct rockchip_mpp_dev *mpp_dev = &dec_dev->mpp_dev;
- /* TODO: use devm_reset_control_get_share() instead */
- dec_dev->rst_a = devm_reset_control_get(mpp_dev->dev, "video_a");
- dec_dev->rst_h = devm_reset_control_get(mpp_dev->dev, "video_h");
+ dec_dev->rst_a = devm_reset_control_get_shared(mpp_dev->dev, "video_a");
+ dec_dev->rst_h = devm_reset_control_get_shared(mpp_dev->dev, "video_h");
if (IS_ERR_OR_NULL(dec_dev->rst_a)) {
mpp_err("No aclk reset resource define\n");
@@ -428,9 +428,8 @@ static int rockchip_mpp_rkvdpu_assign_reset(struct rockchip_rkvdpu_dev *dec_dev)
{
struct rockchip_mpp_dev *mpp_dev = &dec_dev->mpp_dev;
- /* TODO: use devm_reset_control_get_share() instead */
- dec_dev->rst_a = devm_reset_control_get(mpp_dev->dev, "video_a");
- dec_dev->rst_h = devm_reset_control_get(mpp_dev->dev, "video_h");
+ dec_dev->rst_a = devm_reset_control_get_shared(mpp_dev->dev, "video_a");
+ dec_dev->rst_h = devm_reset_control_get_shared(mpp_dev->dev, "video_h");
if (IS_ERR_OR_NULL(dec_dev->rst_a)) {
mpp_err("No aclk reset resource define\n");
@@ -330,9 +330,8 @@ static int rockchip_mpp_rkvepu_assign_reset(struct rockchip_rkvepu_dev *enc_dev)
{
struct rockchip_mpp_dev *mpp_dev = &enc_dev->mpp_dev;
- /* TODO: use devm_reset_control_get_share() instead */
- enc_dev->rst_a = devm_reset_control_get(mpp_dev->dev, "video_a");
- enc_dev->rst_h = devm_reset_control_get(mpp_dev->dev, "video_h");
+ enc_dev->rst_a = devm_reset_control_get_shared(mpp_dev->dev, "video_a");
+ enc_dev->rst_h = devm_reset_control_get_shared(mpp_dev->dev, "video_h");
if (IS_ERR_OR_NULL(enc_dev->rst_a)) {
mpp_err("No aclk reset resource define\n");
@@ -327,9 +327,8 @@ static int rockchip_mpp_rkvepu_assign_reset(struct rockchip_rkvepu_dev *enc_dev)
{
struct rockchip_mpp_dev *mpp_dev = &enc_dev->mpp_dev;
- /* TODO: use devm_reset_control_get_share() instead */
- enc_dev->rst_a = devm_reset_control_get(mpp_dev->dev, "video_a");
- enc_dev->rst_h = devm_reset_control_get(mpp_dev->dev, "video_h");
+ enc_dev->rst_a = devm_reset_control_get_shared(mpp_dev->dev, "video_a");
+ enc_dev->rst_h = devm_reset_control_get_shared(mpp_dev->dev, "video_h");
if (IS_ERR_OR_NULL(enc_dev->rst_a)) {
mpp_err("No aclk reset resource define\n");
Fixing those deprecated function from vendor kernel. Removing those features don't exist in upstream kernel. Signed-off-by: Randy Li <ayaka@soulik.info> --- drivers/staging/rockchip-mpp/mpp_dev_common.c | 12 ++++++------ drivers/staging/rockchip-mpp/mpp_dev_common.h | 2 +- drivers/staging/rockchip-mpp/mpp_dev_rkvdec.c | 7 +++---- drivers/staging/rockchip-mpp/mpp_dev_vdpu1.c | 5 ++--- drivers/staging/rockchip-mpp/mpp_dev_vdpu2.c | 5 ++--- drivers/staging/rockchip-mpp/mpp_dev_vepu1.c | 5 ++--- drivers/staging/rockchip-mpp/mpp_dev_vepu2.c | 5 ++--- 7 files changed, 18 insertions(+), 23 deletions(-)