Revert "DEH: Improve the detection logic for OMAP5 ES 2.x"

This reverts commit 227b625f4e5ab28f9b9167639eacc7325546cc41.

The temporary patch that added the additional logic has been
reverted to restore functionality properly for all OMAP4 and
OMAP5 silicon versions.

Signed-off-by: Suman Anna <s-anna@ti.com>
Revert "Build: Remove building for core1 platforms"

This reverts commit 17614baf51e89874f750e672495a0d2ccb33d392.

The IPU Core1 platforms have been added back to the possible
target platform list in order to bring back the support for
booting the two IPU cores in a non-SMP mode.

The latest host-side software expects a single ELF image for
the IPU cores, so this will be achieved by developing a new
utility that will combine the two ELF base images into a
suitable single ELF image.

Signed-off-by: Suman Anna <s-anna@ti.com>
IPC: Redefine VirtQueue ids for IPU Core1 to support non-SMP

The indices for IPU Core1/Appm3 have been moved far apart in a
previous patch,
  c2a1808 "IPC: Redefine VirtQueue ids sequentially for each processor"
as it was expected to be used only in a SMP-mode.

These indices have been changed back to their older values of 2 and
3 so that the Core1 can be run alongside Core0 in a non-SMP mode.
These values differ from the current philosophy of starting the
indices from 0 for each processor. These values are chosen since
Core1 will still be booted together with the Core0 processor - the
two processors are treated as a single entity by the host-side
software.

Signed-off-by: Suman Anna <s-anna@ti.com>
Resources: Add trace1 and vdev for AppM3 in non-SMP

This patch adds the additional trace and virtio device entries
into the resource table, necessary to enable the IPU Core1
processor to be booted in a non-SMP mode.

The trace entry value for Core1 is currently hard-coded and is
expected to be fixed up in the gencmbelf utility, to support a
dynamic trace address for Core1.

Signed-off-by: Suman Anna <s-anna@ti.com>
Utils: Add a new gencmbelf utility to combine two ELF images

A new utility, called "gencmbelf", is added that combines two non-SMP
IPU ELF images into a suitable semi-standard single ELF image to be
used instead of a single SMP ELF image.

The utility requires that the input images are completely stripped of
any debug or symbol data info, as the utility is currently not designed
to combine these data. The generated output file is an ELF image and
can be passed to the readelf utility to retrieve information just like
any other ELF file.

This utility is designed for the current ELF images built with or for
sysbios-rpmsg, and not a generic utility.

Signed-off-by: Suman Anna <s-anna@ti.com>
Utils: Update genrprc utility to invoke gencmbelf

The genrprc utility has been updated to invoke gencmbelf
utility to generate a combined ELF image, using stripped
versions of the passed in ELF images, but only after
retrieving the needed symbols from the input files. The
syntax is same as the previous version, but all the input
and output files are expected to the ELF M3 files.

These symbols are retrieved from Core1 image file and
used for updating the associated entries in the resource
table which is present only in Core0 image. Currently,
only the symbols needed for the Core1 trace entry are
retrieved.

Signed-off-by: Suman Anna <s-anna@ti.com>
Build: Generate default ELF binaries for both SMP & non-SMP modes

The build is updated to automatically generate the desired output
ELF binaries for both SMP and non-SMP modes for OMAP4 & OMAP5 platforms.
The SMP-mode and non-SMP DSP binaries are simply symbol and debug info
stripped versions of the actual ELF base-images. The non-SMP IPU binaries
use the genrprc script which internally invokes the gencmbelf utility
to generate a single combined ELF image.

Signed-off-by: Suman Anna <s-anna@ti.com>
Utils: Update gencmbelf utility to fixup Core1 resources

The gencmbelf utility generates a combined ELF image using two ELF
images built for IPU Core0 & Core1. The current design for non-SMP
support has the resource table section present only in Core0 image,
including entries that are pertinent only to Core1. There is no
way the relevant information could be plugged into Core0 image at
build time.

The gencmbelf utility is updated to take an additional argument set
constructed using standard ELF utilities to parse the Core1 image.
These new tags are used to fix up the resource table section during
the creation of the combined ELF image.

The only resource that can be customized on Core1 currently is the
trace address and size. The genrprc script will be updated to
retrieve these values and invoke the gencmbelf utility accordingly.

Signed-off-by: Suman Anna <s-anna@ti.com>
Utils: Update genrprc utility to pass additional arguments

The genrprc utility has been updated to invoke gencmbelf
utility with additional arguments pertinent to Core1 image
for properly updating the associated entries in the resource
table. The arguments are generated by using standard ELF
utilities and looking up specific symbols/sections.

The additional arguments include only the trace entries
(address & size for each) as that is the only changeable
resource for Core1 present in the resource table currently.

Signed-off-by: Suman Anna <s-anna@ti.com>
Revert "Resources: Define memory region type for carveout entries"

This reverts commit 7c6349ba5dddddf10e082d7180ef422505623928.
Rework core0 memory map for DCE core0 image

Signed-off-by: Nicolas Dechesne <n-dechesne@ti.com>
Hack! Align OMAP5 IPU addresses on OMAP4

Signed-off-by: Vincent Stehlé <v-stehle@ti.com>