Received: by 2002:a05:6a10:1d13:0:0:0:0 with SMTP id pp19csp504920pxb; Wed, 18 Aug 2021 07:21:37 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwsh3J9bunu8AQxjl9MMsePMH3dpZ8EBvUNd9UMS24Sa3CnmKQkYp61rk4bulK32kOEGtPm X-Received: by 2002:aa7:c49a:: with SMTP id m26mr10740440edq.258.1629296497736; Wed, 18 Aug 2021 07:21:37 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1629296497; cv=none; d=google.com; s=arc-20160816; b=q42bwMGufnflcWMZh6EXb+OWwYLBNSajcMB50cXky4Bmp++UYMNN6IsJOudNEvK2ic 1r/fjAkPNnLs2OB+xdZq80PtKj+76cfzP4IMiqtBO/cLZIehOvHIXi43kFi6B/3qxJrr is3TDyRej2Jt8ZOiVVuPm/qnDnx1gzK6EfgXMzyuFfu52xniIrx0XX24Ai9AwgR12WzX A01obM/NU+7dMKzzpo0T7KCi2F4lHeiRmsQy1ZtvwfZG0nFyCpMPNcP2Ysybpna27cVa 2Be/nnpxrOHDnwzGn4FT5MCZz+5sXxxYQjYCOqvhajOD8ZwivO/zsBZG9G9vfLqu3g3f d9VQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:references:in-reply-to:message-id:date:subject :cc:to:from:mime-version:dkim-signature; bh=nKNE8ijfWlx9GrUceWKtzIYzjYKV/yPuSFqRxghOMMg=; b=fa/Py0hjuFYc4EK0VPsdLVFSaocQRJ5HPRIC7p2+DWL9e+0CZwVXmLdHTaT5l97lHR DJSuAC0gsp/ruRIuf9yI4bidVgJ7P1itud4PPLn1O9t6joT4ThMxZ/GDnpTpH9fYTYRK 1mnaEJmtwtiTg63mlW3IvtizdcPEN25LBRWzcZmEIyiQqX4DL9UDOZDgIP6jGB22ICE9 ao+11afYabbeZnGl49JilkiKQL1mDpPT7hb7+7p7Ob9WWBO6vjT+Qaai4Nfz/lnVX90o ox3/aktdk+xUMeAZ30Usq59zUCgdmVmMS1fjloXcC+HGe/OoVq2gVovAIxPwv7AxU+h4 y0/A== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@pathpartnertech.com header.s=google header.b=NEvL23y8; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id 16si39130ejj.242.2021.08.18.07.21.13; Wed, 18 Aug 2021 07:21:37 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@pathpartnertech.com header.s=google header.b=NEvL23y8; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S239486AbhHRORY (ORCPT + 99 others); Wed, 18 Aug 2021 10:17:24 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:46484 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S239945AbhHROOs (ORCPT ); Wed, 18 Aug 2021 10:14:48 -0400 Received: from mail-pj1-x102c.google.com (mail-pj1-x102c.google.com [IPv6:2607:f8b0:4864:20::102c]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 768DBC06114D for ; Wed, 18 Aug 2021 07:13:24 -0700 (PDT) Received: by mail-pj1-x102c.google.com with SMTP id qe12-20020a17090b4f8c00b00179321cbae7so2428146pjb.2 for ; Wed, 18 Aug 2021 07:13:24 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=pathpartnertech.com; s=google; h=mime-version:from:to:cc:subject:date:message-id:in-reply-to :references; bh=nKNE8ijfWlx9GrUceWKtzIYzjYKV/yPuSFqRxghOMMg=; b=NEvL23y8xxuShE6xYlVqlSlYlNJkbLv4ksR82pPD/BFjcEOgr1KPG/pgd/sHDnWAyv IAuAPk55Rz9W3uuq+slW6OuC3xb6wlasV69ZbQPXscISqwRiObAGL9yKTOWnVL6l0okV 0ty5PPJCo0kFkeQ0dr5Gr4G5qHaRgH5K38E07HN++4awJWDMVNceVn1I8alB/cnGpYyX bKN1hr1tzatQu8zBoV1qATpGOEqP+XoO4m8YyfxPF7uNdiKv7gkegTjeRqEJXKoVitTV LcONwyhI9t2r9R9Uw006GuZIhZHBK6mLdwD75ECF1tajWIZ6abzzBFsvKpO/wY8JRrRU 6FiA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :in-reply-to:references; bh=nKNE8ijfWlx9GrUceWKtzIYzjYKV/yPuSFqRxghOMMg=; b=RutNEdgpM+TAh0JvUKlfa084yUp4rVednI37ztjgf0DqmJ31hbBfFj95Xahc8qppgf 7P1FkFZMDA0j1NDbZf3eY+eZDJb5WtFe8NyTnqEYndE/5lwwJ5iG1xuI1MQ10x7GYro+ EEOUZ28MM1KPcFp5kA1tMgSEkFDQDZKj7Ku2l4N/7R/SZTTnRKMI9LhAzs1luy64zWVT 6rfDHNl5yMZj8OOYGX76flqEVWbGISWPEi4pJoBGRNPNXpG1d82ekByJfW6cYwkYGAFt MpXabdZVrABKw7DAbNC22UM7DFKGtn29Dr/bTQFG2ziz3n0s5Z8s91QBVP8ucfh06XVi ilpw== MIME-Version: 1.0 X-Gm-Message-State: AOAM5326/YJsvOut1TXOhwaD9wrwL0Oe3e3aoehNiaUTCJswCa1SxflX 4k41fRSWasKgPYhzQ9Kw438lnER8OXK/KsyU8QxlanwLLeQF0iOvXnWLMMKcBEUCVouxuA2XiYB hwRw2xJW1/8l+bUgryg== X-Received: by 2002:a17:90a:1b2a:: with SMTP id q39mr9369479pjq.219.1629296003962; Wed, 18 Aug 2021 07:13:23 -0700 (PDT) Received: from localhost.localdomain ([49.207.214.181]) by smtp.gmail.com with ESMTPSA id e8sm8084343pgg.31.2021.08.18.07.13.21 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 18 Aug 2021 07:13:23 -0700 (PDT) From: sidraya.bj@pathpartnertech.com To: gregkh@linuxfoundation.org, linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org Cc: prashanth.ka@pathpartnertech.com, praneeth@ti.com, mchehab@kernel.org, linux-media@vger.kernel.org, praveen.ap@pathpartnertech.com, Sidraya Subject: [PATCH 27/30] media: platform: vxd: Kconfig: Add Video decoder Kconfig and Makefile Date: Wed, 18 Aug 2021 19:40:34 +0530 Message-Id: <20210818141037.19990-28-sidraya.bj@pathpartnertech.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20210818141037.19990-1-sidraya.bj@pathpartnertech.com> References: <20210818141037.19990-1-sidraya.bj@pathpartnertech.com> Content-Type: text/plain; charset="US-ASCII" Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Sidraya Add video decoder basic config to Kconfig and select the required V4l2 modules. Add video decoder Makefile. Signed-off-by: Angela Stegmaier Signed-off-by: Sidraya --- MAINTAINERS | 2 + drivers/staging/media/vxd/decoder/Kconfig | 13 +++ drivers/staging/media/vxd/decoder/Makefile | 129 +++++++++++++++++++++ 3 files changed, 144 insertions(+) create mode 100644 drivers/staging/media/vxd/decoder/Kconfig create mode 100644 drivers/staging/media/vxd/decoder/Makefile diff --git a/MAINTAINERS b/MAINTAINERS index b5875f9015ba..0616ab620135 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -19568,6 +19568,8 @@ F: drivers/staging/media/vxd/common/talmmu_api.c F: drivers/staging/media/vxd/common/talmmu_api.h F: drivers/staging/media/vxd/common/work_queue.c F: drivers/staging/media/vxd/common/work_queue.h +F: drivers/staging/media/vxd/decoder/Kconfig +F: drivers/staging/media/vxd/decoder/Makefile F: drivers/staging/media/vxd/decoder/bspp.c F: drivers/staging/media/vxd/decoder/bspp.h F: drivers/staging/media/vxd/decoder/bspp_int.h diff --git a/drivers/staging/media/vxd/decoder/Kconfig b/drivers/staging/media/vxd/decoder/Kconfig new file mode 100644 index 000000000000..5ee44cc07dd8 --- /dev/null +++ b/drivers/staging/media/vxd/decoder/Kconfig @@ -0,0 +1,13 @@ +# SPDX-License-Identifier: GPL-2.0 + +config VIDEO_IMG_VXD_DEC + tristate "IMG VXD DEC (Video Decoder) driver" + depends on VIDEO_DEV && VIDEO_V4L2 + select VIDEOBUF2_CORE + select VIDEOBUF2_DMA_CONTIG + select VIDEOBUF2_DMA_SG + select V4L2_MEM2MEM_DEV + help + This is an IMG VXD DEC V4L2 driver that adds support for the + Imagination D5520 (Video Decoder) hardware. + The module name when built is vxd-dec. diff --git a/drivers/staging/media/vxd/decoder/Makefile b/drivers/staging/media/vxd/decoder/Makefile new file mode 100644 index 000000000000..80e46a7da1ab --- /dev/null +++ b/drivers/staging/media/vxd/decoder/Makefile @@ -0,0 +1,129 @@ +# SPDX-License-Identifier: GPL-2.0 + +# Optional Video feature configuration control + +# (1) +# This config allows enabling or disabling of HEVC/H265 video +# decoding functionality with IMG VXD Video decoder. If you +# do not want HEVC decode capability, select N. +# If unsure, select Y +HAS_HEVC ?=y + +# (2) +# This config enables error concealment with gray pattern. +# Disable if you do not want error concealment capability. +# If unsure, say Y +ERROR_CONCEALMENT ?=y + +# (3) +# This config, if enabled, configures H264 video decoder to +# output frames in the decode order with no buffering and +# picture reordering inside codec. +# If unsure, say N +REDUCED_DPB_NO_PIC_REORDERING ?=n + +# (4) +# This config, if enabled, enables all the debug traces in +# decoder driver. Enable it only for debug purpose +# Keep it always disabled for release codebase +DEBUG_DECODER_DRIVER ?=n + +# (5) +# This config allows enabling or disabling of MJPEG video +# decoding functionality with IMG VXD Video decoder. If you +# do not want MJPEG decode capability, select N. +# If unsure, select Y +HAS_JPEG ?=y + +# (6) +# This config allows simulation of Error recovery. +# This config is only for testing, never enable it for release build. +ERROR_RECOVERY_SIMULATION ?=n + +# (7) +# This config enables allocation of capture buffers from +# dma contiguous memory. +# If unsure, say Y +CAPTURE_CONTIG_ALLOC ?=y + +#VXD +vxd-dec-y += vxd_core.o + +#PVDEC +vxd-dec-y += vxd_pvdec.o + +#MEM_MGR +vxd-dec-y += ../common/img_mem_man.o ../common/img_mem_unified.o +vxd-dec-y += ../common/imgmmu.o + +#Utilities +vxd-dec-y += ../common/lst.o ../common/dq.o +vxd-dec-y += ../common/resource.o +vxd-dec-y += dec_resources.o +vxd-dec-y += ../common/rman_api.o +vxd-dec-y += pixel_api.o +vxd-dec-y += vdecdd_utils_buf.o +vxd-dec-y += vdecdd_utils.o + +#MMU +vxd-dec-y += ../common/talmmu_api.o +vxd-dec-y += ../common/pool.o +vxd-dec-y += ../common/hash.o +vxd-dec-y += ../common/ra.o +vxd-dec-y += ../common/addr_alloc.o +vxd-dec-y += ../common/work_queue.o +vxd-dec-y += vdec_mmu_wrapper.o + +#DECODER +vxd-dec-y += ../common/pool_api.o ../common/idgen_api.o +vxd-dec-y += hw_control.o +vxd-dec-y += vxd_int.o +vxd-dec-y += translation_api.o +vxd-dec-y += decoder.o +vxd-dec-y += core.o + +#BSPP +vxd-dec-y += swsr.o +vxd-dec-y += h264_secure_parser.o +vxd-dec-y += bspp.o + +#UM INTERFACE & SYSDEV +vxd-dec-y += vxd_dec.o + +vxd-dec-y += vxd_v4l2.o + +ifeq ($(DEBUG_DECODER_DRIVER), y) +ccflags-y += -DDEBUG_DECODER_DRIVER +ccflags-y += -DDEBUG +endif + +ifeq ($(HAS_HEVC),y) +ccflags-y += -DHAS_HEVC +vxd-dec-y += hevc_secure_parser.o +endif + +ifeq ($(HAS_JPEG),y) +ccflags-y += -DHAS_JPEG +vxd-dec-y += jpeg_secure_parser.o +endif + + +ifeq ($(ERROR_CONCEALMENT),y) +ccflags-y += -DERROR_CONCEALMENT +endif + +ifeq ($(REDUCED_DPB_NO_PIC_REORDERING),y) +ccflags-y += -DREDUCED_DPB_NO_PIC_REORDERING +endif + +ifeq ($(ERROR_RECOVERY_SIMULATION),y) +ccflags-y += -DERROR_RECOVERY_SIMULATION +endif + +ifeq ($(CAPTURE_CONTIG_ALLOC),y) +ccflags-y += -DCAPTURE_CONTIG_ALLOC +endif + +obj-$(CONFIG_VIDEO_IMG_VXD_DEC) += vxd-dec.o + +ccflags-y += -I$(srctree)/drivers/staging/media/vxd/common -- 2.17.1 -- This message contains confidential information and is intended only for the individual(s) named. If you are not the intended recipient, you are notified that disclosing, copying, distributing or taking any action in reliance on the contents of this mail and attached file/s is strictly prohibited. Please notify the sender immediately and delete this e-mail from your system. E-mail transmission cannot be guaranteed to be secured or error-free as information could be intercepted, corrupted, lost, destroyed, arrive late or incomplete, or contain viruses. The sender therefore does not accept liability for any errors or omissions in the contents of this message, which arise as a result of e-mail transmission.