Nios® II Embedded Design Suite (EDS)
Support for Embedded Development Tools, Processors (SoCs and Nios® II processor), Embedded Development Suites (EDSs), Boot and Configuration, Operating Systems, C and C++
Intel Support hours are Monday-Fridays, 8am-5pm PST, except Holidays. Thanks to our community members who provide support during our down time or before we get to your questions. We appreciate you!

Need Forum Guidance? Click here
Search our FPGA Knowledge Articles here.
12409 Discussions

uClinux hangs at while booting

Honored Contributor II

Hi all, 


I have a zImage that works fine on my development board (3c120 DSP KIT). I'm not using the device tree approach but the older one, at this point we have no enough time to switch to device tree. Now I have to rebuilt this image for another custom board which has the same FPGA, a SDRAM ( 16 MB ), a SPI Flash and some other peripherals. I have compiled again the kernel with the new .ptf file and I've create the new zImage ( 3.4 MB ). The problem is that the board hangs after 


"Uncompressing Linux Kernel...ok, booting the kernel" 




I know that there is a compression ratio of about 1:2, so I think that the uncompressed Linux image is large about 7 MB. The link offset I set is 0x00A00000, SDRAM Base address is 0x02000000.  


I hope you can help me...thanks in advance 


P.S. the sof works fine with a simple auto-generated .elf file (Hello World and Memory Test) without OS
0 Kudos
2 Replies
Honored Contributor II

After some tests on RAM, I figured out that there were problems on RAM phase shift. I was not able to read/write on all the addresses of the RAM. So I changed the phase shift value and now all seems to work fine. 


Furthermore, there is another problem with altera triple speed ethernet driver (SLS). When I select this driver within the kernel uClinux is not able to boot and presents the same problem I've already described (it hangs after "ok, booting the kernel"); 


I hope this will be useful for someone
Honored Contributor II

Hi again, 


I've solved the problem related to Altera TSE driver. It was due to the addresses of the two DMA I put into the SoPC. It seems that, if we use uClinux with TSE, sgdma_rx and sgdma_tx have to be spaced of at least 0x400 because of memory allocation issues (


look at davidsmoot's reply