[TASK] Add target specific macros for I/O and cache handling

Add target specific macros for
- IO read and write
- Data cache flush and invalidate
- Memory barrier

Change-Id: I447904c1ab246589e23133b27eebd8c59a18f192
[TASK] Add data cache handling for shared memory regions

Add data cache invalidate and flush to PDO triple buffer shared memory
and circular buffer. This change is needed to maintain cache coherency
between kernel and user layers.

Change-Id: I8ec84d9cff0992ee7e199c7d1bec560daee23f56
[TASK] Revise Xilinx Microblaze download elf script

Update download-elf scripts to download host and pcp application
for dual processor design (e.g. lx150t board).

Change-Id: I606e4423d43fc181f0d543cc1f2218e2f71948dc
Signed-off-by: Joerg Zelenka <joerg.zelenka@br-automation.com>
[TASK] Update sections for Xilinx Microblaze MN

Update functions to be placed in local memory for Xilinx Microblaze MN.

Change-Id: Idcc92f841087e9f5af0f763f163ac45d32bd4d4d
Signed-off-by: Joerg Zelenka <joerg.zelenka@br-automation.com>
[FIX] Add critical section to edrv-openmac release Rx buffer

The openMAC driver function omethPacketFree requires uninterrupted
access in order to avoid corruption of the Rx buffer queues.

Change-Id: I0c99b0e77e3dde92cd7d6e3fe5f430bcd003908e
[FIX] Fix AXI host interface ipcore PDO GUI settings

Remove RPDO and TPDO GUI parameters and add single PDO parameter
to be in line with the ipcore scripts.

Change-Id: Idb9247f106b6907dbd0059fa0404da1e8eca7bee
[FIX] Fix Xilinx host interface header file generation

This fix is necessary to avoid C compiler warnings caused by the
generated host interface header file.

Change-Id: I221d65bfac04c31979425bd8b90f7ecf8ab5f4e1
[FIX] Fix initialization of process image

The process image is uninitialized until the application
uses it. This may be dangerous, therefore this fix initializes
the process image with 0.

This change is based on change for V1.08.4 from
Romain Naour <romain.naour@openwide.fr>

Change-Id: I9e69dbe6cc66781ce319016430fe4c64206df5fc
[FIX] Fix typos in 00000000_POWERLINK_CiA302-4_MN.xdd

The xdd was unusable with openCONFIGURATOR due to duplicate 0x20
subindexes and missing 0x2E subindexes.

Based on change for V1.08.4 from:
Romain Naour <romain.naour@openwide.fr>

Change-Id: I3477cbb9f5ebae870e5eb76ec7c9b20e01a44d18
[FIX] Fix access rights in obdmacro.h

This fix changes access rights for sub-index 0 for macro
OBD_RAM_INDEX_RAM_ARRAY_ALT and OBD_RAM_INDEX_RAM_PDO_MAPPING.
This is necessary to set storage attribute (e.g. kEplObdAccSRW) for
sub-index 0 too. It is needed if store/restore support is
implemented.

The change is based on change for V1.08.4 from
Daniel Krueger <daniel.krueger@systec-electronic.com>

Change-Id: Ib95ce216eb31874d607b5cd6f04c8e27eef60edc
[TASK] Extend PDO mapping subindexes (objects 0x16xx and 0x1Axx)

The mapping objects in 0x16xx and 0x1Axx are extended up to 0xFE.
This is done by replacing the discrete subindex definition with
macro OBD_RAM_INDEX_RAM_PDO_MAPPING.

The commit fixes errors with big configurations where more than 40
objects per CN are mapped.

The change is based on change for V1.08.4 from
Romain Naour <romain.naour@openwide.fr>
Daniel Krueger <daniel.krueger@systec-electronic.com>

Change-Id: Ifaacf1be3f4b6390eaa82321c0955f1fe9e9866e
[FIX] Fix 8255x Edrv NULL pointer crash

- Modify pci_unmap_single function to free temporary address
  of the dma buffer instead of NULL address.
- Initialize TailTxDesc and HeadTxDesc to zero to avoid corruption.
- Set up Rx filtering for local MAC after the mac address
  initialization to accept unicast packets directed to local MAC.
This change is based on the fix for null pointer issue in V1.08.5

Signed-off-by: Avinash Alfred <avinash.a@kalycito.com>

Josef Baumgartner <josef.baumgartner@br-automation.com>
- Clean up coding style issues

Signed-off-by: Josef Baumgartner <josef.baumgartner@br-automation.com>

Change-Id: Ie74e1fdc0067c70f12067d9a35f20623c8bd99ab
[FIX] Fix doxygen issues

Change-Id: I4f7982e57257f18875b03424f032b9257e43ce3d
[FIX] Ensure that ctrlk module is initialized/deinitialized

The initialization and deinitialization of the ctrlk module was missing
for the single process solution. Now, ctrlk_init() and ctrlk_exit()
is called in the ctrlucal-direct module.

Change-Id: I9268c1e7d1e4d07a7e3bcbf2e4893fa62efbbada
[FIX] Fix C compiler warnings

- Fix C compiler warnings caused by the cache mem read, write,
  flush and invalidate operation
- Fix missing header files in obdcdc.c and hostlib_microblaze.h file
- Fix empty 'If' warnings for release mode compilation
- Update the invalid irq_id for Microblaze to greater than the
  maximum possible irq id.

Change-Id: I61ef99d00408420adb6a7a81ed4f88bb6ef31ae9
Signed-off-by: Joerg Zelenka <joerg.zelenka@br-automation.com>
[FIX] Fix MN hostif app stack library

- Add memory map sources in hostif MN stack library

Change-Id: I59ad2439d3e020cb858ca4e8964598b9b66a31f7
Signed-off-by: Joerg Zelenka <joerg.zelenka@br-automation.com>
[FIX] Fix warning in Linux driver

Change-Id: Idebd6c02c2c34a7975d27bb3ef52fb09516e8e2a
[FEATURE] Add API event for default gateway change

This feature introduces an API event which is triggered when the default
gateway object (0x1E40/5) is changed.

Change-Id: Idd074984af3de888479f452a17d06560587cf2f5
[TASK] Change ARP demo send request function interface

Change arp_sendRequest function parameter to target IP address. This
enables to send an ARP request to any IP address.

Change-Id: I587022dfebc86bb01c2df575c9c12ba5ac551093
[FEATURE] Add default gateway handling in embedded demos

- Embedded demos handle API event for changed default gateway
- Add default gateway setter in ARP demo
- ARP reply from default gateway is recognized

Change-Id: I6c143d24ed09714ea391e109588fffaa296aadd2