home *** CD-ROM | disk | FTP | other *** search
/ NetNews Offline 2 / NetNews Offline Volume 2.iso / news / comp / unix / amiga / 160 < prev    next >
Encoding:
Internet Message Format  |  1996-08-06  |  17.1 KB

  1. Path: rznews.rrze.uni-erlangen.de!news
  2. From: rnhodek@faui21j.informatik.uni-erlangen.de (Roman Hodek)
  3. Newsgroups: comp.unix.amiga
  4. Subject: Announcement of Linux/68k 1.2.13pl5
  5. Date: 19 Jan 1996 13:49:28 +0100
  6. Organization: CSD Univ. of Erlangen, Germany
  7. Sender: rnhodek@faui21j.informatik.uni-erlangen.de
  8. Message-ID: <s3s4tts1h9j.fsf@faui21j.informatik.uni-erlangen.de>
  9. Reply-To: Roman.Hodek@informatik.uni-erlangen.de
  10. NNTP-Posting-Host: faui21j.informatik.uni-erlangen.de
  11. NNTP-Posting-User: rnhodek
  12. X-Newsreader: Gnus v5.0.12
  13.  
  14.  
  15. This announces the availability of version 1.2.13pl5 of Linux/68k. The
  16. source and a precompiled kernel are in /pub/Linux/LOCAL/680x0 on
  17. ftp.uni-erlangen.de and its mirrors.
  18.  
  19. Changes against the last version:
  20.  
  21.  - Some updates to the Atari Lance Ethernet driver: deleted some
  22.    debugging stuff and added more comments; some minor performance
  23.    optimizations (save register/memory accesses); there are 8 instead
  24.    of 4 TX buffers now (and still 32 RX buffers), what may speed up NFS,
  25.    since one NFS block (8 KByte) now fits completely in the board's
  26.    memory; the non-VME RieblCards need a slower memory access, so
  27.    they use an own memcpy now that inserts a MFPDELAY() after each
  28.    copied byte; the memory address 0x00d00000 is also probed now to
  29.    support modified ST RieblCards (to avoid conflict with ROM address)
  30.    (myself, tnx to Torsten Lang for some hints)
  31.  
  32.  - Two data areas in the FPSP040 were erroneously commented out. That
  33.    may have caused wrong calculations of tanh(), frem() and fmod().
  34.    (floeck@wctc6.chemie.uni-wuppertal.de and myself)
  35.  
  36.  - ksymoops.cc adapted to m68k (schwab@issan.informatik.uni-dortmund.de)
  37.  
  38.  - The Atari bootstrap sets (again) the FPU type to 68040 if the CPU
  39.    is a '040 and doesn't look at the _FPU cookie. This is necessary if
  40.    some FPU software under TOS sets the cookie to a wrong value (e.g.
  41.    68882). The same applies for a '060 (if you have one :-) (myself)
  42.  
  43.  - Some code for the '060, but still incomplete (and totally
  44.    untested...):
  45.       
  46.     o '060 support (PCR and branch cache) in the Atari bootstrap and
  47.       head.S
  48.     o Respect new bits in the CACR
  49.     o New access error handler (completely different again)
  50.     o Clear user mode branch cache on context switches
  51.     o The '060 has a CPUSH mode that pushes the cache but doesn't
  52.       invalidate it. This is used for cache_push(). cache_clear() on
  53.       the '060 first does CPUSH, then CINV.
  54.     o The '060 cannot supply data in its cache on snooped external
  55.       reads (as the '040 can), so the cache must be pushed before DMA
  56.       writes (on machines that support snooping, like the Medusa). It
  57.       still can invalidate cache entries on external writes, so a
  58.       cache_clear() before DMA reads isn't necessary.
  59.         Since all the cache maintainance for DMAing drivers is getting
  60.       more and more complicated with this, I've written a general
  61.       function for this, dma_cache_maintainance(), that is defined in
  62.       asm-m68k/atarihw.h and now is used by all DMAing Atari drivers.
  63.       Maybe this should further generalized in future for use by all
  64.       machines (i.e., Amiga also), together with some overall flag
  65.       whether the machine can snoop the bus.
  66.     o There's some irritation about the cache mode allowed for page
  67.       containing page descriptors. The manuals say, the '040 needs
  68.       non-cacheable, and the '060 allows write-through (but no
  69.       copyback). But in real life, it seems the other way 'round: the
  70.       '040 works fine with write-through (and probably even copyback),
  71.       but the '060 needs a non-cacheable mode...?!? My current
  72.       solution to this: The cache mode can be chosen for both
  73.       processors separately at the start of head.S. Currently it's
  74.       write-through for a '040 and non-cacheable/non-serialized for
  75.       the '060.
  76.  
  77.    What I know to still be missing:
  78.  
  79.     o Integration of the MC68060SP ("software package", similar to the
  80.       MC68040FPSP)
  81.     o Avoiding use of separate ISP/MSP registers (the '060 has only
  82.       one SSP).
  83.     o I think we have to rewrite the calibration of the delay loops
  84.       and the delay loop preparations, since the use divl and mull
  85.       with 64-bit operands/results, that are unimplemented on the
  86.       '060. Ok, the MC68060SP would catch these instructions, but that
  87.       is much overhead... Motorola also supplies some library
  88.       functions for the divl/mull operations, maybe we should use
  89.       these.
  90.  
  91.    (all myself)
  92.  
  93.  - Added the prototypes of request_dma() and free_dma() to asm/dma.h
  94.    to avoid warnings about missing prototypes. (myself)
  95.  
  96.  - The "keep" parameter to atavideo= should now really work on the
  97.    Falcon. No VIDEL registers are touched anymore if keep is set.
  98.    (guenther@pool.informatik.rwth-aachen.de)
  99.  
  100.  - Falcon video mode changes are done in the VBL now, which should fix
  101.    the nasty shifts of the screen picture in monochrome modes.
  102.    (guenther@pool.informatik.rwth-aachen.de)
  103.  
  104.  - amicon.c and atacon.c have been merged into one file,
  105.    arch/m68k/console/fbcon.c, since they had many similarities. There
  106.    are several implications and minor updates due to this: 
  107.  
  108.     o The console font size is now a general sub-option (not Atari
  109.       only anymore) in the "video=" or "atavideo=" kernel parameter.
  110.       The old "f8x8" and "f8x16" are gone. The new syntax is
  111.       "font:<name>", where name is (currently) one of "VGA8x8" or
  112.       "VGA8x16". The default is chosen the same on yres.
  113.  
  114.     o fbcon.c chooses the console scrolling method based on the
  115.       capabilities of the underlying framebuffer: ywrap (fastest,
  116.       screen splitting), ypan (pan screen and copy at end, old Atari
  117.       method), or ymove (slowest, just block copy).
  118.  
  119.     o The fonts are in arch/m68k/console now, too, together with an
  120.       extra abstraction layer for font selection.
  121.  
  122.     o There's a skeleton for a text based console,
  123.       arch/m68k/console/txtcon.c.
  124.  
  125.     o Virtual consoles of different sizes should work now.
  126.  
  127.    (all Geert.Uytterhoeven@cs.kuleuven.ac.be) I just changed the
  128.    cursor blinking speeds to the old values, depending on the machine
  129.    (Amiga/Atari).
  130.  
  131.  - General framebuffer changes:
  132.  
  133.     o The framebuffer device now reserves the last 8 minors for user
  134.       defined "standard" resolutions. It's recommended for framebuffer
  135.       implementations to use the last 8 minors for this purpose if
  136.       that's possible and it makes sense. This implemented for both,
  137.       Amiga and Atari. You can use Geert's "fbset" utility to define
  138.       these user modes. For the Atari, there's also a new command line
  139.       option for initializing userdef slot #0: It's syntax is
  140.       "R<xres>;<yres>;<depth>" as sub-option of "atavideo=", and must
  141.       be used instead of "vga2", "vga4"... . This will initialize
  142.       /dev/fb0user0 to the given video mode, with a timing chosen
  143.       automatically by the frame buffer to match the monitor
  144.       capabilities.
  145.  
  146.       New devices:
  147.           mknod /dev/fb0user0 c 29 24
  148.           mknod /dev/fb0user1 c 29 25
  149.           mknod /dev/fb0user2 c 29 26
  150.           mknod /dev/fb0user3 c 29 27
  151.           mknod /dev/fb0user4 c 29 28
  152.           mknod /dev/fb0user5 c 29 29
  153.           mknod /dev/fb0user6 c 29 30
  154.           mknod /dev/fb0user7 c 29 31
  155.  
  156.     o New ioctl FBIOPAN_DISPLAY with less overhead than FBIOPUT_VSCREENINFO
  157.  
  158.    (most Geert.Uytterhoeven@cs.kuleuven.ac.be, fb0userx on Atari by
  159.    guenther@pool.informatik.rwth-aachen.de)
  160.  
  161.  - Atari framebuffer changes:
  162.  
  163.     o Implemented the FBIOPAN_DISPLAY ioctl for the Atari. The Falcon
  164.       can do X- and Y-panning, TT/STE Y-panning only (for now), and a
  165.       plain ST no panning at all.
  166.  
  167.       With this, there's a small change in how yres_virtual is handled
  168.       when changing video modes (e.g. with fbset) on the Falcon. If
  169.       the input yres_virtual is 0, it is changed to the maximum
  170.       possible value to support hardware scrolling on the console. If
  171.       yres_virtual<yres it is changed to yres (and there's no hardware
  172.       scrolling used). If yres_virtual > yres on input, it's
  173.       unchanged, so that X11 gets exactly this value. This change was
  174.       necessary to support Geert's new X-Server with panning.
  175.  
  176.       This means: If you want to use hardware scrolling in the
  177.       console, always give the option "-vyres 0" to fbset, and set
  178.       vyres to 0 for any predefined video mode in /etc/fb.modes. To
  179.       use it with the new X-Server, set vyres (and vxres on Falcon) to
  180.       some appropriate values.
  181.  
  182.       (guenther@pool.informatik.rwth-aachen.de)
  183.  
  184.  - Amiga framebuffer changes:
  185.  
  186.     o The latest version of the AGA color framebuffer is included.
  187.       The following modes are available:
  188.  
  189.           - ntsc           (640x200, 15 kHz, 60 Hz (NTSC))
  190.           - ntsc-lace      (640x400, 15 kHz, 60 Hz interlaced (NTSC))
  191.           - pal            (640x256, 15 kHz, 50 Hz (PAL))
  192.           - pal-lace       (640x512, 15 kHz, 50 Hz interlaced (PAL))
  193.           - multiscan      (640x480, 29 kHz, 57 Hz)
  194.           - multiscan-lace (640x960, 29 kHz, 57 Hz interlaced)
  195.           - a2024-10       (1024x800, 10 Hz (*))
  196.           - a2024-15       (1024x800, 15 Hz (*))
  197.           - euro36         (640x200, 15 kHz, 72 Hz)
  198.           - euro36-lace    (640x400, 15 kHz, 72 Hz interlaced)
  199.           - euro72         (640x400, 29 kHz, 68 Hz)
  200.           - euro72-lace    (640x800, 29 kHz, 68 Hz interlaced)
  201.           - super72        (800x300, 23 kHz, 70 Hz)
  202.           - super72-lace   (800x600, 23 kHz, 70 Hz interlaced)
  203.           - dblntsc        (640x200, 27 kHz, 57 Hz doublescan)
  204.           - dblntsc-ff     (640x400, 27 kHz, 57 Hz)
  205.           - dblntsc-lace   (640x800, 27 kHz, 57 Hz interlaced)
  206.           - dblpal         (640x256, 27 kHz, 47 Hz doublescan)
  207.           - dblpal-ff      (640x512, 27 kHz, 47 Hz)
  208.           - dblpal-lace    (640x1024, 27 kHz, 47 Hz interlaced)
  209.           - vga            (640x480, 31 kHz, 60 Hz (VGA))
  210.           - vga70          (640x400, 31 kHz, 70 Hz (VGA))
  211.         (*) The a2024-?? modes don't work yet.
  212.  
  213.       The default mode is vga70 (for AGA :-) The following devices are
  214.       used:
  215.  
  216.           mknod /dev/fb0current c 29 0
  217.           mknod /dev/fb0autodetect c 29 1
  218.           mknod /dev/fb0ntsc c 29 2
  219.           mknod /dev/fb0ntsc-lace c 29 3
  220.           mknod /dev/fb0pal c 29 4
  221.           mknod /dev/fb0pal-lace c 29 5
  222.           mknod /dev/fb0multiscan c 29 6
  223.           mknod /dev/fb0multiscan-lace c 29 7
  224.           mknod /dev/fb0a2024-10 c 29 8
  225.           mknod /dev/fb0a2024-15 c 29 9
  226.           mknod /dev/fb0euro36 c 29 10
  227.           mknod /dev/fb0euro36-lace c 29 11
  228.           mknod /dev/fb0euro72 c 29 12
  229.           mknod /dev/fb0euro72-lace c 29 13
  230.           mknod /dev/fb0super72 c 29 14
  231.           mknod /dev/fb0super72-lace c 29 15
  232.           mknod /dev/fb0dblntsc c 29 16
  233.           mknod /dev/fb0dblntsc-ff c 29 17
  234.           mknod /dev/fb0dblntsc-lace c 29 18
  235.           mknod /dev/fb0dblpal c 29 19
  236.           mknod /dev/fb0dblpal-ff c 29 20
  237.           mknod /dev/fb0dblpal-lace c 29 21
  238.           mknod /dev/fb0vga c 29 22
  239.           mknod /dev/fb0vga70 c 29 23
  240.       
  241.       On OCS/ECS, the old special device nodes are still used!
  242.   
  243.     o Merged the old monochrome frame buffer (OCS/ECS) with the new
  244.       color version for AGA. Until OCS/ECS support for the color
  245.       version is finished, the old version is invoked when running on
  246.       a non-AGA machine. Thus from now on AGA users will get color
  247.       with the standard source tree.
  248.  
  249.     o Monitor capabilities (kernel parameter `video', cfr. Atari):
  250.           monitorcap:<Vmin>;<Vmax>;<Hmin>;<Hmax>)
  251.       <V*> are vertical freq. in Hz, <H*> horizontal ones in kHz;
  252.       default is a generic Amiga monitor (50-90 Hz, 15-38 kHz)
  253.  
  254.     o Hold-And-Modify (HAM6/HAM8) if var->nonstd == FB_NONSTD_HAM
  255.       Someone interested in porting ZGV to the frame buffer concept?
  256.  
  257.     o VESA suspend mode: pwrsave (not for BROADCAST (PAL/NTSC) modes)
  258.  
  259.     o PAL and NTSC work now (incl. ywrap)
  260.  
  261.     o The maximum display depth for which hardware scrolling (ywrap)
  262.       is possible is determined using ddfstrt now (was: hardcoded at 4
  263.       planes)
  264.  
  265.     o Hardware cursor basics (very preliminary)
  266.  
  267.    (all Geert.Uytterhoeven@cs.kuleuven.ac.be)
  268.  
  269.  - Preliminary support for the Cybervision graphics board, though only
  270.    in a very limited way. The current driver is neither able to set up
  271.    the screen as needed nor does it use the blitter on the Cybervision
  272.    under X (this is rather caused by the need for a special X server
  273.    than by the framebuffer device). It can do the following: It can
  274.    use a screen that exists at boot time to render its output to. The
  275.    screen has to be either 640, 800, 1024, 1152 or 1280 pixels wide,
  276.    the height is not restricted. The width and height of the desired
  277.    screen have to be set in defines in arch/m68k/amiga/cyberfb.c
  278.    accordingly. Due to the fact that it needs an existing screen it
  279.    cannot be used together with 'lilo', you have to use 'bootstrap'
  280.    for booting. (apel@tecmath.de)
  281.  
  282.    The Amiga bootstrap has a new option, "-v", to support the
  283.    Cybervision. This option causes the video mode not to be reset, as
  284.    currently needed for the Cybervision framebuffer. (A bit similar in
  285.    effect to "atavideo=keep".) (Geert.Uytterhoeven@cs.kuleuven.ac.be)
  286.  
  287.  - Fix inverse video mode initialization and throw away a leftover
  288.    commenting-out for testing; fix ICD partition numbering
  289.    (schwab@issan.informatik.uni-dortmund.de &
  290.    guenther@pool.informatik.rwth-aachen.de)
  291.  
  292.  - Misc documentation updates (kernel-options, Configure.help,
  293.    CREDITS.m68k) (Geert.Uytterhoeven@cs.kuleuven.ac.be)
  294.  
  295.  - On the Medusa, always using 8 MB as ST-RAM has caused problems with
  296.    a ramdisk, because the assumptions about the relative positions of
  297.    memory areas became wrong. The fix is to use the same amount of
  298.    ST-RAM as TOS does. (myself with floeck@wctc6.chemie.uni-wuppertal.de)
  299.  
  300.  - The Amiga interrupts were handled (within the same interrupt level)
  301.    in a different order than under AmigaOS. Shouldn't have had much
  302.    influence, but at least these reversed priorities were a bit
  303.    confusing. (Geert.Uytterhoeven@cs.kuleuven.ac.be)
  304.  
  305.  - The read and write functions for /dev/vcs* contained a few byte
  306.    order dependencies. Also, the display is now correctly updated if
  307.    writes go to the currently visible vcs.
  308.    (schwab@issan.informatik.uni-dortmund.de)
  309.  
  310.  - Some stuff for the Afterburner040 for the Falcon:
  311.       
  312.     o Check for a VIDEL in the bootstrap to distinguish the AB040 from
  313.       a Medusa; the AB040 also allows writing to the address range
  314.       0x0...0x7 (no ROM shadow!)
  315.       
  316.     o A similar test also added in head.S for the same reason
  317.       
  318.     o Also the Atari internal framebuffer now takes care of the cache
  319.       mode of video memory: this must be write-through (no copyback)
  320.       on a '040+, else changes appear on the screen only when data are
  321.       pushed out of the cache... For this, a new function,
  322.       kernel_set_cachemode(), was necessary. Hope it works.
  323.  
  324.     o What still doesn't work: putting the kernel into TT-RAM :-( The
  325.       problem seems to be the jump to virtual address space in head.S.
  326.       Still investigating on this...
  327.  
  328.    (all myself)
  329.  
  330.  - Atari SCSI driver changes:
  331.  
  332.      o Falcon-SCSI should now work with TT-RAM! My old idea to use the
  333.        'unchecked_isa_dma' flag in the host structure for this case was
  334.        wrong, simply wrong... It had the implication to clean up all
  335.        the mid-level SCSI code in respect to ST-RAM handling. It's much
  336.        easier to implement a dribble buffer internal to the Atari SCSI
  337.        driver. I.e., if a transfer is from/to memory that the ST-DMA
  338.        can't access, a pre-allocated ST-RAM buffer is used instead as
  339.        an intermediate. One buffer is enough, since Falcon-SCSI cannot
  340.        do scatter-gather anyway. Only allocating this buffer requires a
  341.        new, not very clean call from scsi.c. This is untested for now,
  342.        but it should work.
  343.  
  344.     o The driver now does a SCSI bus reset during initialization.
  345.       Maybe that helps for the problems with the ICD and CBHD drivers
  346.       under TOS.
  347.  
  348.     o Fixed some NCR_abort() return codes.
  349.  
  350.     o After a bus reset, the interrupt condition must be cleared, else
  351.       no ints get through anymore.
  352.  
  353.     o Fixed some (possible) NULL pointer references in debugging
  354.       output statements.
  355.  
  356.     o The cleanup of the disconnected_queue and the connected command
  357.       after a reset could have caused problems (stale pointers, too
  358.       early restarting). Completely rewritten this so no bad things
  359.       should happen there anymore.
  360.  
  361.    The last three things should make SCSI resets work now (do you know
  362.    Will Robinson? :-), i.e. the machine shouldn't panic anymore under
  363.    normal circumstances. Good news for Falcon users... (all myself,
  364.    the last item guenther@pool.informatik.rwth-aachen.de)
  365.  
  366.  - The Amiga Lance drivers (A2065 and Ariadne) didn't check right at
  367.    the start of their isr whether it was really their board that
  368.    caused the interrupt. Now the int status bit is tested ASAP. This
  369.    might have been a part of the reason why people have had problems
  370.    with these drivers in the past (well, just maybe). (jds@kom.auc.dk)
  371.  
  372.  - Fix the problem with Zorro detection when there is more than one
  373.    GVP board. (jds@kom.auc.dk)
  374.  
  375. Current Amiga bootstrap version: 2.2 (changed)
  376. Current Atari bootstrap version: 1.5 (changed)
  377.  
  378. The precompiled kernel contains both, Amiga and Atari support, so it
  379. is very big. You probably want to compile your own kernel tailored to
  380. your personal needs. Note also that there have been some problems
  381. reported that such big kernels cannot be booted with Amiga Lilo.
  382.  
  383. Roman
  384.