Blame view

include/linux/flat.h 1.61 KB
b24413180   Greg Kroah-Hartman   License cleanup: ...
1
  /* SPDX-License-Identifier: GPL-2.0 */
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
2
3
4
5
6
7
8
9
  /*
   * Copyright (C) 2002-2003  David McCullough <davidm@snapgear.com>
   * Copyright (C) 1998       Kenneth Albanowski <kjahds@kjahds.com>
   *                          The Silver Hammer Group, Ltd.
   *
   * This file provides the definitions and structures needed to
   * support uClinux flat-format executables.
   */
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
10
11
  #ifndef _LINUX_FLAT_H
  #define _LINUX_FLAT_H
607ca46e9   David Howells   UAPI: (Scripted) ...
12
  #include <uapi/linux/flat.h>
468138d78   Al Viro   binfmt_flat: flat...
13
  #include <asm/flat.h>
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
14

1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
  /*
   * While it would be nice to keep this header clean,  users of older
   * tools still need this support in the kernel.  So this section is
   * purely for compatibility with old tool chains.
   *
   * DO NOT make changes or enhancements to the old format please,  just work
   *        with the format above,  except to fix bugs with old format support.
   */
  
  #include <asm/byteorder.h>
  
  #define	OLD_FLAT_VERSION			0x00000002L
  #define OLD_FLAT_RELOC_TYPE_TEXT	0
  #define OLD_FLAT_RELOC_TYPE_DATA	1
  #define OLD_FLAT_RELOC_TYPE_BSS		2
  
  typedef union {
  	unsigned long	value;
  	struct {
  # if defined(mc68000) && !defined(CONFIG_COLDFIRE)
  		signed long offset : 30;
  		unsigned long type : 2;
  #   	define OLD_FLAT_FLAG_RAM    0x1 /* load program entirely into RAM */
  # elif defined(__BIG_ENDIAN_BITFIELD)
  		unsigned long type : 2;
  		signed long offset : 30;
  #   	define OLD_FLAT_FLAG_RAM    0x1 /* load program entirely into RAM */
  # elif defined(__LITTLE_ENDIAN_BITFIELD)
  		signed long offset : 30;
  		unsigned long type : 2;
  #   	define OLD_FLAT_FLAG_RAM    0x1 /* load program entirely into RAM */
  # else
  #   	error "Unknown bitfield order for flat files."
  # endif
  	} reloc;
  } flat_v2_reloc_t;
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
51
  #endif /* _LINUX_FLAT_H */