Forum Discussion

Altera_Forum's avatar
Altera_Forum
Icon for Honored Contributor rankHonored Contributor
14 years ago

ucLinux on Arria II GX board, with Quartus 11.1

Hi,

I am trying to get uClinux running on an Arria II GX board. I have followed most of the tutorials and info that I have found on this site and in this forum, starting with the alterawiki "Install Nios II Linux" page and the UCLinuxDist page that links from this. Sorry, I can't post links as my post count isn't yet high enough.

I have built Nios2 Linux Tarball correctly from this site, first switching to the test-nios2 branch as I don't want MMU, and I have run "make menuconfig" to select Altera and NIOS2, with linux-2.6.x kernel.

The next step is to generate a header file for my board. Most of the instructions that I have found (eg. in these forums and in the LinuxHwselect page say that you do this using hwselect with a .ptf file. Since I am using Quartus 11.1, I don't have a PTF file for my board (I don't think these are used anymore). I do have a sopcinfo file and have created a header file using sopc-create-header-files. However, I don't know where to put this header file. The uClinuxDist page says to put this into linux-2.6.x/arch/nios2/boards/<my_nios>/include/asm, but there is no "boards" directory, under nios2.

One of the other threads on this forum (thread ID 18573 - can't post a link!) said to put it in arch/nios2/include/asm, but there is no include directory. The total contents of the arch/nios2 directory is as follows:

boot drivers hardware.mk kernel lib mm

Have I missed a step?

If I skip this step and just do "make" in the uClinux directory, it compiles but gives messages saying "no emulation specific options." I guess because it can't find an appropriate board-specific header file. It does generate an image file (images/zImage), and I can download this image using nios2-download, but unsurprisingly the next step (nios2-terminal) just hangs.

Can anyone please help with the previous step? What have I missed?

Thanks for reading,

Giles

1 Reply

  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    Switch to kernel 3.1:

    cd linux-2.6

    git checkout v3.1-nios2

    # additional useful steps:

    cd ../uClinux-dist

    git checkout trunk

    git merge origin/trunk

    Then generate devicetree from your .sopcinfo and use it for the kernel compilation.

    Note that the 3.x kernel wanted libuuid, if you are on debian/ubuntu, then:

    apt-get install uuid-dev

    Note that I did these steps for my MMU system on ep4ce10. Non-mmu could be different.

    -m