lkml.org 
[lkml]   [2023]   [Mar]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH v3,6/7] media: mediatek: vcodec: Change dbgfs interface to support encode
    Date
    Extend dbgfs init interface to support encode and create encode
    dbgfs file.

    Signed-off-by: Yunfei Dong <yunfei.dong@mediatek.com>
    ---
    .../media/platform/mediatek/vcodec/mtk_vcodec_dbgfs.c | 9 +++++++--
    .../media/platform/mediatek/vcodec/mtk_vcodec_dbgfs.h | 4 ++--
    .../media/platform/mediatek/vcodec/mtk_vcodec_dec_drv.c | 2 +-
    3 files changed, 10 insertions(+), 5 deletions(-)

    diff --git a/drivers/media/platform/mediatek/vcodec/mtk_vcodec_dbgfs.c b/drivers/media/platform/mediatek/vcodec/mtk_vcodec_dbgfs.c
    index 1b1b4301a83d..4f6d0a4af651 100644
    --- a/drivers/media/platform/mediatek/vcodec/mtk_vcodec_dbgfs.c
    +++ b/drivers/media/platform/mediatek/vcodec/mtk_vcodec_dbgfs.c
    @@ -160,11 +160,14 @@ void mtk_vcodec_dbgfs_remove(struct mtk_vcodec_dev *vcodec_dev, int ctx_id)
    }
    EXPORT_SYMBOL_GPL(mtk_vcodec_dbgfs_remove);

    -void mtk_vcodec_dbgfs_init(struct mtk_vcodec_dev *vcodec_dev)
    +void mtk_vcodec_dbgfs_init(struct mtk_vcodec_dev *vcodec_dev, bool is_encode)
    {
    struct dentry *vcodec_root;

    - vcodec_dev->dbgfs.vcodec_root = debugfs_create_dir("vcodec-dec", NULL);
    + if (is_encode)
    + vcodec_dev->dbgfs.vcodec_root = debugfs_create_dir("vcodec-enc", NULL);
    + else
    + vcodec_dev->dbgfs.vcodec_root = debugfs_create_dir("vcodec-dec", NULL);
    if (IS_ERR(vcodec_dev->dbgfs.vcodec_root))
    dev_err(&vcodec_dev->plat_dev->dev, "create vcodec dir err:%d\n",
    IS_ERR(vcodec_dev->dbgfs.vcodec_root));
    @@ -174,6 +177,8 @@ void mtk_vcodec_dbgfs_init(struct mtk_vcodec_dev *vcodec_dev)
    debugfs_create_x32("mtk_vcodec_dbg", 0644, vcodec_root, &mtk_vcodec_dbg);

    vcodec_dev->dbgfs.inst_count = 0;
    + if (is_encode)
    + return;

    INIT_LIST_HEAD(&vcodec_dev->dbgfs.dbgfs_head);
    debugfs_create_file("vdec", 0200, vcodec_root, vcodec_dev, &vdec_fops);
    diff --git a/drivers/media/platform/mediatek/vcodec/mtk_vcodec_dbgfs.h b/drivers/media/platform/mediatek/vcodec/mtk_vcodec_dbgfs.h
    index b0bdb84a46df..ba43518d0fcb 100644
    --- a/drivers/media/platform/mediatek/vcodec/mtk_vcodec_dbgfs.h
    +++ b/drivers/media/platform/mediatek/vcodec/mtk_vcodec_dbgfs.h
    @@ -50,7 +50,7 @@ struct mtk_vcodec_dbgfs {
    #if defined(CONFIG_DEBUG_FS)
    void mtk_vcodec_dbgfs_create(struct mtk_vcodec_ctx *ctx);
    void mtk_vcodec_dbgfs_remove(struct mtk_vcodec_dev *vcodec_dev, int ctx_id);
    -void mtk_vcodec_dbgfs_init(struct mtk_vcodec_dev *vcodec_dev);
    +void mtk_vcodec_dbgfs_init(struct mtk_vcodec_dev *vcodec_dev, bool is_encode);
    void mtk_vcodec_dbgfs_deinit(struct mtk_vcodec_dev *vcodec_dev);
    #else
    static inline void mtk_vcodec_dbgfs_create(struct mtk_vcodec_ctx *ctx)
    @@ -61,7 +61,7 @@ static inline void mtk_vcodec_dbgfs_remove(struct mtk_vcodec_dev *vcodec_dev, in
    {
    }

    -static inline void mtk_vcodec_dbgfs_init(struct mtk_vcodec_dev *vcodec_dev)
    +static inline void mtk_vcodec_dbgfs_init(struct mtk_vcodec_dev *vcodec_dev, bool is_encode)
    {
    }

    diff --git a/drivers/media/platform/mediatek/vcodec/mtk_vcodec_dec_drv.c b/drivers/media/platform/mediatek/vcodec/mtk_vcodec_dec_drv.c
    index 8c2443a18f5e..bba7b932f4fa 100644
    --- a/drivers/media/platform/mediatek/vcodec/mtk_vcodec_dec_drv.c
    +++ b/drivers/media/platform/mediatek/vcodec/mtk_vcodec_dec_drv.c
    @@ -433,7 +433,7 @@ static int mtk_vcodec_probe(struct platform_device *pdev)
    mtk_v4l2_debug(0, "media registered as /dev/media%d", vfd_dec->minor);
    }

    - mtk_vcodec_dbgfs_init(dev);
    + mtk_vcodec_dbgfs_init(dev, false);
    mtk_v4l2_debug(0, "decoder registered as /dev/video%d", vfd_dec->minor);

    return 0;
    --
    2.18.0
    \
     
     \ /
      Last update: 2023-03-27 07:54    [W:3.919 / U:0.016 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site