Linux kernel mirror (for testing)
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel
os
linux
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
31int segment_load (char *name, int segtype, unsigned long *addr, unsigned long *length);
32void segment_unload(char *name);
33void segment_save(char *name);
34int segment_type (char* name);
35int segment_modify_shared (char *name, int do_nonshared);
36void segment_warning(int rc, char *seg_name);
37
38#endif
39#endif