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