~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/arch/m68k/ifpsp060/TEST.DOC

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  2 MOTOROLA MICROPROCESSOR & MEMORY TECHNOLOGY GROUP
  3 M68000 Hi-Performance Microprocessor Division
  4 M68060 Software Package
  5 Production Release P1.00 -- October 10, 1994
  6 
  7 M68060 Software Package Copyright © 1993, 1994 Motorola Inc.  All rights reserved.
  8 
  9 THE SOFTWARE is provided on an "AS IS" basis and without warranty.
 10 To the maximum extent permitted by applicable law,
 11 MOTOROLA DISCLAIMS ALL WARRANTIES WHETHER EXPRESS OR IMPLIED,
 12 INCLUDING IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE
 13 and any warranty against infringement with regard to the SOFTWARE
 14 (INCLUDING ANY MODIFIED VERSIONS THEREOF) and any accompanying written materials.
 15 
 16 To the maximum extent permitted by applicable law,
 17 IN NO EVENT SHALL MOTOROLA BE LIABLE FOR ANY DAMAGES WHATSOEVER
 18 (INCLUDING WITHOUT LIMITATION, DAMAGES FOR LOSS OF BUSINESS PROFITS,
 19 BUSINESS INTERRUPTION, LOSS OF BUSINESS INFORMATION, OR OTHER PECUNIARY LOSS)
 20 ARISING OF THE USE OR INABILITY TO USE THE SOFTWARE.
 21 Motorola assumes no responsibility for the maintenance and support of the SOFTWARE.
 22 
 23 You are hereby granted a copyright license to use, modify, and distribute the SOFTWARE
 24 so long as this entire notice is retained without alteration in any modified and/or
 25 redistributed versions, and that such modified versions are clearly identified as such.
 26 No licenses are granted by implication, estoppel or otherwise under any patents
 27 or trademarks of Motorola, Inc.
 28 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 29 68060 SOFTWARE PACKAGE (Kernel version) SIMPLE TESTS
 30 -----------------------------------------------------
 31 
 32 The files itest.sa and ftest.sa contain simple tests to check
 33 the state of the 68060ISP and 68060FPSP once they have been installed.
 34 
 35 Release file format:
 36 --------------------
 37 The release files itest.sa and ftest.sa are essentially
 38 hexadecimal images of the actual tests. This format is the
 39 ONLY format that will be supported. The hex images were created
 40 by assembling the source code and then converting the resulting
 41 binary output images into ASCII text files. The hexadecimal
 42 numbers are listed using the Motorola Assembly syntax assembler
 43 directive "dc.l" (define constant longword). The files can be
 44 converted to other assembly syntaxes by using any word processor
 45 with a global search and replace function.
 46 
 47 To assist in assembling and linking these modules with other modules,
 48 the installer should add symbolic labels to the top of the files.
 49 This will allow the calling routines to access the entry points
 50 of these packages.
 51 
 52 The source code itest.s and ftest.s have been included but only
 53 for documentation purposes.
 54 
 55 Release file structure:
 56 -----------------------
 57 
 58 (top of module)
 59         -----------------
 60         |               | - 128 byte-sized section
 61    (1)  |   Call-Out    | - 4 bytes per entry (user fills these in)
 62         |               |
 63         -----------------
 64         |               | - 8 bytes per entry
 65    (2)  | Entry Point   | - user does "bsr" or "jsr" to this address
 66         |               |
 67         -----------------
 68         |               | - code section
 69    (3)  ~               ~
 70         |               |
 71         -----------------
 72 (bottom of module)
 73 
 74 The first section of this module is the "Call-out" section. This section
 75 is NOT INCLUDED in {i,f}test.sa (an example "Call-out" section is provided at
 76 the end of this file). The purpose of this section is to allow the test
 77 routines to reference external printing functions that must be provided
 78 by the host operating system. This section MUST be exactly 128 bytes in
 79 size. There are 32 fields, each 4 bytes in size. Each field corresponds
 80 to a function required by the test packages (these functions and their
 81 location are listed in "68060{ISP,FPSP}-TEST call-outs" below). Each field
 82 entry should contain the address of the corresponding function RELATIVE to
 83 the starting address of the "call-out" section. The "Call-out" section must
 84 sit adjacent to the {i,f}test.sa image in memory. Since itest.sa and ftest.sa
 85 are individual tests, they each require their own "Call-out" sections.
 86 
 87 The second section, the "Entry-point" section, is used by external routines
 88 to access the test routines. Since the {i,f}test.sa hex files contain
 89 no symbol names, this section contains function entry points that are fixed
 90 with respect to the top of the package. The currently defined entry-points
 91 are listed in section "68060{ISP,FPSP}-TEST entry points" below. A calling
 92 routine would simply execute a "bsr" or "jsr" that jumped to the selected
 93 function entry-point.
 94 
 95 For example, to run the 060ISP test, write a program that includes the
 96 itest.sa data and execute something similar to:
 97 
 98         bsr     _060ISP_TEST+128+0
 99 
100 (_060ISP_TEST is the starting address of the "Call-out" section; the "Call-out"
101 section is 128 bytes long; and the 68060ISP test entry point is located
102 0 bytes from the top of the "Entry-point" section.)
103 
104 The third section is the code section. After entering through an "Entry-point",
105 the entry code jumps to the appropriate test code within the code section.
106 
107 68060ISP-TEST Call-outs:
108 ------------------------
109 0x0: _print_string()
110 0x4: _print_number()
111 
112 68060FPSP-TEST Call-outs:
113 -------------------------
114 0x0: _print_string()
115 0x4: _print_number()
116 
117 The test packages call _print_string() and _print_number()
118 as subroutines and expect the main program to print a string
119 or a number to a file or to the screen.
120 In "C"-like fashion, the test program calls:
121 
122         print_string("Test passed");
123 
124                 or
125 
126         print_number(20);
127 
128 For _print_string(), the test programs pass a longword address
129 of the string on the stack. For _print_number(), the test programs pass
130 a longword number to be printed.
131 
132 For debugging purposes, after the main program performs a "print"
133 for a test package, it should flush the output so that it's not
134 buffered. In this way, if the test program crashes, at least the previous
135 statements printed will be seen.
136 
137 68060ISP-TEST Entry-points:
138 ---------------------------
139 0x0: integer test
140 
141 68060FPSP-TEST Entry-points:
142 ----------------------------
143 0x00: main fp test
144 0x08: FP unimplemented test
145 0x10: FP enabled snan/operr/ovfl/unfl/dz/inex
146 
147 The floating-point unit test has 3 entry points which will require
148 3 different calls to the package if each of the three following tests
149 is desired:
150 
151 main fp test: tests (1) unimp effective address exception
152                     (2) unsupported data type exceptions
153                     (3) non-maskable overflow/underflow exceptions
154 
155 FP unimplemented: tests FP unimplemented exception. this one is
156                   separate from the previous tests for systems that don't
157                   want FP unimplemented instructions.
158 
159 FP enabled: tests enabled snan/operr/ovfl/unfl/dz/inex.
160             basically, it enables each of these exceptions and forces
161             each using an implemented FP instruction. this process
162             exercises _fpsp_{snan,operr,ovfl,unfl,dz,inex}() and
163             _real_{snan,operr,ovfl,unfl,dz,inex}(). the test expects
164             _real_XXXX() to do nothing except clear the exception
165             and "rte". if a system's _real_XXXX() handler creates an
166             alternate result, the test will print "failed" but this
167             is acceptable.
168 
169 Miscellaneous:
170 --------------
171 Again, itest.sa and ftest.sa are simple tests and do not thoroughly
172 test all 68060SP connections. For example, they do not test connections
173 to _real_access(), _real_trace(), _real_trap(), etc. because these
174 will be system-implemented several different ways and the test packages
175 must remain system independent.
176 
177 Example test package set-up:
178 ----------------------------
179 _print_str:
180         .                       # provided by system
181         rts
182 
183 _print_num:
184         .                       # provided by system
185         rts
186 
187         .
188         .
189         bsr     _060FPSP_TEST+128+0
190         .
191         .
192         rts
193 
194 # beginning of "Call-out" section; provided by integrator.
195 # MUST be 128 bytes long.
196 _060FPSP_TEST:
197         long    _print_str - _060FPSP_TEST
198         long    _print_num - _060FPSP_TEST
199         space   120
200 
201 # ftest.sa starts here; start of "Entry-point" section.
202         long    0x60ff0000, 0x00002346
203         long    0x60ff0000, 0x00018766
204         long    0x60ff0000, 0x00023338
205         long    0x24377299, 0xab2643ea
206                 .
207                 .
208                 .

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php