Linux
From Milkymist Wiki
Right now Milkymist ships with the RTEMS operating system. Linux actually does boot on the device, but the special capabilities of the Milkymist are not ported to work. We hope that this can be made to happen.
Our Linux development is focused here: https://github.com/milkymist/linux-milkymist |
Contents |
[edit] The Importance of Linux
From Werner:
200% agreed on the importance of having Linux - already for escaping USB driver hell. (Well, the major hell. You'll still get the minor hell of fishing exciting new bugs out of the host controller.) But I think you're putting the cart before the horse when it comes to the distribution. The choice of distribution should be driven by the availability of able hands who will do all that messy maintenance work. That may be OpenWrt, but maybe it's OE, Debian, or such. I wouldn't worry so much about which distribution you end up with, as long as someone else is taking care of maintaining it ;-)
[edit] Latest
Here is what I know about Linux on Milkymist One: For over a year, Takeshi Matsuya in Japan worked on it, but I haven't seen commits from him after March 2011. Sources are here https://github.com/tmatsuya/linux-2.6/commits/master Lars started doing some work in December/January, and lately has been continuing, I think. You can see Lars committing stuff just yesterday... There may also have been others helping, Michael Walle maybe? I am not sure. Many people told me they think Linux only make sense and will take off with an MMU, which first has to be added to the Milkymist SoC. Latest status was that there was some planning, but afaik nobody started implementing yet http://lists.milkymist.org/pipermail/devel-milkymist.org/2011-April/001418.html http://lists.milkymist.org/pipermail/devel-milkymist.org/2011-April/001472.html I am pretty sure that Linux will boot on M1 today, it did already many months ago and Lars and others have been doing more work since then. However, I am not sure about the status of peripheral support (drivers) on M1. It could be that quite a few are missing - video-in, mimi, dmx, ? That's all I know, hope it helps. Wolfgang
[edit] OpenWrt
From Lars Peter Clausen:
Well it works more or less, I can boot a kernel and run my OpenWrt userland. Though peripheral support is limited to the basics. So VGA, Keyboard and network will work but none of the fancy stuff that makes the milkymist unique, like dmx or rendering.
you can find openwrt images, SDK, etc. here with folder name openwrt-milkymist.minimal-yyyymmdd-HHMM. source code is here
[edit] boot OpenWrt
- wget http://fidelio.qi-hardware.com/~xiangfu/build-milkymist/milkymist-openwrt.minimal-20120127-1251/openwrt-lm32-root.ext4 -O initrd.bin
- wget http://fidelio.qi-hardware.com/~xiangfu/build-milkymist/milkymist-openwrt.minimal-20120127-1251/simpleImage.milkymist_one -O boot.bin
- copy them to your tftp folder like /var/lib/tftpboot, change your IP to 192.168.0.14
- press 'ESC' while m1 booting. type 'netboot'
- boot log
I: MAC address: 10:e2:d5:00:00:00 I: Press Q or ESC to abort boot I: Booting from network... I: MAC : 10:e2:d5:00:00:00 I: Local IP : 192.168.0.42 I: Remote IP: 192.168.0.14 I: Successfully downloaded 2257896 bytes from boot.bin over TFTP I: Unable to download cmdline.txt over TFTP I: No command line parameters found I: Successfully downloaded 4217856 bytes from initrd.bin over TFTP I: Booting... P�b B�K P D�I�M�N�C c inux version 3.0.0+ (xiangfu@fidelio) (gcc version 4.5.4 20110526 (prerelease) (Linaro GCC 4.5-2011.06-0) ) #1 Thu Aug 4 17:54:19 CEST 2011 bootconsole [early0] enabled ... ... NET: Registered protocol family 15 RAMDISK: ext2 filesystem found at block 0 RAMDISK: Loading 4096KiB [1 disk] into ram disk... done. VFS: Mounted root (ext2 filesystem) readonly on device 1:0. devtmpfs: mounted Freeing unused kernel mem: 104k freed init started: BusyBox v1.18.5 (2011-08-04 17:45:52 CEST) BusyBox v1.18.5 (2011-08-04 17:45:52 CEST) hush - the humble shell Enter 'help' for a list of built-in commands. / # help Built-in commands: ------------------ . Run commands in a file bg Resume a job in the background break Exit from a loop cd Change directory continue Start new loop iteration ... ...
[edit] TODO
Please help us by listing what needs to be done and what you want to help with.
- MMU
- Minimac2 driver (current uclinux support old version)
- AC97 driver
- USB device/host driver (also need work around softusb core)
- Memorycard driver
- VGA frame-buffer driver
This section is incomplete. You can help by expanding it. |