extmem.h 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. /* SPDX-License-Identifier: GPL-2.0 */
  2. /*
  3. * definitions for external memory segment support
  4. * Copyright IBM Corp. 2003
  5. */
  6. #ifndef _ASM_S390X_DCSS_H
  7. #define _ASM_S390X_DCSS_H
  8. #ifndef __ASSEMBLER__
  9. /*
  10. * DCSS segment is defined as a contiguous range of pages using DEFSEG command.
  11. * The range start and end is a page number with a value less than or equal to
  12. * 0x7ffffff (see CP Commands and Utilities Reference).
  13. */
  14. #define MAX_DCSS_ADDR (512UL * SZ_1G)
  15. /* possible values for segment type as returned by segment_info */
  16. #define SEG_TYPE_SW 0
  17. #define SEG_TYPE_EW 1
  18. #define SEG_TYPE_SR 2
  19. #define SEG_TYPE_ER 3
  20. #define SEG_TYPE_SN 4
  21. #define SEG_TYPE_EN 5
  22. #define SEG_TYPE_SC 6
  23. #define SEG_TYPE_EWEN 7
  24. #define SEGMENT_SHARED 0
  25. #define SEGMENT_EXCLUSIVE 1
  26. int segment_load (char *name, int segtype, unsigned long *addr, unsigned long *length);
  27. void segment_unload(char *name);
  28. void segment_save(char *name);
  29. int segment_type (char* name);
  30. int segment_modify_shared (char *name, int do_nonshared);
  31. void segment_warning(int rc, char *seg_name);
  32. #endif
  33. #endif