Subject: FPU problems porting 2.4.0 to Algorithmics P4032 MIPS board

From: Arnold Niessen <[email-masked]>
Date: Fri, 15 Sep 2000 12:01:27 +0200

Hello Ralf, others,

We are porting the new 2.4.0 series Linux kernel to Algorithmics 
P4032 board with MIPS processor (QED-RM5230).  We ported 
2.4.0-test5 kernel. We already succeeded in porting the following 
code, partly based on the changes made by MIPS Technologies
for the 2.2.12/P5064 patch:
      1. Memory management & timer related stuff
      2. Support for PCI devices
      3. Support of the onboard SCSI controller
      4. Support of the onboard Ethernet controller
      5. Support for the Serial lines
We've got a problem with the foating point support. With either 
soft or hard FP support, some FP operation generate an exception, 
e.g. cvt.w.d.

We tried both with and without support of FPE soft module, 
compiled for R46xx and R5000 processors (As far as I
understand there is no difference in FP support in the kernel 
for these processor types).

We did not have these problems with the (2.2.12 MIPS Technologies
based) port we made to this same board.

We would appreciate any ideas how to solve the problem.

Algorithmics P4032 board consists of:
1. QED - RM5230 (the documentation claims that it fully 
    supports MIPS IV level)
2. V3 V962PBC PCI adapter
3. Onboard Symbios 53c810a SCSI chipset
4. Onboard Tulip 21041 Ethernet controller
5. Combi I/O controller for 2 RS232 serial ports, centronics 
   parallel port and disk drive.

Best regards and thanks in advance,
Evgeni Eskenazi,
Arnold Niessen
-- 
A.J. Niessen                  | Philips Research Laboratories
Building WL 1.613             | Prof. Holstlaan 4
Phone: (+31-40-27)42715       | 5656 AA Eindhoven
Fax: (+31-40-27)44004         | The Netherlands
E-Mail:                   [email-masked]
E-Mail on mailing lists:  [email-masked]

---

From: Dominic Sweetman <[email-masked]>
Date: Fri, 15 Sep 2000 13:02:46 +0100 (BST)

Arnold,

> based) port we made to this same board.

MIPS CPU floating-point units always give floating point
'unimplemented' exceptions when faced with unpalatable combinations of
operation and operand.  It's their way of telling you to go calculate
it yourself.

The 2.2.12 "MIPS Technologies" port incorporated Algorithmics'
floating point trap handler and FP emulation code to provide correct
IEEE-compatible floating point.  You should either move that on to
2.4.0 or find an equivalent solution.

-- 
Dominic Sweetman
Algorithmics Ltd
The Fruit Farm, Ely Road, Chittering, CAMBS CB5 9PH, ENGLAND
phone: +44 1223 706200 / fax: +44 1223 706250 / http://www.algor.co.uk