chsc.h (1383B)
1/* SPDX-License-Identifier: GPL-2.0 */ 2/* 3 * Copyright IBM Corp. 2020 4 * 5 * Author(s): Alexandra Winter <wintera@linux.ibm.com> 6 * 7 * Interface for Channel Subsystem Call 8 */ 9#ifndef _ASM_S390_CHSC_H 10#define _ASM_S390_CHSC_H 11 12#include <uapi/asm/chsc.h> 13 14/** 15 * Operation codes for CHSC PNSO: 16 * PNSO_OC_NET_BRIDGE_INFO - only addresses that are visible to a bridgeport 17 * PNSO_OC_NET_ADDR_INFO - all addresses 18 */ 19#define PNSO_OC_NET_BRIDGE_INFO 0 20#define PNSO_OC_NET_ADDR_INFO 3 21/** 22 * struct chsc_pnso_naid_l2 - network address information descriptor 23 * @nit: Network interface token 24 * @addr_lnid: network address and logical network id (VLAN ID) 25 */ 26struct chsc_pnso_naid_l2 { 27 u64 nit; 28 struct { u8 mac[6]; u16 lnid; } addr_lnid; 29} __packed; 30 31struct chsc_pnso_resume_token { 32 u64 t1; 33 u64 t2; 34} __packed; 35 36struct chsc_pnso_naihdr { 37 struct chsc_pnso_resume_token resume_token; 38 u32:32; 39 u32 instance; 40 u32:24; 41 u8 naids; 42 u32 reserved[3]; 43} __packed; 44 45struct chsc_pnso_area { 46 struct chsc_header request; 47 u8:2; 48 u8 m:1; 49 u8:5; 50 u8:2; 51 u8 ssid:2; 52 u8 fmt:4; 53 u16 sch; 54 u8:8; 55 u8 cssid; 56 u16:16; 57 u8 oc; 58 u32:24; 59 struct chsc_pnso_resume_token resume_token; 60 u32 n:1; 61 u32:31; 62 u32 reserved[3]; 63 struct chsc_header response; 64 u32:32; 65 struct chsc_pnso_naihdr naihdr; 66 struct chsc_pnso_naid_l2 entries[]; 67} __packed __aligned(PAGE_SIZE); 68 69#endif /* _ASM_S390_CHSC_H */