diff options
Diffstat (limited to 'sys/arch/sparc64/include/hypervisor.h')
-rw-r--r-- | sys/arch/sparc64/include/hypervisor.h | 28 |
1 files changed, 27 insertions, 1 deletions
diff --git a/sys/arch/sparc64/include/hypervisor.h b/sys/arch/sparc64/include/hypervisor.h index 910403e377b..db3ef6925fb 100644 --- a/sys/arch/sparc64/include/hypervisor.h +++ b/sys/arch/sparc64/include/hypervisor.h @@ -1,4 +1,4 @@ -/* $OpenBSD: hypervisor.h,v 1.5 2008/12/30 21:25:26 kettenis Exp $ */ +/* $OpenBSD: hypervisor.h,v 1.6 2008/12/31 11:37:08 kettenis Exp $ */ /* * Copyright (c) 2008 Mark Kettenis @@ -151,6 +151,32 @@ int64_t hv_pci_config_put(uint64_t devhandle, uint64_t pci_device, #define PCI_MAP_ATTR_READ 0x01 /* From memory */ #define PCI_MAP_ATTR_WRITE 0x02 /* To memory */ +/* + * Logical Domain Channel services + */ + +int64_t hv_ldc_tx_qconf(uint64_t ldc_id, paddr_t base_raddr, + uint64_t nentries); +int64_t hv_ldc_tx_qinfo(uint64_t ldc_id, paddr_t *base_raddr, + uint64_t *nentries); +int64_t hv_ldc_tx_get_state(uint64_t ldc_id, uint64_t *head_offset, + uint64_t *tail_offset, uint64_t *channel_state); +int64_t hv_ldc_tx_set_tail(uint64_t ldc_id, uint64_t tail_offset); +int64_t hv_ldc_rx_qconf(uint64_t ldc_id, paddr_t base_raddr, + uint64_t nentries); +int64_t hv_ldc_rx_qinfo(uint64_t ldc_id, paddr_t *base_raddr, + uint64_t *nentries); +int64_t hv_ldc_rx_get_state(uint64_t ldc_id, uint64_t *head_offset, + uint64_t *tail_offset, uint64_t *channel_state); +int64_t hv_ldc_rx_set_head(uint64_t ldc_id, uint64_t head_offset); + +#define LDC_CHANNEL_DOWN 0 +#define LDC_CHANNEL_UP 1 + +/* + * Cryptographic services + */ + int64_t hv_rng_get_diag_control(void); int64_t hv_rng_ctl_read(paddr_t raddr, uint64_t *state, uint64_t *delta); int64_t hv_rng_ctl_write(paddr_t raddr, uint64_t state, uint64_t timeout, |