gstreamer-omap:vstehles-libdce.git
5 years agoDo not init systemHeap to reduce boot time for-alessandro
Vincent Stehlé [Tue, 3 Jul 2012 15:08:10 +0000 (17:08 +0200)]
Do not init systemHeap to reduce boot time

Before this patch, boot time was more than 20s. With this patch, boot time is
less than 5 seconds.

Signed-off-by: Vincent Stehlé <v-stehle@ti.com>
5 years agoAdd load reporting
Vincent Stehlé [Fri, 29 Jun 2012 10:23:32 +0000 (12:23 +0200)]
Add load reporting

Turn on cpu load computation and add a periodic task, which reports the cpu
load in the trace.

Signed-off-by: Vincent Stehlé <v-stehle@ti.com>
5 years agobaseimage: add codecs
Vincent Stehlé [Fri, 6 Jul 2012 10:21:14 +0000 (12:21 +0200)]
baseimage: add codecs

Fix mpeg4vdec name, add H264SVC enc/dec.

Signed-off-by: Vincent Stehlé <v-stehle@ti.com>
5 years agoimpeg4vdec.h: update header master
Alessandro Decina [Thu, 28 Jun 2012 09:27:59 +0000 (09:27 +0000)]
impeg4vdec.h: update header

Matches MPEG4VDEC_TI.DEV.500.V.MPEG4.D.IVAHD.ASP.01.00.06.00

5 years agoSwitch master to rpmsg.
Alessandro Decina [Thu, 28 Jun 2012 08:38:00 +0000 (08:38 +0000)]
Switch master to rpmsg.

Merge -s ours eaa18193f189fc2376c4c00ac21f14b7e82e3277 switching
master to the rpmsg version. The syslink code (old master), is
now in the syslink2 branch.

5 years agoDisplay codec version at create
Vincent Stehlé [Thu, 14 Jun 2012 08:29:39 +0000 (10:29 +0200)]
Display codec version at create

v3: Display encoder version, too (untested).
v2: larger string buffer, makes it work with h264dec.

Signed-off-by: Vincent Stehlé <v-stehle@ti.com>
5 years agoRespond to sample ping
Vincent Stehlé [Tue, 26 Jun 2012 15:57:41 +0000 (17:57 +0200)]
Respond to sample ping

Signed-off-by: Vincent Stehlé <v-stehle@ti.com>
5 years agoFix comments
Vincent Stehlé [Tue, 26 Jun 2012 15:56:40 +0000 (17:56 +0200)]
Fix comments

Signed-off-by: Vincent Stehlé <v-stehle@ti.com>
5 years agoSupport SMP
Vincent Stehlé [Mon, 18 Jun 2012 16:08:15 +0000 (18:08 +0200)]
Support SMP

- Fix SMP define
- Enable use of smp platforms with $FOR_SMP environment variable.

Signed-off-by: Vincent Stehlé <v-stehle@ti.com>
5 years agoIgnore lib and baseimage
Vincent Stehlé [Wed, 30 May 2012 12:00:41 +0000 (14:00 +0200)]
Ignore lib and baseimage

Signed-off-by: Vincent Stehlé <v-stehle@ti.com>
5 years agoMerge remote-tracking branch 'rob/rpmsg' into rpmsg
Alessandro Decina [Tue, 26 Jun 2012 18:19:31 +0000 (18:19 +0000)]
Merge remote-tracking branch 'rob/rpmsg' into rpmsg

5 years agolibdce: fix refcounting in init/deinit
Alessandro Decina [Tue, 15 May 2012 10:07:11 +0000 (10:07 +0000)]
libdce: fix refcounting in init/deinit

5 years agoAdd XDM_MEMTYPE_BO_OFFSET
Alessandro Decina [Wed, 9 May 2012 18:47:17 +0000 (18:47 +0000)]
Add XDM_MEMTYPE_BO_OFFSET

XDM_MEMTYPE_BO_OFFSET can be used in VIDDEC3_process outBufs to
signal that a buffer descriptor denotes an offset to the bo
passed in the first descriptor. Useful for example to decode NV12
into a single bo.

5 years agoAdd dce_get_fd() to get the drm fd
Alessandro Decina [Wed, 9 May 2012 18:45:35 +0000 (18:45 +0000)]
Add dce_get_fd() to get the drm fd

This is needed to be able to share the fd opened by dce_init

5 years agoUpdate firmware image
Vincent Stehlé [Tue, 5 Jun 2012 16:50:39 +0000 (18:50 +0200)]
Update firmware image

With this image, we can decode h264 video on OMAP5 with kernel 3.4.
(ducati-build commit: d5f49bdcd65412c52372aedea1cee47284f19ec0)

Signed-off-by: Vincent Stehlé <v-stehle@ti.com>
5 years agoducati: reports mem stats on codec create/delete instead of each buffer alloc
Nicolas Dechesne [Sat, 26 May 2012 19:44:44 +0000 (21:44 +0200)]
ducati: reports mem stats on codec create/delete instead of each buffer alloc

Signed-off-by: Nicolas Dechesne <n-dechesne@ti.com>
5 years agoducati: create a BIOS startup function with dce_init()
Nicolas Dechesne [Sat, 26 May 2012 19:10:58 +0000 (21:10 +0200)]
ducati: create a BIOS startup function with dce_init()

Configure ti.dce so that it automatically registers a startup function
when it's being used, so that the base image that uses DCE does not need
to make the call, it's managed automagically.

As such, dce_init() will be called when BIOS_start() is called.

Signed-off-by: Nicolas Dechesne <n-dechesne@ti.com>
5 years agoducati: removed un-needed references to sysbios-rpmsg old rsc table
Nicolas Dechesne [Sat, 26 May 2012 19:09:03 +0000 (21:09 +0200)]
ducati: removed un-needed references to sysbios-rpmsg old rsc table

Signed-off-by: Nicolas Dechesne <n-dechesne@ti.com>
5 years agoducati: split ti.dce into a lib and a separate baseimage
Nicolas Dechesne [Sat, 26 May 2012 17:04:40 +0000 (19:04 +0200)]
ducati: split ti.dce into a lib and a separate baseimage

The 'package' ti.dce both had the DCE code, as well as the
baseimage code (BIOS cfg, main(), ...). With this change we split the
DCE code from the baseimage. there is now:
 - ti.dce
 - ti.dce.baseimage

that will allow a simpler reuse of ti.dce into other base images

there is still some clean up that can be done in the base image to move
the thread creation, and some config in ti.dce, and this will be done
in further commits. This commit only changes the file 'location' without
changing any implementation detail.

Signed-off-by: Nicolas Dechesne <n-dechesne@ti.com>
5 years agoducati: filter out un-necessary profiles in config.bld
Nicolas Dechesne [Sat, 26 May 2012 17:00:09 +0000 (19:00 +0200)]
ducati: filter out un-necessary profiles in config.bld

Signed-off-by: Nicolas Dechesne <n-dechesne@ti.com>
5 years agoSet HDVICP2_PARAMS.resetControlAddress dynamically based on chipset_id
Rob Clark [Fri, 11 May 2012 23:19:19 +0000 (18:19 -0500)]
Set HDVICP2_PARAMS.resetControlAddress dynamically based on chipset_id

It isn't enough that we use the correct address.. HDVICP2 needs to as
well.

Conflicts:

ducati/ti/dce/ivahd.c
firmware/ducati-m3-core0.xem3

5 years agoducati: remove call to VirtQueue_startup() in startup
Nicolas Dechesne [Wed, 16 May 2012 16:27:21 +0000 (18:27 +0200)]
ducati: remove call to VirtQueue_startup() in startup

This is now taken care by rpmsg after moving to 1.20+

Signed-off-by: Nicolas Dechesne <n-dechesne@ti.com>
5 years agoducati: initial build conf support for SMP BIOS
Nicolas Dechesne [Fri, 11 May 2012 18:10:01 +0000 (20:10 +0200)]
ducati: initial build conf support for SMP BIOS

Signed-off-by: Nicolas Dechesne <n-dechesne@ti.com>
5 years agoducati: implement VirtToPhys using new sysbios-rpmsg API
Nicolas Dechesne [Tue, 15 May 2012 10:45:38 +0000 (12:45 +0200)]
ducati: implement VirtToPhys using new sysbios-rpmsg API

With sysbios-rpmsg >= 1.10+ there is a new resource table mechanism,
and we need to update our VirtToPhys function.

Fortunately, this API is now implemented and provided by rpmsg.

Signed-off-by: Nicolas Dechesne <n-dechesne@ti.com>
5 years agoducati: dce: Remove resource table trace print from image
Nicolas Dechesne [Fri, 11 May 2012 13:10:28 +0000 (15:10 +0200)]
ducati: dce: Remove resource table trace print from image

In order to have the linker include the resource table in the
baseimage, the resource variable needs to be used in some form.
Otherwise the optimization in the linker detects that this is a
non-referenced variable and removes it from the baseimage. To
alleviate this, a dummy trace was used to make sure the resource
table section is present in the firmware binary.

The new IpcMemory module inherently adds this trace, and so the
trace in DCE image is no longer required and is removed.

Signed-off-by: Nicolas Dechesne <n-dechesne@ti.com>
5 years agoAdd download link for compiler
Rob Clark [Tue, 29 May 2012 08:11:07 +0000 (16:11 +0800)]
Add download link for compiler

5 years agoOnly call reloc when reloc_len is non-zero
Vincent Stehlé [Tue, 22 May 2012 14:01:22 +0000 (16:01 +0200)]
Only call reloc when reloc_len is non-zero

Signed-off-by: Vincent Stehlé <v-stehle@ti.com>
5 years agolibdce: fix refcounting in init/deinit rpmsg
Alessandro Decina [Tue, 15 May 2012 10:07:11 +0000 (10:07 +0000)]
libdce: fix refcounting in init/deinit

5 years agoSet HDVICP2_PARAMS.resetControlAddress dynamically based on chipset_id
Rob Clark [Fri, 11 May 2012 23:19:19 +0000 (18:19 -0500)]
Set HDVICP2_PARAMS.resetControlAddress dynamically based on chipset_id

It isn't enough that we use the correct address.. HDVICP2 needs to as
well.

5 years agoAdd XDM_MEMTYPE_BO_OFFSET
Alessandro Decina [Wed, 9 May 2012 18:47:17 +0000 (18:47 +0000)]
Add XDM_MEMTYPE_BO_OFFSET

XDM_MEMTYPE_BO_OFFSET can be used in VIDDEC3_process outBufs to
signal that a buffer descriptor denotes an offset to the bo
passed in the first descriptor. Useful for example to decode NV12
into a single bo.

5 years agoAdd dce_get_fd() to get the drm fd
Alessandro Decina [Wed, 9 May 2012 18:45:35 +0000 (18:45 +0000)]
Add dce_get_fd() to get the drm fd

This is needed to be able to share the fd opened by dce_init

5 years agomemsrv: update RCM MemMgr_Alloc params syslink2
Alessandro Decina [Tue, 20 Mar 2012 16:29:52 +0000 (17:29 +0100)]
memsrv: update RCM MemMgr_Alloc params

Update to reflect a change in RCM MemMgr_Alloc params. The old
GLP1.4 compatible layout is kept if MEMMGR_1_4 is defined.

5 years agoResurrect MemMgr RCM support.
Alessandro Decina [Tue, 6 Mar 2012 14:57:53 +0000 (15:57 +0100)]
Resurrect MemMgr RCM support.

5 years agoupdate firmware image
Rob Clark [Fri, 3 Feb 2012 17:17:33 +0000 (11:17 -0600)]
update firmware image

5 years agoadd dynamic buffer relocation support
Rob Clark [Fri, 3 Feb 2012 17:17:00 +0000 (11:17 -0600)]
add dynamic buffer relocation support

5 years agoUpdate firmware image
Rob Clark [Thu, 2 Feb 2012 00:55:06 +0000 (18:55 -0600)]
Update firmware image

5 years agoMulti-OMAP support
Rob Clark [Thu, 2 Feb 2012 00:54:49 +0000 (18:54 -0600)]
Multi-OMAP support

Configure base addresses, dividers, etc, based on OMAP variant.

5 years agoWorkaround for bootup crash when AMMU is enabled
Rob Clark [Thu, 2 Feb 2012 00:43:47 +0000 (18:43 -0600)]
Workaround for bootup crash when AMMU is enabled

Work-around for .const loading issues with MPEG4/VC1 codecs.. move AMMU
tables out of .const into .txt so that they have valid data when AMMU
is programmed (which happens before cinit initializes rw sections..
which is what .const becomes due to rw var mistakenly placed on .const

5 years agocleanup cfg file
Rob Clark [Thu, 2 Feb 2012 00:40:37 +0000 (18:40 -0600)]
cleanup cfg file

Some of this is handled by IpcCommon.cfg.xs.. remove redundant and/or
unneeded bits.

5 years agoFix potential crash at bootup
Rob Clark [Mon, 30 Jan 2012 20:03:37 +0000 (14:03 -0600)]
Fix potential crash at bootup

Don't immediately take ivahd out of reset at boot.

5 years agoUpdate firmware image
Rob Clark [Thu, 26 Jan 2012 17:31:07 +0000 (11:31 -0600)]
Update firmware image

5 years agoadd connect message
Rob Clark [Thu, 26 Jan 2012 15:37:28 +0000 (09:37 -0600)]
add connect message

Connect message sets debug log level (so firmware does not have to be
rebuilt to enable logging), and chipset-id (eventually to be used to
handle different base addresses for different generations of OMAP,
to avoid the need for different firmware images in some cases).

5 years agoremove test
Rob Clark [Sun, 16 Oct 2011 20:57:25 +0000 (15:57 -0500)]
remove test

Moving test to omapdrmtest tree, to be able to re-use display and other
utility code for displaying video directly with drm plane (overlay) or
with dri2 video.

The v4l2/camera util code and fill pattern generation should also make
it easier to add an encoder test in the future.

5 years agoducati: update for only core0 (sysm3) builds
Rob Clark [Thu, 26 Jan 2012 15:37:15 +0000 (09:37 -0600)]
ducati: update for only core0 (sysm3) builds

Currently upstream remoteproc/rpmsg only supports first core.  Since
we don't really need both cores, just move everything over to first
core.  Requires 'adjust memory maps to move everything over to core0'
commit in sysbios-rpmsg tree.

5 years agobegin porting linux/client side
Rob Clark [Thu, 26 Jan 2012 20:00:05 +0000 (14:00 -0600)]
begin porting linux/client side

No longer are there syslink or memmgr userspace libs.  Instead libdrm
and libdrm_omap are utilized.

6 years agoducati: add compile time flag to disable requesting slpm_APPM3 if DCE_REQUEST_APPM3==0
Alessandro Decina [Thu, 8 Dec 2011 11:07:19 +0000 (12:07 +0100)]
ducati: add compile time flag to disable requesting slpm_APPM3 if DCE_REQUEST_APPM3==0

Helps integrating DCE in firmware images where slpm_APPM3 is already acquired.

6 years agoFix proxy init/deinit refcount
Alessandro Decina [Thu, 3 Nov 2011 04:22:05 +0000 (05:22 +0100)]
Fix proxy init/deinit refcount

Fixes crashes when using more than one engine

6 years agoRework the resource cleanup code
Alessandro Decina [Thu, 3 Nov 2011 04:19:39 +0000 (05:19 +0100)]
Rework the resource cleanup code

Fixes m3 crashes when cleaning up for processes that have both encoders and
decoders instantiated

6 years agoComment out some HDVICP_Reset code that causes hangs switching codec instances.
Alessandro Decina [Wed, 2 Nov 2011 01:23:40 +0000 (02:23 +0100)]
Comment out some HDVICP_Reset code that causes hangs switching codec instances.

Fixes hangs when transcoding or using different decoders/encoders in the same
pipeline.

6 years agobase_image: load mpeg4enc codec
Alessandro Decina [Fri, 21 Oct 2011 10:46:41 +0000 (12:46 +0200)]
base_image: load mpeg4enc codec

6 years ago..and install the mpeg4enc header
Alessandro Decina [Fri, 21 Oct 2011 10:02:38 +0000 (12:02 +0200)]
..and install the mpeg4enc header

6 years agoAdd mpeg4enc header
Alessandro Decina [Fri, 21 Oct 2011 09:57:01 +0000 (11:57 +0200)]
Add mpeg4enc header

6 years agodce_app_m3.cfg: uncomment use of ti.omap.deh.Deh again
Alessandro Decina [Thu, 20 Oct 2011 15:59:00 +0000 (17:59 +0200)]
dce_app_m3.cfg: uncomment use of ti.omap.deh.Deh again

6 years agoWorkaround for encoders that need getBufferFxn != NULL
Alessandro Decina [Thu, 20 Oct 2011 15:54:59 +0000 (17:54 +0200)]
Workaround for encoders that need getBufferFxn != NULL

6 years agodce-test: link to libtimemmgr
Alessandro Decina [Thu, 20 Oct 2011 15:49:03 +0000 (17:49 +0200)]
dce-test: link to libtimemmgr

6 years agoAdd h264enc header
Alessandro Decina [Wed, 19 Oct 2011 11:13:39 +0000 (13:13 +0200)]
Add h264enc header

6 years agoAdd VIDENC2 headers
Alessandro Decina [Wed, 19 Oct 2011 11:13:18 +0000 (13:13 +0200)]
Add VIDENC2 headers

6 years agoInitial VIDENC2 implementation
Alessandro Decina [Thu, 6 Oct 2011 14:53:29 +0000 (16:53 +0200)]
Initial VIDENC2 implementation

6 years agoinitial setup of ducati build for dce-rpmsg
Rob Clark [Sun, 16 Oct 2011 16:52:55 +0000 (11:52 -0500)]
initial setup of ducati build for dce-rpmsg

Please note that the build instructions change (see README).  Now
both sysm3 and appm3 images are built.

6 years agoadd videnc2 header for encoders
Rob Clark [Sat, 8 Oct 2011 20:16:40 +0000 (15:16 -0500)]
add videnc2 header for encoders

6 years agoupdate README
Rob Clark [Sun, 2 Oct 2011 15:09:14 +0000 (10:09 -0500)]
update README

re-sync with wiki page

6 years agotest: add "-1" arg to allocate 1D output buffers
Rob Clark [Sun, 3 Jul 2011 18:09:03 +0000 (13:09 -0500)]
test: add "-1" arg to allocate 1D output buffers

If first arg is "-1" then 1D "paged mode" buffers will be used for
decoder output.

6 years agoFix IVC1VDEC_Status definition
Alessandro Decina [Mon, 12 Sep 2011 10:02:20 +0000 (12:02 +0200)]
Fix IVC1VDEC_Status definition

6 years agoUpdate codec headers
Alessandro Decina [Wed, 31 Aug 2011 15:32:50 +0000 (17:32 +0200)]
Update codec headers

6 years agodce_app_m3.cfg: update heap sizes to match the new memory layout
Alessandro Decina [Mon, 5 Sep 2011 09:05:34 +0000 (11:05 +0200)]
dce_app_m3.cfg: update heap sizes to match the new memory layout

6 years agoducatiplatform.xs: update to match the glp1.4 memory layout
Alessandro Decina [Mon, 5 Sep 2011 09:03:42 +0000 (11:03 +0200)]
ducatiplatform.xs: update to match the glp1.4 memory layout

6 years agodce_app_m3.cfg: update linker section mappings
Alessandro Decina [Mon, 5 Sep 2011 07:40:52 +0000 (09:40 +0200)]
dce_app_m3.cfg: update linker section mappings

6 years agoducati: fix incorrect allocation of non-tiled requests
Rob Clark [Sun, 26 Jun 2011 22:11:46 +0000 (17:11 -0500)]
ducati: fix incorrect allocation of non-tiled requests

sizeDim1 is only used for 2d requests.

6 years agotest: use base class params
Rob Clark [Sun, 26 Jun 2011 18:39:09 +0000 (13:39 -0500)]
test: use base class params

Don't use codec specific derived structs, since formats may change
over time and we don't need to set any h264 specific settings.

6 years agofix pkg-config dependencies
Rob Clark [Sun, 26 Jun 2011 18:30:52 +0000 (13:30 -0500)]
fix pkg-config dependencies

6 years agoupdate firmware
Rob Clark [Thu, 23 Jun 2011 15:24:27 +0000 (10:24 -0500)]
update firmware

These pre-built images work with ubuntu 11.04 (or probably any kernel
with syslink-2.0 and memmgr-2.0)

6 years agoadd files to build ducati (m3) side firmware
Rob Clark [Thu, 23 Jun 2011 02:53:10 +0000 (21:53 -0500)]
add files to build ducati (m3) side firmware

6 years agoremove ducati submodule
Rob Clark [Thu, 12 May 2011 19:14:30 +0000 (14:14 -0500)]
remove ducati submodule

Will be moving this in tree now that codecs are released.  See:

http://software-dl.ti.com/dsps/dsps_public_sw/codecs/HDVICP2/index_FDS.html

6 years agofix leak in heap used by codecs
Rob Clark [Sun, 9 Jan 2011 23:31:53 +0000 (17:31 -0600)]
fix leak in heap used by codecs

A bug in the deallocation function resulted that memory was not actually
freed properly, causing eventual exhaustion of heap.

6 years agoadd ducati and IVAHD power management
Rob Clark [Sun, 9 Jan 2011 19:04:32 +0000 (13:04 -0600)]
add ducati and IVAHD power management

6 years agosome trace cleanups, and update HDVICP
Rob Clark [Sun, 2 Jan 2011 19:12:35 +0000 (13:12 -0600)]
some trace cleanups, and update HDVICP

Updated HDVICP fixes some issues seen with realvideo codec.

6 years agoupdate realvdec codec
Rob Clark [Thu, 23 Dec 2010 01:21:55 +0000 (19:21 -0600)]
update realvdec codec

6 years agoadd missing Ipc_destroy() call at shutdown
Rob Clark [Thu, 23 Dec 2010 00:08:20 +0000 (18:08 -0600)]
add missing Ipc_destroy() call at shutdown

6 years agoupdates for latest h264dec
Rob Clark [Thu, 16 Dec 2010 01:08:23 +0000 (19:08 -0600)]
updates for latest h264dec

Additional parameters to set, and fix for width/height that is not a
multiple of 16.

7 years agoupdate h264dec, realvideo, mpeg4dec
Rob Clark [Sat, 11 Dec 2010 21:03:39 +0000 (15:03 -0600)]
update h264dec, realvideo, mpeg4dec

7 years agoadd mpeg2vdec
Rob Clark [Sat, 4 Dec 2010 03:57:25 +0000 (21:57 -0600)]
add mpeg2vdec

7 years agoresource cleanup
Rob Clark [Tue, 30 Nov 2010 02:53:44 +0000 (20:53 -0600)]
resource cleanup

Support to automatically cleanup after apps that don't exit properly,
crash, etc.

7 years agofix crash in VIDDEC3_delete
Rob Clark [Sun, 28 Nov 2010 20:37:00 +0000 (14:37 -0600)]
fix crash in VIDDEC3_delete

7 years agofix typo
Rob Clark [Sun, 28 Nov 2010 20:36:38 +0000 (14:36 -0600)]
fix typo

7 years agodo initialization/cleanup on Engine_open()/Engine_close()
Rob Clark [Sun, 28 Nov 2010 19:30:53 +0000 (13:30 -0600)]
do initialization/cleanup on Engine_open()/Engine_close()

rather than via constructor/destructor functions

7 years agoAdding sysm3 image too
Rob Clark [Sun, 28 Nov 2010 19:11:40 +0000 (13:11 -0600)]
Adding sysm3 image too

This can be build from syslink public git tree, so it isn't strictly
required.  But is provided for convenience in case you don't feel like
setting up the toolchain and dependencies to build syslink.

7 years agoDisable debug traces by default
Rob Clark [Sun, 28 Nov 2010 19:01:19 +0000 (13:01 -0600)]
Disable debug traces by default

7 years agoupdates for L24.11
Rob Clark [Sun, 28 Nov 2010 04:51:14 +0000 (22:51 -0600)]
updates for L24.11

TILER allocations that used to be proxied via syslink_daemon now are
handled by the linux side client by way of a memsrv RcmServer.  This causes
any allocations done by codec to be recovered when the libdce process
exits.

It would be nicer if syslink provided a memsrv via a shared library so we
didn't have to copy all that code into this tree.. but until then, memsrv.c
is a hacked up variant of one of the syslink sample apps.

7 years agoadd more codecs
Rob Clark [Thu, 25 Nov 2010 23:09:26 +0000 (17:09 -0600)]
add more codecs

7 years agoadd mpeg4dec codec
Rob Clark [Thu, 25 Nov 2010 19:06:19 +0000 (13:06 -0600)]
add mpeg4dec codec

7 years agoinitial commit
Rob Clark [Thu, 25 Nov 2010 00:14:54 +0000 (18:14 -0600)]
initial commit