diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2015-01-20 11:04:39 +0100 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2015-01-21 15:00:21 +0100 |
commit | 5071600b2172b5d37c1f5608f1c623143c651058 (patch) | |
tree | c22af1661c5e43e3a0355ffb0b67b2d04899c002 /rtemsbsd | |
parent | zy7_slcr: Import from FreeBSD (diff) | |
download | rtems-libbsd-5071600b2172b5d37c1f5608f1c623143c651058.tar.bz2 |
Add Xilinx Zynq BSP support
Diffstat (limited to 'rtemsbsd')
-rw-r--r-- | rtemsbsd/include/bsp/nexus-devices.h | 32 | ||||
-rw-r--r-- | rtemsbsd/include/machine/rtems-bsd-cache.h | 3 |
2 files changed, 35 insertions, 0 deletions
diff --git a/rtemsbsd/include/bsp/nexus-devices.h b/rtemsbsd/include/bsp/nexus-devices.h index 08574818..d12d9bd9 100644 --- a/rtemsbsd/include/bsp/nexus-devices.h +++ b/rtemsbsd/include/bsp/nexus-devices.h @@ -56,4 +56,36 @@ RTEMS_BSD_DEFINE_NEXUS_DEVICE(smc, 0, RTEMS_ARRAY_SIZE(smc0_res), RTEMS_BSD_DEFINE_NEXUS_DEVICE(fec, 0, 0, NULL); +#elif defined(LIBBSP_ARM_XILINX_ZYNQ_BSP_H) + +#include <bsp/irq.h> + +static const rtems_bsd_device_resource zy7_slcr0_res[] = { + { + .type = RTEMS_BSD_RES_MEMORY, + .start_request = 0, + .start_actual = 0xf8000000 + } +}; + +RTEMS_BSD_DEFINE_NEXUS_DEVICE(zy7_slcr, 0, RTEMS_ARRAY_SIZE(zy7_slcr0_res), + &zy7_slcr0_res[0]); + +static const rtems_bsd_device_resource cgem0_res[] = { + { + .type = RTEMS_BSD_RES_MEMORY, + .start_request = 0, + .start_actual = 0xe000b000 + }, { + .type = RTEMS_BSD_RES_IRQ, + .start_request = 0, + .start_actual = ZYNQ_IRQ_ETHERNET_0 + } +}; + +RTEMS_BSD_DEFINE_NEXUS_DEVICE(cgem, 0, RTEMS_ARRAY_SIZE(cgem0_res), + &cgem0_res[0]); + +SYSINIT_DRIVER_REFERENCE(e1000phy, miibus); + #endif diff --git a/rtemsbsd/include/machine/rtems-bsd-cache.h b/rtemsbsd/include/machine/rtems-bsd-cache.h index 77cc0794..838f730b 100644 --- a/rtemsbsd/include/machine/rtems-bsd-cache.h +++ b/rtemsbsd/include/machine/rtems-bsd-cache.h @@ -27,6 +27,9 @@ #if defined(LIBBSP_ARM_LPC24XX_BSP_H) /* No cache */ +#elif defined(LIBBSP_ARM_XILINX_ZYNQ_BSP_H) + /* With cache, no coherency support in hardware */ + #define CPU_DATA_CACHE_ALIGNMENT 32 #elif defined(LIBBSP_ARM_LPC32XX_BSP_H) /* With cache, no coherency support in hardware */ #include <libcpu/cache.h> |