Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/C/Linux/arch/s390/include/asm/   (Open Source Betriebssystem Version 6.17.9©)  Datei vom 24.10.2025 mit Größe 1 kB image not shown  

Quelle  appldata.h   Sprache: C

 
/* SPDX-License-Identifier: GPL-2.0 */
/*
 * Copyright IBM Corp. 2006
 *
 * Author(s): Melissa Howland <melissah@us.ibm.com>
 */


#ifndef _ASM_S390_APPLDATA_H
#define _ASM_S390_APPLDATA_H

#include <linux/io.h>
#include <asm/machine.h>
#include <asm/diag.h>

#define APPLDATA_START_INTERVAL_REC 0x80
#define APPLDATA_STOP_REC  0x81
#define APPLDATA_GEN_EVENT_REC  0x82
#define APPLDATA_START_CONFIG_REC 0x83

/*
 * Parameter list for DIAGNOSE X'DC'
 */

struct appldata_parameter_list {
 u16 diag;
 u8  function;
 u8  parlist_length;
 u32 unused01;
 u16 reserved;
 u16 buffer_length;
 u32 unused02;
 u64 product_id_addr;
 u64 buffer_addr;
} __attribute__ ((packed));

struct appldata_product_id {
 char prod_nr[7]; /* product number */
 u16  prod_fn;  /* product function */
 u8   record_nr;  /* record number */
 u16  version_nr; /* version */
 u16  release_nr; /* release */
 u16  mod_lvl;  /* modification level */
} __attribute__ ((packed));


static inline int appldata_asm(struct appldata_parameter_list *parm_list,
          struct appldata_product_id *id,
          unsigned short fn, void *buffer,
          unsigned short length)
{
 int ry;

 if (!machine_is_vm())
  return -EOPNOTSUPP;
 parm_list->diag = 0xdc;
 parm_list->function = fn;
 parm_list->parlist_length = sizeof(*parm_list);
 parm_list->buffer_length = length;
 parm_list->product_id_addr = virt_to_phys(id);
 parm_list->buffer_addr = virt_to_phys(buffer);
 diag_stat_inc(DIAG_STAT_X0DC);
 asm volatile(
  " diag %1,%0,0xdc"
  : "=d" (ry)
  : "d" (virt_to_phys(parm_list)), "m" (*parm_list), "m" (*id)
  : "cc");
 return ry;
}

#endif /* _ASM_S390_APPLDATA_H */

Messung V0.5
C=86 H=73 G=79

¤ Dauer der Verarbeitung: 0.12 Sekunden  (vorverarbeitet)  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.