[FEATURE] Add support for detecting kernel compatibility

This change adds support for detecting the kernel stack version and
configuration. The stack configuration is stored with a feature flag
variable that could be read by the user stack via the control interface.
The user stack compares the received feature flags and version of the
kernel stack with its expected flags and own kernel version to check
if they are compatible.

For checking the version and features, the command interface of the
control module is enhanced. Therefore, no new communication mechanism
is needed in the control CAL modules for exchanging the data.

Change-Id: I156193912bf5d631bfa950d3c0ee9bba43a32ce9
[TASK] Add CMake macro for listing subdirectories

Change-Id: I5fd04b749ef05c5fb33357a219ee13c2ab584761
[TASK] Add Microblaze MN demo apps

- Add CMake project for demo_mn_embedded on Microblaze
- Add Microblaze MN-hostif demos to the list of available demos

Change-Id: I95353ac16718df8946894cba278d1bb0e73ba614
Signed-off-by: Joerg Zelenka <joerg.zelenka@br-automation.com>
[TASK] Add Microblaze MN PCP driver

- Add CMake project for drv_daemon on Microblaze
- Add Microblaze MN-hostif PCP driver to the list of available drivers
- Add daemon.c for Xilinx Microblaze

Change-Id: Ibbd8bf0ce399b2475e5839b536de1e35a669f8e3
Signed-off-by: Joerg Zelenka <joerg.zelenka@br-automation.com>
[FIX] Fix AVNET S6 MN demo linker scripts

Correctly assign ".local_memory" section to BRAM instance.

Change-Id: I5a24f1e255b993985e3861d8a4a2239a8cd5ff0c
[TASK] Increase local memory size for Xilinx MN designs

The local memory shall be used for performance optimization defined by
targetsection.h.
- LX150T design has 32 kB local memory available
- LX16 design has 16 kB local memory available

Change-Id: I4ab5bdedcf55749274dc63777c4144865299c634