Article View: comp.os.linux.development.system
Article #5Linux/68k-FAQ v1.6
From: Joerg Mayer
Date: Thu, 17 Aug 1995 13:54
Date: Thu, 17 Aug 1995 13:54
528 lines
24071 bytes
24071 bytes
Last-modified: 95-08-17
Maintained-By: Joerg Mayer <jmayer@informatik.uni-kl.de>
Posting-Frequency: bi-weekly
Archive-name: linux/m68k-faq
URL: http://pfah.informatik.uni-kl.de:8000/pers/jmayer/linux68k-faq
Frequently Asked Questions on Linux/m68k
A Linux port to Motorola's 680x0 processors
Version of this FAQ : 1.6
Version of Linux/m68k : 0.9.9 (stable) and 1.2.13 (beta)
Version of Linux : 1.3pl20
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
=============
- Roman has released 0.9.9. It contains a SCC driver. Note the changes of
minor device numbers for ATARI serial devices!
- Hamish has released 1.2.13. It updates the kernel to the lastest 1.2 kernel
and incorporates the 0.9.9 patches where appropriate. Read the ANNOUNCE
file (there have been incompatible changes in the filesystem code when
compared with 0.x.x).
- Geert Uytterhoeven has released a new version (950810) of his frame buffer
device for the Amiga (AGA chipset only).
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.2.1 TT-FPU bug
7.2.2 Amiga with GVP 16 bit RAM
7.3 Under construction/To do
8. Common problems
8.1 I can't find the manpage for XXX
8.2 Is there a X-server for the Amiga?
8.3 How can I access my SCSI tape drive?
8.4 Where did all my Amiga's chipmem go?
8.5 Do I really need a FPU?
8.6 How do I access Linux partitions from AmigaDOS?
9. 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, first and foremost by Linus Torvalds, 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.
After having released v1.2 Hamish is working to integrate the m68k code into
the Linux 1.3 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 (this is "true" for all machines but
some pretty old Suns :-).
The following Amigas have the "right" processor built-in: A3000, A3000T,
A4000/40 (not! A4000/30 which has a 68EC030 processor) and A2500/30.
The following Ataris (or clones) have the "right" processor built-in:
Atari Falcon (FPU is not standard but needed!), Atari TT, Medusa, 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 (see 7.2.1).
Any processor upgrade card with a 68040 or 68030+68881/2 (like PAK/3) is able
to run Linux.
2.2 RAM
-------
Note1: On the Amiga the size of fastram is relevant.
Note2: If you have an Amiga with 16-bit expansion RAM on a GVP card, see
"Known bugs".
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.
Add another 20 MB for X.
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. V1.2 (based on
Linux/i386 1.2 patchlevel 13) has been released but many things do not work
yet, thus the list below is for 0.9.9.
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).
A X-server exists that 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.
The Ariadne ethernet card is supported.
To find out whether additional hardware is supported, look at the Linux/m68k
source (config.in provides a list of supported hardware).
Note: There are problems with GVP 16 bit RAM cards (see "Known bugs").
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, SCC serial 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
-------
There was talk about a Mac port but it seems to be dead. There is a port of
NetBSD for the Mac.
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. A
more complete list of installation guides can be found in the documentation
section. 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 <filename.gz>'.
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 (not! filesys-1.2.gz)
filesys/root.tar.gz
filesys/usr.tar.gz
bin/gcc-2.5.8.tar.gz
kernel/vmlinux-0.9.9.gz
kernel/amiboot-1.12.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. Although the guide was
written for the Amiga, many things are useful for Atari users too. An Atari
specific install guide can be found at http://www.gti.net/azog/linux68k.txt;
another one can be found at http://zippy.spods.dcs.kcl.ac.uk/
~tomlin/flinux.html. 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.kernel: 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 one mailinglist for Linux/m68k. To join send mail to
majordomo@vger.rutgers.edu with no subject and body 'subscribe 680x0'.
Content messages should be sent to linux-680x0@vger.rutgers.edu. An archive
for this list can be found via Helmut Neukirchen's WWW page.
A mailinglist especially for Linux on Ataris: To subscribe send mail to
majordomo@phil.uni-sb.de, no subject, with body 'subscribe atarix'.
6.4 WWW-sites
-------------
Helmut Neukirchen's Linux/m68k WWW page:
http://www-users.informatik.rwth-aachen.de/~hn/linux68k.html
Chris Lawrence' Linux/m68k WWW page:
http://www.clark.net/pub/lawrencc/linux/index.html
Mirrors 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
ftp://ftp.spc.uchicago.edu/pub/linux/680x0
ftp://ftp.nvg.unit.no/pub/linux/680x0
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.7 Distributions
-----------------
ALD (= Autoren Linux68K Distribution) for Atari is available from Whiteline.
7. Activities
=============
7.1 Coordinator
---------------
Linux/m68k releases are built and released by Hamish Macdonald (v1.2) and
Roman Hodek (v09). Roman's e-mail is rnhodek@cip.informatik.uni-erlangen.de).
'Built' means that you write a patch against the current version/patchlevel
and send it to them or the mailling list and they will integrate it into one
of the next releases. Make sure you state against which version the patch was
made. Please note that Roman has no way to test Amiga specific patches and
Hamish can't test Atari specific things.
Note: If you patch processor specific code (e.g. 68030 vs. 68040 MMU or FPU)
make sure that you document the dependencies.
7.2 Bug reports/Known bugs
--------------------------
Send bugreports to the author of the code or to Hamish (Amiga) or to Roman
(Atari). A probably better approach is to post it to the linux-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.2.1 TT-FPU bug
----------------
Problem:
Linux reports "*** COPROCESSOR PROTOCOL VIOLAION *** FORMAT=9" or something
like that.
Fix:
Put the 16L8 PAL's pin 11 free (this is the signal 'XBG') and tie it high.
This prevents the PAL from tri-stating AS and DS until XBGACK has gone low.
To make your 32 MHz daughter-card work:
1) Pull pin 11 of te 16L8 PAL out of the board
2) Tie pin 11 of the IC to +5V (pin 20 of 16L8)
****This applies to the CA400771 32 MHz daughter board****
**********Other boards should not have this bug***********
_______________________________________________________________
Atari 32 Meg Daughter Board / PGA |
|
___________________ |
| | |
| | |
2 1 1 1 1 1 1 1 1 1 |
0 9 8 7 6 5 4 3 2 1 |
. . . . . . . . . . . . . . . . . . . . |
PAL 16R4-7PC PAL 16L8-7PC |
. . . . . . . . . . . . . . . . . . . . |
1 2 3 4 5 6 7 8 9 1 |
0 |
CA400771 |
___________________________________________________________|
|
|
___|
7.2.2 Amiga with GVP 16 bit RAM
-------------------------------
Problem:
When using a GVP card with 16 bit RAM on an Amiga with 68040 Linux/m68k dies.
Fix:
Get some real 32 bit RAM. The 16 bit RAM may still be used as a ramdisk.
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 is 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.
FPU-emulation: Laurent Giroud (lic32@bat710.univ-lyon1.fr) is working on it.
7.3.2 Amiga
-----------
Concept/code for the use of chip ram and the blitter from user space.
Code to read/write pc formatted disks (Joerg Dorchain <jodo@stud.uni-sb.de>)
A2024 support missing
7.3.3 Atari
-----------
Console for ET4000
Falcon: better gfx support (guenther@pool.informatik.rwth-aachen.de is almost
done with a new Falcon framebuffer)
Ethernetcards (Riebl cards, internal PAM cards)
8. Common problems
==================
8.1 I can't find the manpage for XXX
------------------------------------
There is a *wealth* of Linux documentation out there for the original PC Linux
which almost always applies to Linux/68k. Check out the documentation at your
favorite Linux ftp site.
8.2 Is there a X-server for the Amiga?
--------------------------------------
Yes, there is one: It's the same one as for the Atari, so get that. The
frame buffer device you need is already integrated into the 0.9pl5 kernel.
Make sure that /usr/X11R6/bin/X is a link to /usr/X11R6/bin/XF86_Atari.
8.3 How can I access my SCSI tape drive?
----------------------------------------
Use /dev/st0. Be aware that your tape drive must be up and running at boot
time so that linux can recognize it and you can use it.
8.4 Where did all my Amiga's chipmem go?
----------------------------------------
It's still there, but the kernel doesn't offer it to the user. It is used by
drivers that use the custom chips (floppy, framebuffer, sound).
8.5 Do I really need a FPU?
---------------------------
Most software doesn't use the FPU, but you still need one, because the stan-
dard program startup code contains at least one FPU instruction. There are
two ways to avoid this problem: 1) write a FPU emulation and put it into the
kernel (as it is done with the i387 code) or 2) change the crt0.o module of
gcc and recompile *all* programs you have.
8.6 How do I access Linux partitions from AmigaDOS?
---------------------------------------------------
You don't. Someone has reportedly started writing an ext2 filesystem for
AmigaDOS but I forgot who. If you want to transfer files from Linux to
AmigaDOS you may either use a msdos partition, an Amiga formatted floppy
with msdos file system (this requires a mountlist entry on AmigaDOS side),
the use of a partition with minix file system and the minix file handler
on AmigaDOS side (the driver is somewhat unstable) or by accessing the
floppy / any (empty!) partition directly via GNU tar.
9. Famous last words
====================
I want to thank everyone who contributed to this FAQ. Quite a number of
people have helped to fill in/correct it.
You may freely distribute this FAQ without any legally binding restrictions
except that it must remain in whole and unmodified. I would however be
thankful if you drop me a note if you include this file on a disk or cdrom
(especially, if you send me a copy ;-)
Amiga, Atari, Motorola, Unix and perhaps some more words I used in this text
are trademarks. So what?
--
J"org Mayer Student und Sysop an der Universit"at Kaiserslautern
http : http://pfah.informatik.uni-kl.de:8000/pers/jmayer.html
e-mail : jmayer@informatik.uni-kl.de // PGPid: 0xFB2461E1
For my address ask me, use finger or take a look at my www page.
Technical Details
Message-ID:
<40vhma$2ab@irz1.informatik.uni-kl.de>Path:
arc1-ca.pugleaf.net!informatik.uni-kl.de!jmayerShow Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!informatik.uni-kl.de!jmayer
From: jmayer@informatik.uni-kl.de (Joerg Mayer)
Newsgroups: comp.os.linux.development.system,comp.unix.amiga,maus.os.linux68k,comp.os.linux.answers,comp.answers,news.answers
Subject: Linux/68k-FAQ v1.6
Followup-To: poster
Date: 17 Aug 1995 13:54:18 GMT
Organization: University of Kaiserslautern, Germany
Approved: *.answers moderation team <news-answers-request@mit.edu>,
Matt Welsh <linux-answers@news.ornl.gov>
Distribution: world
Message-ID: <40vhma$2ab@irz1.informatik.uni-kl.de>
NNTP-Posting-Host: osiris.informatik.uni-kl.de
Keywords: Linux, 68K, port, Amiga, Macintosh, Atari, FAQ