1config BR2_PACKAGE_XENOMAI_COBALT_ARCH_SUPPORTS 2 bool 3 default y if BR2_i386 4 default y if BR2_x86_64 5 default y if BR2_powerpc 6 default y if BR2_arm && !BR2_ARM_CPU_ARMV7M && !BR2_ARM_CPU_ARMV8A 7 default y if BR2_aarch64 8 9comment "xenomai needs a glibc or uClibc toolchain w/ threads" 10 depends on BR2_USE_MMU 11 depends on BR2_TOOLCHAIN_HAS_SYNC_4 12 depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_TOOLCHAIN_USES_MUSL 13 14config BR2_PACKAGE_XENOMAI 15 bool "Xenomai Userspace" 16 depends on BR2_USE_MMU 17 depends on BR2_TOOLCHAIN_HAS_SYNC_4 18 depends on BR2_TOOLCHAIN_HAS_THREADS 19 # uses <error.h>, __WORDSIZE and bits/local_lim.h 20 depends on !BR2_TOOLCHAIN_USES_MUSL 21 help 22 Real-Time Framework for Linux 23 http://www.xenomai.org 24 25 Xenomai is split in two parts: a kernel part and an 26 userspace part. 27 28 This package contains the userspace part, which consists 29 mainly in libraries to write userspace real-time programs 30 that interact with the in-kernel Xenomai real-time core. 31 32 For those libraries to work, you need a Xenomai-enabled 33 kernel. This is possible in two ways: 34 - if you compile your kernel with Buildroot, you need to go 35 to Linux Kernel -> Linux Kernel Extensions to enable the 36 Xenomai extension. 37 - if you compile your kernel outside of Buildroot, you need 38 to make sure that it is Xenomai-enabled. 39 40 Finally, if you are using a static /dev, make sure to 41 uncomment the Xenomai entries listed in 42 target/generic/device_table_dev.txt. 43 44if BR2_PACKAGE_XENOMAI 45 46choice 47 bool "Xenomai version" 48 help 49 Make sure that the selected version has a patch for your 50 selected Linux kernel. If it does not, download and select a 51 patch manually with BR2_LINUX_KERNEL_EXT_XENOMAI_ADEOS_PATCH, 52 in the Linux Kernel -> Linux Kernel Extensions menu. 53 54config BR2_PACKAGE_XENOMAI_3_2 55 bool "3.2" 56 57config BR2_PACKAGE_XENOMAI_3_1 58 bool "3.1" 59 60config BR2_PACKAGE_XENOMAI_3_0 61 bool "3.0" 62 depends on !BR2_aarch64 63 64config BR2_PACKAGE_XENOMAI_CUSTOM_VERSION 65 bool "Custom version" 66 67config BR2_PACKAGE_XENOMAI_CUSTOM_TARBALL 68 bool "Custom tarball" 69 70config BR2_PACKAGE_XENOMAI_CUSTOM_GIT 71 bool "Custom Git repository" 72 73endchoice 74 75config BR2_PACKAGE_XENOMAI_CUSTOM_VERSION_VALUE 76 string "Xenomai version" 77 depends on BR2_PACKAGE_XENOMAI_CUSTOM_VERSION 78 79config BR2_PACKAGE_XENOMAI_REPOSITORY 80 string "URL of custom repository" 81 depends on BR2_PACKAGE_XENOMAI_CUSTOM_GIT 82 83config BR2_PACKAGE_XENOMAI_REPOSITORY_VERSION 84 string "Custom repository version" 85 depends on BR2_PACKAGE_XENOMAI_CUSTOM_GIT 86 help 87 Revision to use in the typical format used by Git, i.e a 88 SHA1 or a tag. 89 90config BR2_PACKAGE_XENOMAI_VERSION 91 string 92 default "v3.2.2" if BR2_PACKAGE_XENOMAI_3_2 93 default "v3.1.3" if BR2_PACKAGE_XENOMAI_3_1 94 default "v3.0.13" if BR2_PACKAGE_XENOMAI_3_0 95 default BR2_PACKAGE_XENOMAI_CUSTOM_VERSION_VALUE \ 96 if BR2_PACKAGE_XENOMAI_CUSTOM_VERSION 97 default "custom" if BR2_PACKAGE_XENOMAI_CUSTOM_TARBALL 98 default BR2_PACKAGE_XENOMAI_REPOSITORY_VERSION \ 99 if BR2_PACKAGE_XENOMAI_CUSTOM_GIT 100 101config BR2_PACKAGE_XENOMAI_CUSTOM_TARBALL_URL 102 string "URL of custom tarball" 103 depends on BR2_PACKAGE_XENOMAI_CUSTOM_TARBALL 104 105choice 106 prompt "Xenomai core" 107 default BR2_PACKAGE_XENOMAI_MERCURY 108 help 109 Select the Xenomai core: dual kernel (Cobalt) 110 or native Linux Kernel (Mercury). 111 112config BR2_PACKAGE_XENOMAI_MERCURY 113 bool "Mercury" 114 depends on !BR2_LINUX_KERNEL_EXT_XENOMAI 115 help 116 Select Mercury core for the Xenomai userspace. 117 You want to use it if you have the native Linux Kernel. 118 119config BR2_PACKAGE_XENOMAI_COBALT 120 bool "Cobalt" 121 depends on BR2_PACKAGE_XENOMAI_COBALT_ARCH_SUPPORTS 122 help 123 Select Cobalt core (dual kernel) for the Xenomai 124 userspace. Use this if you use a Xenomai-patched 125 Linux kernel. 126 127 If you want to use Cobalt core, your kernel must have 128 the Adeos and Xenomai patches applied to it. You can 129 add these through the BR2_LINUX_KERNEL_EXT_XENOMAI option 130 in the Linux Kernel Extensions menu. 131endchoice 132 133config BR2_PACKAGE_XENOMAI_ENABLE_SMP 134 bool "Enable SMP support" 135 default y 136 # SMP not supported below armv6 137 depends on !BR2_ARM_CPU_ARMV4 && !BR2_ARM_CPU_ARMV5 138 help 139 This option enables SMP support in Xenomai userspace. 140 141 If this option is turned on while no SMP support is enabled 142 in the kernel, things will still work. However, if SMP is 143 enabled in the kernel but this option is not turned on, 144 Xenomai applications will complain with: 145 146 feature mismatch: missing="smp/nosmp" 147 148 Please refer to this troubleshooting guide for more 149 information: 150 151 http://xenomai.org/troubleshooting-a-dual-kernel-configuration/#feature_mismatch_missing8221smpnosmp8221 152 153config BR2_PACKAGE_XENOMAI_ENABLE_REGISTRY 154 bool "Enable registry" 155 depends on !BR2_STATIC_LIBS # libfuse 156 depends on BR2_TOOLCHAIN_HAS_THREADS # libfuse 157 depends on BR2_USE_MMU # libfuse 158 select BR2_PACKAGE_LIBFUSE 159 help 160 Xenomai APIs can export their internal state through a 161 pseudo-filesystem, whose files may be read to obtain 162 information about the existing real-time objects, such as 163 tasks, semaphores, message queues and so on. 164 165comment "registry needs a toolchain w/ threads, dynamic library" 166 depends on BR2_USE_MMU 167 depends on BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS 168 169config BR2_PACKAGE_XENOMAI_ENABLE_REGISTRY_PATH 170 string "Custom registry root path" 171 depends on BR2_PACKAGE_XENOMAI_ENABLE_REGISTRY 172 help 173 Specify the root path of the registry here. 174 To use the Xenomai default (currently: /var/run/xenomai), 175 leave this option empty. 176 177config BR2_PACKAGE_XENOMAI_ADDITIONAL_CONF_OPTS 178 string "Additional configure options" 179 help 180 Specify any additional options to pass to the configure 181 script here. See Xenomai documentation for details. 182 183config BR2_PACKAGE_XENOMAI_TESTSUITE 184 bool "Install testsuite" 185 help 186 This option allows to install the Xenomai test programs. 187 188config BR2_PACKAGE_XENOMAI_RTCAN 189 bool "RTCan utilities" 190 help 191 This option allows to install the Xenomai RT-CAN utilities. 192 193config BR2_PACKAGE_XENOMAI_ANALOGY 194 bool "Analogy libs and utils" 195 help 196 This option allows to install the Xenomai Analogy utilities 197 and libraries 198 199menu "Skin selection" 200 201config BR2_PACKAGE_XENOMAI_NATIVE_SKIN 202 bool "Alchemy (native) skin" 203 default y 204 help 205 This option allows to install the Alchemy Xenomai skin, 206 previously called 'native' 207 208config BR2_PACKAGE_XENOMAI_POSIX_SKIN 209 bool "POSIX skin" 210 default y 211 help 212 This option allows to install the POSIX Xenomai skin 213 214config BR2_PACKAGE_XENOMAI_PSOS_SKIN 215 bool "pSOS skin" 216 help 217 This option allows to install the pSOS Xenomai skin 218 219config BR2_PACKAGE_XENOMAI_RTAI_SKIN 220 bool "RTAI skin" 221 help 222 This option allows to install the RTAI Xenomai skin 223 224config BR2_PACKAGE_XENOMAI_UITRON_SKIN 225 bool "uITRON skin" 226 help 227 This option allows to install the uITRON Xenomai skin 228 229config BR2_PACKAGE_XENOMAI_VRTX_SKIN 230 bool "VRTX skin" 231 help 232 This option allows to install the VRTX Xenomai skin 233 234config BR2_PACKAGE_XENOMAI_VXWORKS_SKIN 235 bool "VxWorks skin" 236 help 237 This option allows to install the VxWorks Xenomai skin 238 239endmenu 240 241endif 242