diff options
author | Nathan Rossi <nathan.rossi@xilinx.com> | 2013-09-26 15:17:51 +1000 |
---|---|---|
committer | Nathan Rossi <nathan.rossi@xilinx.com> | 2013-09-26 15:17:51 +1000 |
commit | 6efe82fb07d98f190e9b078132526eeadd8cf9fc (patch) | |
tree | 1bbe1c15bf5de6ef3280351375da22ae8ab682f0 /README | |
parent | 684b68e0277d5d8a2498c4281a5df22354585b41 (diff) | |
download | meta-xilinx-6efe82fb07d98f190e9b078132526eeadd8cf9fc.tar.gz |
README: Added details of Known Issues with MicroBlaze
* MicroBlaze has two known toolchain issues, document these issues in
the README
Signed-off-by: Nathan Rossi <nathan.rossi@xilinx.com>
Diffstat (limited to 'README')
-rw-r--r-- | README | 35 |
1 files changed, 35 insertions, 0 deletions
@@ -82,6 +82,41 @@ Booting | |||
82 | Please see the associated README file for each avaliable boot method in the | 82 | Please see the associated README file for each avaliable boot method in the |
83 | 'docs/BOOT.*' files of this layer. | 83 | 'docs/BOOT.*' files of this layer. |
84 | 84 | ||
85 | Known Issues | ||
86 | ============ | ||
87 | |||
88 | MicroBlaze Yocto Built Toolchain fails to compile shadow | ||
89 | -------------------------------------------------------- | ||
90 | There is an issue with the GCC 4.8 toolchain built by Yocto which fails to | ||
91 | correctly built the 'shadow' package due to an assembler error. | ||
92 | |||
93 | {standard input}: Assembler messages: | ||
94 | {standard input}:754: Error: operation combines symbols in different segments | ||
95 | |||
96 | The current workaround for this issue is to build the entire repository | ||
97 | without debug symbols, or to disable debug symbols only for shadow. | ||
98 | |||
99 | e.g. Add the following to local.conf: | ||
100 | DEBUG_FLAGS_pn-shadow = "" | ||
101 | |||
102 | MicroBlaze Linux Kernel 3.8+ and GCC 4.8+ fails to boot | ||
103 | ------------------------------------------------------- | ||
104 | There is a regression in GCC 4.8 that causes a race condition in the kernel. It | ||
105 | occurs due to changes in the optimization and improper handling of certain | ||
106 | branch optimization where delay slots are used. | ||
107 | |||
108 | The error during kernel boot looks similar to: | ||
109 | ------------[ cut here ]------------ | ||
110 | WARNING: at mm/mmap.c:2657 exit_mmap+0x158/0x178() | ||
111 | |||
112 | There are two work arounds for this issue, the first which is recommended is to | ||
113 | use the MicroBlaze external toolchain that is provided by Xilinx SDK or | ||
114 | PetaLinux. | ||
115 | |||
116 | The the second workaround applies to the linux-xlnx only, disable the kernel | ||
117 | configuration "CONFIG_OPTIMIZE_FOR_SIZE". This prevents the compiler from trying | ||
118 | to optimize the delay slots incorrectly. | ||
119 | |||
85 | Configuring External Toolchain | 120 | Configuring External Toolchain |
86 | ============================== | 121 | ============================== |
87 | 122 | ||