Last-modified: 95-03-13 Maintained-By: Joerg Mayer Posting-Frequency: bi-weekly Archive-name: Frequently Asked Questions on Linux/m68k A Linux port to Motorola's 680x0 processors Version of this FAQ : 1 Version of Linux/m68k: 09pl5 Version of Linux : 1.2pl0 i) Introduction =============== This is an updated version of the Linux/m68k FAQ. Since it probably contains errors (typographical and logical), outdated and missing infos, I ask that you send feedback and corrections to me. This document is not intended to describe what Unix is or how to to administrate it. To find out more about that read the standard Linux manuals. ii) Newsflash ============= - Linux/m68k 0.9 Patchlevel 5 released (Hamish) - Hamish will no longer post to the mailing list at niksula.hut.fi as it is being phased out. Please use the one at vger.rutgers.edu. - Mega patches for pl 5 by Andreas Schwab on the mailinglist (most but not all for Atari). iii) Contents ============= i Introduction ii Newsflash iii Contents 1. About Linux and Linux/m68k 2. Requirements to run Linux/m68k 2.1 Processor 2.2 RAM 2.3 Harddisk 2.4 Software 3. Similarities and differences of Amiga and Atari Linux/m68k 3.1 Similarities 3.2 Differences 4. The current status of Linux/m68k 4.1 General 4.2 Amiga 4.3 Atari 4.4 Mac 4.5 PC 5. Hints on installing Linux/m68k 6. Sources for information/sources/binaries 6.1 Documentation 6.2 Newsgroups 6.3 Mailinglists 6.4 WWW-sites 6.5 Ftp-sites 6.6 Modem 6.7 Distributions 7. Activities 7.1 Coordinator 7.2 Bug reports/Known bugs 7.3 Under construction/To do 8. Famous last words 1. About Linux and Linux/m68k ============================= Linux is a freely available operating system for PCs - to be more precise, it is one of many flavours of Unix. Linux is being developed on the net by several thousand people and being tested/used by many many more. The fun and success of Linux inspired some people to port it to another platform - the Amiga. The first version released to the general public was 005. While 008 was current, a few enthusiasts ported that version to the Atari and the two versions have been successfully merged with 09pl3 (this reads version 09 patchlevel 3). Linux/m68k can be regarded as beta. This means that code that hasn't been ported/written recently works well most of the time. Hamish is working to integrate the m68k code into the main Linux source tree. 2. Requirements to run Linux/m68k ================================= 2.1 Processor ------------- You need a Motorola 680x0 processor *with PMMU*. There is *no way* to run it without one. This reduces the list of possible processors to 68020+68851, 68030, 68040, 68LC040, 68060. Currently only the 68020+68851, 68030 and 68040 are supported. At this stage you will also need a 68881 or 68882 FPU if you don't have a 68040. A FPU is not strictly necessary as it can be emulated with the normal processor, however nobody has written the code to do so. This list of processors excludes the 68000, 68010, 68EC020, 68EC030, 68EC040. Linux/m68k can *never* run on these processors as they lack a PMMU and an interface for an external one. The following Amigas have the "right" processor built-in: A3000, A3000T, A4000/40 (not! A4000/30). The following Ataris (or clones) have the "right" processor built-in: Atari Falcon (FPU is not standard but needed!), Atari TT, Medusa (not yet supported), Eagle (not yet supported). Note: In some of the older TTs there is a bug in the PAL controlling the access to the FPU. This may cause a crash. A file describing a hardware fix exists (German language only). Any processor upgrade card with a 68040 or 68030+68881/2 (like PAK/3) is able to run Linux. Note: The PAK/3 is not yet supported on the Atari. 2.2 RAM ------- Note: On the Amiga the size of fastram is relevant. It is possible to boot Linux/m68k with as little as 2 MB. Now you know that the kernel works on your system - that's it. If you want to work with it you should have at least 4 MB (8 MB with a X-server). 2.3 Harddisk ------------ If you want to do more than just boot Linux/m68k you will need 30 - oo (infinity) MB of space on your hard disk and a supported hard disk controller. 2.4 Software ------------ Amiga: In order to run amiboot you need AmigaDOS 2.0 or higher (expansion.lib- rary V36+) and at least version 39 of ixemul.library. 3. Similarities and differences between Amiga and Atari Linux/m68k ================================================================== 3.1 Similarities ---------------- All code that depends only on the processor (i.e. paging, systemcalls, parts of the interrupt handling and of c(o)urse those parts of Linux that were hand optimized by writing the code in assembler) has to be ported to Linux/m68k only once. This means that the Amiga and the Atari may use the same kernel image (in fact the vmlinux from tsx-11 runs on both machines). Another big bonus is that all user programs (= binaries) should work on any machine running Linux/m68k no matter whether the machine is an Amiga or Atari - as long as no machine specific devices are used (see below). 3.2 Differences --------------- All code that depends on the hardware is machine dependent and with very few exceptions which are in the kernel (timer, a small part of interrupt handling, startup code) has been put into modules called device drivers. Writing device drivers makes up most of the porting work. 4. The current status of Linux/m68k =================================== 4.1 General ----------- What has been done? The kernel (this means all the processor/mmu/fpu specific stuff) has been ported. Version 09 is based on the Linux 1.0 patchlevel 9 sources but many modules from 1.1 have been integrated since. Several hardware independent devices have been ported: Ramdisk, mem, pty, tty, vt, slip, net/inet, general SCSI stuff. Also the fol- lowing filesystems have been done: minix, ext2, msdos, proc, isofs, affs, nfs, ppp (affs = Amiga Fast File System, read only). There exists a X-server which uses the frame buffer device. Frame buffer devices exist for both Amiga (monochrome only) and Atari. 4.2 Amiga --------- Supported built-in hardware: A3000-SCSI, A4000-IDE, A1200-IDE, serial port, parallel port, mouse, keyboard, graphics emulates an ASCII-terminal (resolution varies with your chipset/ setup), timer, floppy disk drive (DD and HD, Amiga-formatted disks only). Supported cards: Several SCSI cards are supported. These are the A2091, A590 and GVP Series II. To find out whether additional hardware is supported, look at the Linux/m68k source (config.in provides a list of supported hardware). 4.3 Atari --------- SCSI, ACSI, Falcon IDE, serial ports driven by a MFP (i.e. Modem 1 and Serial 1), keyboard, Atari mouse, parallel printer port, RTC clock, floppy disk (DD/HD), native Atari graphics (ST/TT/Falcon). Note: Linux' Minix FS is compatible to the Minix V2 FS used with MiNT. 4.4 Mac ------- A Mac version is under construction but not yet finished. Main (sole?) developer is George Andre (dat94gan@ludat.lth.se). He has written a FAQ about Linux/m68k-Mac which the interested reader should get first. It is available as ftp://www.ibg.uu.se/pub/maclinux/FAQ.txt. There is a mailing list too (see: 6.3 Mailinglists). 4.5 PC ------ As PC's don't have Motorolas inside (except on soundcards and other plug-ins), this section should read "What parts of Linux/m68k are available for but not part of Linux/i386?" - Amiga Fast File System (read only) tsx-11:/pub/linux/patches/amigaffs.tar.Z Please note that most disk controllers for PC, Atari and Mac are not able to read Amiga formatted disks (this is a hardware limitation). 5. Hints on installing Linux/m68k ================================= Please note that there is a much better installation doc available. It's the 'Linux/m68k installation guide' written by Frank Neumann and Ingo Wilken. If you want to find out whether Linux/m68k runs on your system the hints given here may be sufficient. If you want to work with your Linux/m68k system you should get the Installation guide. The address is given below. 0. a) Get the installation guide mentioned above. b) Ignore steps 1-8 and follow your new guide. 1. Get a working kernel, *all* announce files and the bootstrap program for your machine (different kernel versions may require different bootstrap versions), the root and usr-filesystems and the newfilesys (this is a ramdisk that contains everything you will need to set up a working harddisk environment). Sources for these programs: See below. You will also need gunzip (from the gzip package) for your native OS in order to unpack the following .gz files: amiboot/ataboot, new-filesys and vmlinux. Note: If gunzip succeeds your files are OK. If you want to test the integrity of the files you downloaded without decompressing them you can do 'gzip -t '. 2. Bootstrap the kernel and newfilesys as described in the ANNOUNCE file for that kernel. Many of the bootstrap flags available are documented in older announce files only. Note for Amiga users: You have to install ixemul.library in libs: in order to run amiboot. If you have any problems booting linux you may try to run this session without executing the startup-sequence. This will prevent any manipulation of the MMU as is done by the CPU, SetCPU and Enforcer commands. 3. Create a partition on your harddisk and install an ext2fs filesystem on it. 4. Create another partition as swapspace. 5. Unpack the root and usr filesystem onto the disk. 6. Reboot 7. Bootstrap your kernel, this time from the harddisk instead of ramdisk. 8. Get and read the Installation-HOWTO for Linux. Start reading from section 4 "Installing the Software". Warning: This is for the PC so you may have to do things differently at some points. Installation guide: ftp://ftp.informatik.uni-oldenburg.de /pub/amiga/linux/local/docs/Install-Linux_m68k.doc These are the filenames relative to 680x0/ ANNOUNCE-0.XXXXXX filesys/new-filesys.gz filesys/root.tar.gz filesys/usr.tar.gz bin/gcc-2.5.8.tar.gz kernel/vmlinux-0.9pl5.gz kernel/amiboot-1.10.gz (Amiga only) tools/amiga/ixemul.library (needed to run amiboot) kernel/ataboot-0.5.gz (Atari only) src/linux-0.9*.gz (the kernel source tree and diff files) ../docs/HOWTO/Installation-HOWTO The root.tar.gz file contains no gcc, emacs or tcsh. If you are a tcsh or emacs addict you will want to get these packages from bin/ too. The filesystems naturally contain *no kernel sources*, so you will have to get these too. 6. Sources for information/sources/binaries =========================================== 6.1 Documentation ----------------- This FAQ is available on ftp://tsx-11-and-mirrors/pub/linux/680x0/FAQ and http://pfah.informatik.uni-kl.de:8000/pers/jmayer/linux68k-faq. An installation guide is available on ftp://ftp.informatik.uni-oldenburg.de /pub/amiga/linux/local/docs/Install-Linux_m68k.doc. The ANNOUNCE files are valuable documentation too. Further documents can be found in the directories ftp://tsx-11.mit.edu/pub/ linux/docs/ and ftp://sunsite.unc.edu/pub/Linux/docs. These documents were written for Linux/i386 but many are useful for Linux/m68k users too (e.g. howtos on UUCP, PPP and the general Linux FAQ). A faq on Motorloa chips (including the 680x0 microprocessors) is available. 6.2 Newsgroups -------------- comp.os.linux.development: This group is on Linux *kernel* development only. From time to time it contains messages dealing with the Linux/m68k kernel. comp.os.linux.announce: This group announces new Linux related products as well as new kernel releases. Announcements for new versions of Linux/m68k may be found there. maus.os.linux68k: This group deals with Linux/m68k only. The languages currently used are German and English. It should be available at least at the following internet site: news.uni-stuttgart.de (read only) The Newsgroup is also available in FidoNet (LINUX-68K.GER). comp.unix.amiga: This group is for discussions on AMIX, NetBSD and Linux/m68k on the Amiga. As most articles on Linux/m68k are not Amiga specific, the name is somewhat of a misnomer. de.comp.sys.amiga.unix: Similar to comp.unix.amiga but in German language. 6.3 Mailinglists ---------------- I am aware of two mailinglists for Linux/m68k. This is the 680X0 channel of linux-activists. To find out how to subscribe send an empty mail to linux-activists-request@niksula.hut.fi. The channel you want to join is 680X0. Keep the help file! You will want to read the help file again in order to unsubscribe. The articles on this list are currently mirrored on maus.os.linux68k. The mailinglists are 2-way mirrored in the linux.act.* news-hierarchy in some places, for example the 680X0 channel is in the group linux.act.680X0. Also, a Majordomo mailing list exists. To join send mail to majordomo@vger.rutgers.edu with no subject and body containing subscribe 680x0. Content messages should be sent to linux-680x0@vger.rutgers.edu. Note: The list at niksula.hut.fi is fading out and is being replaced by vger.rutgers.edu. A mailinglist especially for Linux on Ataris: To subscribe send mail to majordomo@phil.uni-sb.de, no subject, with body 'subscribe atarix'. There also exists a mailinglist for Maclinux (not yet released!). To subscribe send mail to maclinux-request@linux.mednet.gu.se. 6.4 WWW-sites ------------- Helmut Neukirchen's Linux/m68k WWW page: http://www-users.informatik.rwth-aachen.de/~hn/linux68k.html Mirror of tsx-11 via WWW: http://src.doc.ic.ac.uk/packages/Linux/tsx-11-mirror/680x0/ 6.5 Ftp-sites ------------- THE Linux/m68k server: ftp://tsx-11.mit.edu/pub/linux/680x0/ THE two Linux servers (sources for you to port to/compile on Linux/m68k): ftp://tsx-11.mit.edu/pub/linux/sources/ ftp://sunsite.unc.edu/pub/Linux/system/ Mirrors (please use the one nearest to you, most of these mirrors are updated daily): ftp://ftp.tu-clausthal.de/pub/systems/Linux/680x0/ ftp://ftp.informatik.tu-muenchen.de/pub/comp/os/linux/680x0/ ftp://ftp.informatik.uni-oldenburg.de/pub/linux/680x0/ ftp://ftp.twi.tudelft.nl/pub/Linux/680x0/ ftp://ftp.informatik.rwth-aachen.de/pub/Linux/BETA/680x0/ ftp://ftp.germany.eu.net/pub/os/Linux/Mirror.SunSITE/ ftp://ftp.fu-berlin.de/pub/atari/linux/ ftp://src.doc.ic.ac.uk/computing/operating-systems/Linux/tsx-11-mirror/680x0/ ftp://ftp.uni-erlangen.de/pub/amiga/unix/Linux Linux on Amiga: ftp://ftp.informatik.uni-oldenburg.de/pub/amiga/linux/local/ Linux on Atari (all new patches for Ataris): ftp://ftp.phil.uni-sb.de:/pub/atari/linux/ [Please tell me if your favourite mirror is not on this list.] The kernel source for Linux/m68k can be found in 680x0/src/, a lot of binaries in 680x0/bin/. A few more tools reside in 680x0/tools/. 6.6 Modem --------- If you have a modem, you can get Linux/m68k from the following addresses: 6.6.1 Germany ------------- System name: nasim Phone: +49 89 5469593, ZyX19200 Login: Anon-uucp: nuucp - no password / ZModem: gast - no password Contents: full 680x0-tree of tsx-11 in /pub/linux-68k Get first: index file /pub/linux-68k/ls-lR.nasim.linux-68k.gz Other features: provides uucp access to 680X0 channel (read only) and the linux.act.* news-groups Admin: Frank Bartels (knarf@nasim.cube.net) 6.6.2 Sweden ------------ Board Name: Balp BBS Phone: +46-90-199104 Speed: 14.400 v.32" Login: Use your own name and download from file Area 180 (Amiga Linux) Contents: Most of Linux/m68k and some stuff from the Linux/386 distribution Admin: Anders Arnholm (dvlaam@cs.umu.se, 2:205/504@fidonet, 50:200/104@RPGNet) 6.7 Distributions ----------------- A distribution for Atari Linux - including a GEM based installation tool - has been announced by Whiteline for November '94 (they do ads in Atari-magazines) but is late (by at least one month). 7. Activities ============= 7.1 Coordinator --------------- Linux/m68k releases are built and released by Hamish MacDonald (his e-mail is hamish@border.ocunix.on.ca). 'Built' means that you write a patch against the current version/patchlevel and he will integrate it into the next release. Atari specific patches should be sent to Roman Hodek (his e-mail is rnhodek@cip.informatik.uni-erlangen.de) as Hamish has no way to test them. If you want your patches to be generally available rather than waiting for Hamish to integrate them: Post them to the 680X0 channel of linux-activists and linux-680x0 at least. Hamish has his own pace of doing releases. So read my lips:-) *Don't push him!* 7.2 Bug reports/Known bugs -------------------------- Send bugreports to the author of the code or to Hamish (general and Amiga) or to Roman (Atari). Another approach is to post it to the 680X0 channel or to the appropriate newsgroup. If there are bugs that will probably stay for some time let me know so I can publish them here. 7.3 Under construction/To do ---------------------------- I would like to have a list of projects planned/started, similar to the Linux Project-FAQ. If you send me infos I will put them into this section. 7.3.1 General ------------- Affs: Write code, other DOS types and special root block handling missing. Documentation: A Linux/m68k update of the khg (Kernel hackers guide) needs to be written (especially the mmu specific stuff). Infos on the machine abstraction would be nice too. 7.3.2 Amiga ----------- Concept/code for the use of chip ram and the blitter from user space. 7.3.3 Atari ----------- SCC-Treiber (rnhodek@cip.informatik.uni-erlangen.de) Console for ET4000 Falcon: better gfx support (more modes) Medusa, PAK/3 support 8. Famous last words ==================== You are free to distribute this FAQ as part of a Linux distribution or a CD image of one of the major ftp-sites. Amiga, Atari, Motorola, Unix and perhaps some more words I used in this text are trademarks. So what? ----------- J"org Mayer Student an der Universit"at Kaiserslautern http : http://pfah.informatik.uni-kl.de:8000/pers/jmayer.txt e-mail : jmayer@informatik.uni-kl.de // PGPid: 0xFB2461E1 phone : Kaiserslautern: 205-3348 (Uni) // 3100480 (privat) snail-mail: Beethovenstr. 44 // 67655 Kaiserslautern // Germany