1/* SPDX-License-Identifier: GPL-2.0-or-later */
2/*
3 * Linux/PA-RISC Project (http://www.parisc-linux.org/)
4 *
5 * Floating-point emulation code
6 *  Copyright (C) 2001 Hewlett-Packard (Paul Bame) <bame@debian.org>
7 */
8/*
9 * BEGIN_DESC
10 *
11 *  File:
12 *      @(#)	pa/fp/fpu.h		$Revision: 1.1 $
13 *
14 *  Purpose:
15 *      <<please update with a synopis of the functionality provided by this file>>
16 *
17 *
18 * END_DESC
19*/
20
21#ifdef __NO_PA_HDRS
22    PA header file -- do not include this header file for non-PA builds.
23#endif
24
25
26#ifndef _MACHINE_FPU_INCLUDED /* allows multiple inclusion */
27#define _MACHINE_FPU_INCLUDED
28
29#if 0
30#ifndef _SYS_STDSYMS_INCLUDED
31#    include <sys/stdsyms.h>
32#endif   /* _SYS_STDSYMS_INCLUDED  */
33#include  <machine/pdc/pdc_rqsts.h>
34#endif
35
36#define PA83_FPU_FLAG    0x00000001
37#define PA89_FPU_FLAG    0x00000002
38#define PA2_0_FPU_FLAG   0x00000010
39
40#define TIMEX_EXTEN_FLAG 0x00000004
41
42#define ROLEX_EXTEN_FLAG 0x00000008
43#define COPR_FP 	0x00000080	/* Floating point -- Coprocessor 0 */
44#define SFU_MPY_DIVIDE	0x00008000	/* Multiply/Divide __ SFU 0 */
45
46
47#define EM_FPU_TYPE_OFFSET 272
48
49/* version of EMULATION software for COPR,0,0 instruction */
50#define EMULATION_VERSION 4
51
52/*
53 * The only was to differeniate between TIMEX and ROLEX (or PCX-S and PCX-T)
54 * is thorough the potential type field from the PDC_MODEL call.  The
55 * following flags are used at assist this differeniation.
56 */
57
58#define ROLEX_POTENTIAL_KEY_FLAGS	PDC_MODEL_CPU_KEY_WORD_TO_IO
59#define TIMEX_POTENTIAL_KEY_FLAGS	(PDC_MODEL_CPU_KEY_QUAD_STORE | \
60					 PDC_MODEL_CPU_KEY_RECIP_SQRT)
61
62
63#endif /* ! _MACHINE_FPU_INCLUDED */
64