The original uClinux was a derivative of Linux 2.0 kernel intended for microcontrollers without Memory Management Units (MMUs). Later the patches of uClinux were merged back to the mainstream Linux 2.6 kernel. Today's uClinux as an operating system includes Linux kernel releases for 2.0 2.4 and 2.6 as well as a collection of user applications, libraries and tool chains. If you are new to uClinux, it is very helpful to read the uClinux FAQ and uClinux-dist Developers Guide. There is a very helpful uClinux wiki site for blackfin, and it apply to Nios II as well.
The IDE on Windows is not good for uClinux kernel/apps development,
The kernel code for Nios II was developed by Microtronix. But they didn't release update for a long time. We based on the code, and improve it.
You should start with a minimal system with only,
Note in Linux, irq 0 means auto-detected, so you must not use irq 0 for ANY devices, except for timer.
It is possible to use e-core, but it will be very very slow.
It is possible to run without a hardware multiplier, but you will need some hack.
using haserl scripts for runtime configuration
When you do "make vendor_hwselect", it will extract the parameters of your custom hardware (address, irq, freq etc) from your sopc PTF file into nios2-linux/uClinux-dist/linux-2.6.x/include/asm-nios2/nios2.h. Then they are used by kernel through the file nios2-linux/linux-2.6/arch/nios2/kernel/config.c. You might need to modify the config.c file to match the component instant name.
NET: dm9000,smc91111,opencore eth,mtip1000, altera_tse
USB: isp116x,isp1362, isp1760/1761
CHAR: uart,watchdog,pio/button,spi,ps/2 keyboard mouse.
MMC: mmc core
I2C: opencore i2c, ds1307, i2c-gpio
Nios uClinux forum is the place to post questions. Don't post questions or comments on this wiki. If you have good suggestions or successful experiences to share, please update the wiki directly.
Before you post any questions, check the wiki and search previous posts first. If you can't find answer, then post as a new topic on the forum. When your questions got answered or resolved, it is suggested that you should update the wiki. It will be helpful to others and avoid repeated questions.
Mailing lists are the prime communication between developers.
You must adjust your mail client to send "plain text" format e-mail to the lists. Don't send "HTML" format e-mail.
You should not send "test" mail.
If you want to reply a post, you should quote only the minimum necessary part of previous post. And reply AFTER the quote. Reply to the "list", not the sender.