Commit d96c5db7 authored by Jason J. Herne's avatar Jason J. Herne Committed by Thomas Huth
Browse files

s390-bios: Clean up cio.h



Add proper typedefs to all structs and modify all bit fields to use consistent
formatting.

Signed-off-by: default avatarJason J. Herne <jjherne@linux.ibm.com>
Reviewed-by: default avatarCollin Walling <walling@linux.ibm.com>
Reviewed-by: default avatarFarhan Ali <alifm@linux.ibm.com>
Acked-by: default avatarCornelia Huck <cohuck@redhat.com>
Reviewed-by: default avatarThomas Huth <thuth@redhat.com>
Message-Id: <1554388475-18329-5-git-send-email-jjherne@linux.ibm.com>
Signed-off-by: default avatarThomas Huth <thuth@redhat.com>
parent a5f6e097
Loading
Loading
Loading
Loading
+57 −57
Original line number Diff line number Diff line
@@ -77,28 +77,28 @@ struct scsw {
/*
 * subchannel information block
 */
struct schib {
typedef struct schib {
    struct pmcw pmcw;     /* path management control word */
    struct scsw scsw;     /* subchannel status word */
    __u64 mba;            /* measurement block address */
    __u8 mda[4];          /* model dependent area */
} __attribute__ ((packed,aligned(4)));
} __attribute__ ((packed, aligned(4))) Schib;

struct subchannel_id {
typedef struct subchannel_id {
        __u32 cssid:8;
        __u32:4;
        __u32 m:1;
        __u32 ssid:2;
        __u32 one:1;
        __u32 sch_no:16;
} __attribute__ ((packed, aligned(4)));
} __attribute__ ((packed, aligned(4))) SubChannelId;

struct chsc_header {
    __u16 length;
    __u16 code;
} __attribute__((packed));

struct chsc_area_sda {
typedef struct chsc_area_sda {
    struct chsc_header request;
    __u8 reserved1:4;
    __u8 format:4;
@@ -111,7 +111,7 @@ struct chsc_area_sda {
    __u32 reserved5:4;
    __u32 format2:4;
    __u32 reserved6:24;
} __attribute__((packed));
} __attribute__((packed)) ChscAreaSda;

/*
 * TPI info structure
@@ -128,12 +128,12 @@ struct tpi_info {
} __attribute__ ((packed, aligned(4)));

/* channel command word (type 1) */
struct ccw1 {
typedef struct ccw1 {
    __u8 cmd_code;
    __u8 flags;
    __u16 count;
    __u32 cda;
} __attribute__ ((packed, aligned(8)));
} __attribute__ ((packed, aligned(8))) Ccw1;

#define CCW_FLAG_DC              0x80
#define CCW_FLAG_CC              0x40
@@ -162,7 +162,7 @@ struct ccw1 {
/*
 * Command-mode operation request block
 */
struct cmd_orb {
typedef struct cmd_orb {
    __u32 intparm;    /* interruption parameter */
    __u32 key:4;      /* flags, like key, suspend control, etc. */
    __u32 spnd:1;     /* suspend control */
@@ -182,7 +182,7 @@ struct cmd_orb {
    __u32 zero:6;     /* reserved zeros */
    __u32 orbx:1;     /* ORB extension control */
    __u32 cpa;    /* channel program address */
}  __attribute__ ((packed, aligned(4)));
}  __attribute__ ((packed, aligned(4))) CmdOrb;

struct ciw {
    __u8 type;
@@ -193,7 +193,7 @@ struct ciw {
/*
 * sense-id response buffer layout
 */
struct senseid {
typedef struct senseid {
    /* common part */
    __u8  reserved;   /* always 0x'FF' */
    __u16 cu_type;    /* control unit type */
@@ -203,15 +203,15 @@ struct senseid {
    __u8  unused;     /* padding byte */
    /* extended part */
    struct ciw ciw[62];
}  __attribute__ ((packed, aligned(4)));
}  __attribute__ ((packed, aligned(4))) SenseId;

/* interruption response block */
struct irb {
typedef struct irb {
    struct scsw scsw;
    __u32 esw[5];
    __u32 ecw[8];
    __u32 emw[8];
}  __attribute__ ((packed, aligned(4)));
}  __attribute__ ((packed, aligned(4))) Irb;

/*
 * Some S390 specific IO instructions as inline
+0 −8
Original line number Diff line number Diff line
@@ -49,14 +49,6 @@ typedef unsigned long long __u64;
#include "cio.h"
#include "iplb.h"

typedef struct irb Irb;
typedef struct ccw1 Ccw1;
typedef struct cmd_orb CmdOrb;
typedef struct schib Schib;
typedef struct chsc_area_sda ChscAreaSda;
typedef struct senseid SenseId;
typedef struct subchannel_id SubChannelId;

/* start.s */
void disabled_wait(void);
void consume_sclp_int(void);