xref: /openbmc/linux/arch/s390/include/asm/extmem.h (revision b2441318)
1b2441318SGreg Kroah-Hartman /* SPDX-License-Identifier: GPL-2.0 */
2c6557e7fSMartin Schwidefsky /*
3c6557e7fSMartin Schwidefsky  *  definitions for external memory segment support
4a53c8fabSHeiko Carstens  *  Copyright IBM Corp. 2003
5c6557e7fSMartin Schwidefsky  */
6c6557e7fSMartin Schwidefsky 
7c6557e7fSMartin Schwidefsky #ifndef _ASM_S390X_DCSS_H
8c6557e7fSMartin Schwidefsky #define _ASM_S390X_DCSS_H
9c6557e7fSMartin Schwidefsky #ifndef __ASSEMBLY__
10c6557e7fSMartin Schwidefsky 
11c6557e7fSMartin Schwidefsky /* possible values for segment type as returned by segment_info */
12c6557e7fSMartin Schwidefsky #define SEG_TYPE_SW 0
13c6557e7fSMartin Schwidefsky #define SEG_TYPE_EW 1
14c6557e7fSMartin Schwidefsky #define SEG_TYPE_SR 2
15c6557e7fSMartin Schwidefsky #define SEG_TYPE_ER 3
16c6557e7fSMartin Schwidefsky #define SEG_TYPE_SN 4
17c6557e7fSMartin Schwidefsky #define SEG_TYPE_EN 5
18c6557e7fSMartin Schwidefsky #define SEG_TYPE_SC 6
19c6557e7fSMartin Schwidefsky #define SEG_TYPE_EWEN 7
20c6557e7fSMartin Schwidefsky 
21c6557e7fSMartin Schwidefsky #define SEGMENT_SHARED 0
22c6557e7fSMartin Schwidefsky #define SEGMENT_EXCLUSIVE 1
23c6557e7fSMartin Schwidefsky 
24c6557e7fSMartin Schwidefsky int segment_load (char *name, int segtype, unsigned long *addr, unsigned long *length);
25c6557e7fSMartin Schwidefsky void segment_unload(char *name);
26c6557e7fSMartin Schwidefsky void segment_save(char *name);
27c6557e7fSMartin Schwidefsky int segment_type (char* name);
28c6557e7fSMartin Schwidefsky int segment_modify_shared (char *name, int do_nonshared);
29c6557e7fSMartin Schwidefsky void segment_warning(int rc, char *seg_name);
30c6557e7fSMartin Schwidefsky 
31c6557e7fSMartin Schwidefsky #endif
32c6557e7fSMartin Schwidefsky #endif
33