* [Qemu-devel] [PATCH] sclp-s390: Define new SCLP codes and structures
@ 2014-01-27 15:57 Matthew Rosato
2014-01-28 11:23 ` Christian Borntraeger
0 siblings, 1 reply; 2+ messages in thread
From: Matthew Rosato @ 2014-01-27 15:57 UTC (permalink / raw)
To: borntraeger, qemu-devel; +Cc: jjherne, agraf, rth
Define new SCLP codes and structures that will be needed for
s390 memory hotplug.
Signed-off-by: Matthew Rosato <mjrosato@linux.vnet.ibm.com>
---
include/hw/s390x/sclp.h | 35 +++++++++++++++++++++++++++++++++++
1 file changed, 35 insertions(+)
Note: As requested, this patch is fit on:
git://github.com/borntraeger/qemu.git s390-next
diff --git a/include/hw/s390x/sclp.h b/include/hw/s390x/sclp.h
index 2fec2f8..2c74ebe 100644
--- a/include/hw/s390x/sclp.h
+++ b/include/hw/s390x/sclp.h
@@ -22,12 +22,23 @@
/* SCLP command codes */
#define SCLP_CMDW_READ_SCP_INFO 0x00020001
#define SCLP_CMDW_READ_SCP_INFO_FORCED 0x00120001
+#define SCLP_READ_STORAGE_ELEMENT_INFO 0x00040001
+#define SCLP_ATTACH_STORAGE_ELEMENT 0x00080001
+#define SCLP_ASSIGN_STORAGE 0x000D0001
+#define SCLP_UNASSIGN_STORAGE 0x000C0001
#define SCLP_CMD_READ_EVENT_DATA 0x00770005
#define SCLP_CMD_WRITE_EVENT_DATA 0x00760005
#define SCLP_CMD_READ_EVENT_DATA 0x00770005
#define SCLP_CMD_WRITE_EVENT_DATA 0x00760005
#define SCLP_CMD_WRITE_EVENT_MASK 0x00780005
+/* SCLP Memory hotplug codes */
+#define SCLP_NO_CMD_PARM 0xffff00ff
+#define SCLP_FC_ASSIGN_ATTACH_READ_STOR 0xE00000000000ULL
+#define SCLP_STARTING_SUBINCREMENT_ID 0x10001
+#define SCLP_INCREMENT_UNIT 0x10000
+#define MAX_AVAIL_SLOTS 32
+
/* CPU hotplug SCLP codes */
#define SCLP_HAS_CPU_INFO 0x0C00000000000000ULL
#define SCLP_CMDW_READ_CPU_INFO 0x00010001
@@ -37,9 +48,11 @@
/* SCLP response codes */
#define SCLP_RC_NORMAL_READ_COMPLETION 0x0010
#define SCLP_RC_NORMAL_COMPLETION 0x0020
+#define SCLP_RC_SCCB_BOUNDARY_VIOLATION 0x0100
#define SCLP_RC_INVALID_SCLP_COMMAND 0x01f0
#define SCLP_RC_CONTAINED_EQUIPMENT_CHECK 0x0340
#define SCLP_RC_INSUFFICIENT_SCCB_LENGTH 0x0300
+#define SCLP_RC_STANDBY_READ_COMPLETION 0x0410
#define SCLP_RC_INVALID_FUNCTION 0x40f0
#define SCLP_RC_NO_EVENT_BUFFERS_STORED 0x60f0
#define SCLP_RC_INVALID_SELECTION_MASK 0x70f0
@@ -117,6 +130,28 @@ typedef struct ReadCpuInfo {
struct CPUEntry entries[0];
} QEMU_PACKED ReadCpuInfo;
+typedef struct ReadStorageElementInfo {
+ SCCBHeader h;
+ uint16_t max_id;
+ uint16_t assigned;
+ uint16_t standby;
+ uint8_t _reserved0[16 - 14]; /* 14-15 */
+ uint32_t entries[0];
+} QEMU_PACKED ReadStorageElementInfo;
+
+typedef struct AttachStorageElement {
+ SCCBHeader h;
+ uint8_t _reserved0[10 - 8]; /* 8-9 */
+ uint16_t assigned;
+ uint8_t _reserved1[16 - 12]; /* 12-15 */
+ uint32_t entries[0];
+} QEMU_PACKED AttachStorageElement;
+
+typedef struct AssignStorage {
+ SCCBHeader h;
+ uint16_t rn;
+} QEMU_PACKED AssignStorage;
+
typedef struct SCCB {
SCCBHeader h;
char data[SCCB_DATA_LEN];
--
1.7.9.5
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [Qemu-devel] [PATCH] sclp-s390: Define new SCLP codes and structures
2014-01-27 15:57 [Qemu-devel] [PATCH] sclp-s390: Define new SCLP codes and structures Matthew Rosato
@ 2014-01-28 11:23 ` Christian Borntraeger
0 siblings, 0 replies; 2+ messages in thread
From: Christian Borntraeger @ 2014-01-28 11:23 UTC (permalink / raw)
To: Matthew Rosato, qemu-devel; +Cc: jjherne, agraf, rth
On 27/01/14 16:57, Matthew Rosato wrote:
> Define new SCLP codes and structures that will be needed for
> s390 memory hotplug.
>
> Signed-off-by: Matthew Rosato <mjrosato@linux.vnet.ibm.com>
Applied with a small fixup.
> +/* SCLP Memory hotplug codes */
> +#define SCLP_NO_CMD_PARM 0xffff00ff
I removed this define, since it is already there due to the cpu hotplug
patches. (#define SCLP_CMD_CODE_MASK 0xffff00ff)
Christian
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2014-01-28 11:23 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-01-27 15:57 [Qemu-devel] [PATCH] sclp-s390: Define new SCLP codes and structures Matthew Rosato
2014-01-28 11:23 ` Christian Borntraeger
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).