summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorkettenis <kettenis@openbsd.org>2020-07-10 12:38:09 +0000
committerkettenis <kettenis@openbsd.org>2020-07-10 12:38:09 +0000
commit5c61b45185975e0c21bf04f123dfde3f6b308aeb (patch)
tree36ad9186348777d0fd8408b725c779e67a18166b
parentClean up s_client.c (diff)
downloadwireguard-openbsd-5c61b45185975e0c21bf04f123dfde3f6b308aeb.tar.xz
wireguard-openbsd-5c61b45185975e0c21bf04f123dfde3f6b308aeb.zip
Add OPAL_REINIT_CPUS.
-rw-r--r--sys/arch/powerpc64/include/opal.h11
-rw-r--r--sys/arch/powerpc64/powerpc64/locore.S3
2 files changed, 12 insertions, 2 deletions
diff --git a/sys/arch/powerpc64/include/opal.h b/sys/arch/powerpc64/include/opal.h
index ceadc0e6094..fe6cb202f3a 100644
--- a/sys/arch/powerpc64/include/opal.h
+++ b/sys/arch/powerpc64/include/opal.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: opal.h,v 1.13 2020/07/07 22:43:29 kettenis Exp $ */
+/* $OpenBSD: opal.h,v 1.14 2020/07/10 12:38:09 kettenis Exp $ */
/*
* Copyright (c) 2020 Mark Kettenis <kettenis@openbsd.org>
@@ -42,6 +42,7 @@
#define OPAL_GET_MSI_64 40
#define OPAL_PCI_MAP_PE_DMA_WINDOW_REAL 45
#define OPAL_PCI_RESET 49
+#define OPAL_REINIT_CPUS 70
#define OPAL_CHECK_TOKEN 80
#define OPAL_SENSOR_READ 88
#define OPAL_CONSOLE_FLUSH 117
@@ -109,6 +110,13 @@
#define OPAL_DEASSERT_RESET 0
#define OPAL_ASSERT_RESET 1
+/* OPAL_REINIT_CPUS */
+#define OPAL_REINIT_CPUS_HILE_BE 0x00000001
+#define OPAL_REINIT_CPUS_HILE_LE 0x00000002
+#define OPAL_REINIT_CPUS_MMU_HASH 0x00000004
+#define OPAL_REINIT_CPUS_MMU_RADIX 0x00000008
+#define OPAL_REINIT_CPUS_TM_SUSPEND_DISABLED 0x00000010
+
/* OPAL_CHECK_TOKEN */
#define OPAL_TOKEN_ABSENT 0
#define OPAL_TOKEN_PRESENT 1
@@ -175,6 +183,7 @@ int64_t opal_get_msi_64(uint64_t, uint32_t, uint32_t, uint8_t,
int64_t opal_pci_map_pe_dma_window_real(uint64_t, uint64_t, uint16_t,
uint64_t, uint64_t);
int64_t opal_pci_reset(uint64_t, uint8_t, uint8_t);
+int64_t opal_reinit_cpus(uint64_t);
int64_t opal_check_token(uint64_t);
int64_t opal_sensor_read(uint32_t, int, uint32_t *);
int64_t opal_console_flush(uint64_t);
diff --git a/sys/arch/powerpc64/powerpc64/locore.S b/sys/arch/powerpc64/powerpc64/locore.S
index e7c7e73e526..44889c00c76 100644
--- a/sys/arch/powerpc64/powerpc64/locore.S
+++ b/sys/arch/powerpc64/powerpc64/locore.S
@@ -1,4 +1,4 @@
-/* $OpenBSD: locore.S,v 1.30 2020/07/07 22:43:29 kettenis Exp $ */
+/* $OpenBSD: locore.S,v 1.31 2020/07/10 12:38:09 kettenis Exp $ */
/*
* Copyright (c) 2020 Mark Kettenis <kettenis@openbsd.org>
@@ -280,6 +280,7 @@ OPAL_CALL(OPAL_GET_MSI_32, opal_get_msi_32)
OPAL_CALL(OPAL_GET_MSI_64, opal_get_msi_64)
OPAL_CALL(OPAL_PCI_MAP_PE_DMA_WINDOW_REAL, opal_pci_map_pe_dma_window_real)
OPAL_CALL(OPAL_PCI_RESET, opal_pci_reset)
+OPAL_CALL(OPAL_REINIT_CPUS, opal_reinit_cpus)
OPAL_CALL(OPAL_CHECK_TOKEN, opal_check_token)
OPAL_CALL(OPAL_SENSOR_READ, opal_sensor_read)
OPAL_CALL(OPAL_CONSOLE_FLUSH, opal_console_flush)