cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

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 */