4df55fde49134f9735f84011f23a767c75e393c7Janie Lu/*
4df55fde49134f9735f84011f23a767c75e393c7Janie Lu * CDDL HEADER START
4df55fde49134f9735f84011f23a767c75e393c7Janie Lu *
4df55fde49134f9735f84011f23a767c75e393c7Janie Lu * The contents of this file are subject to the terms of the
4df55fde49134f9735f84011f23a767c75e393c7Janie Lu * Common Development and Distribution License (the "License").
4df55fde49134f9735f84011f23a767c75e393c7Janie Lu * You may not use this file except in compliance with the License.
4df55fde49134f9735f84011f23a767c75e393c7Janie Lu *
4df55fde49134f9735f84011f23a767c75e393c7Janie Lu * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
4df55fde49134f9735f84011f23a767c75e393c7Janie Lu * or http://www.opensolaris.org/os/licensing.
4df55fde49134f9735f84011f23a767c75e393c7Janie Lu * See the License for the specific language governing permissions
4df55fde49134f9735f84011f23a767c75e393c7Janie Lu * and limitations under the License.
4df55fde49134f9735f84011f23a767c75e393c7Janie Lu *
4df55fde49134f9735f84011f23a767c75e393c7Janie Lu * When distributing Covered Code, include this CDDL HEADER in each
4df55fde49134f9735f84011f23a767c75e393c7Janie Lu * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
4df55fde49134f9735f84011f23a767c75e393c7Janie Lu * If applicable, add the following below this CDDL HEADER, with the
4df55fde49134f9735f84011f23a767c75e393c7Janie Lu * fields enclosed by brackets "[]" replaced with your own identifying
4df55fde49134f9735f84011f23a767c75e393c7Janie Lu * information: Portions Copyright [yyyy] [name of copyright owner]
4df55fde49134f9735f84011f23a767c75e393c7Janie Lu *
4df55fde49134f9735f84011f23a767c75e393c7Janie Lu * CDDL HEADER END
4df55fde49134f9735f84011f23a767c75e393c7Janie Lu */
4df55fde49134f9735f84011f23a767c75e393c7Janie Lu
4df55fde49134f9735f84011f23a767c75e393c7Janie Lu/*
4df55fde49134f9735f84011f23a767c75e393c7Janie Lu * Copyright 2009 Sun Microsystems, Inc. All rights reserved.
4df55fde49134f9735f84011f23a767c75e393c7Janie Lu * Use is subject to license terms.
4df55fde49134f9735f84011f23a767c75e393c7Janie Lu */
4df55fde49134f9735f84011f23a767c75e393c7Janie Lu
4df55fde49134f9735f84011f23a767c75e393c7Janie Lu/*
4df55fde49134f9735f84011f23a767c75e393c7Janie Lu * Hypervisor calls called by ds_pri driver.
4df55fde49134f9735f84011f23a767c75e393c7Janie Lu */
4df55fde49134f9735f84011f23a767c75e393c7Janie Lu
4df55fde49134f9735f84011f23a767c75e393c7Janie Lu#include <sys/asm_linkage.h>
4df55fde49134f9735f84011f23a767c75e393c7Janie Lu#include <sys/hypervisor_api.h>
4df55fde49134f9735f84011f23a767c75e393c7Janie Lu
4df55fde49134f9735f84011f23a767c75e393c7Janie Lu#if defined(lint) || defined(__lint)
4df55fde49134f9735f84011f23a767c75e393c7Janie Lu
4df55fde49134f9735f84011f23a767c75e393c7Janie Lu/*ARGSUSED*/
4df55fde49134f9735f84011f23a767c75e393c7Janie Luuint64_t
4df55fde49134f9735f84011f23a767c75e393c7Janie Luhv_mach_pri(uint64_t buffer_ra, uint64_t *buffer_sizep)
4df55fde49134f9735f84011f23a767c75e393c7Janie Lu{ return (0); }
4df55fde49134f9735f84011f23a767c75e393c7Janie Lu
4df55fde49134f9735f84011f23a767c75e393c7Janie Lu#else /* lint || __lint */
4df55fde49134f9735f84011f23a767c75e393c7Janie Lu
4df55fde49134f9735f84011f23a767c75e393c7Janie Lu /*
4df55fde49134f9735f84011f23a767c75e393c7Janie Lu * MACH_PRI
4df55fde49134f9735f84011f23a767c75e393c7Janie Lu * arg0 buffer real address
4df55fde49134f9735f84011f23a767c75e393c7Janie Lu * arg1 pointer to uint64_t for size of buffer
4df55fde49134f9735f84011f23a767c75e393c7Janie Lu * ret0 status
4df55fde49134f9735f84011f23a767c75e393c7Janie Lu * ret1 return required size of buffer / returned data size
4df55fde49134f9735f84011f23a767c75e393c7Janie Lu */
4df55fde49134f9735f84011f23a767c75e393c7Janie Lu ENTRY(hv_mach_pri)
4df55fde49134f9735f84011f23a767c75e393c7Janie Lu mov %o1, %o4 ! save datap
4df55fde49134f9735f84011f23a767c75e393c7Janie Lu ldx [%o1], %o1
4df55fde49134f9735f84011f23a767c75e393c7Janie Lu mov HV_MACH_PRI, %o5
4df55fde49134f9735f84011f23a767c75e393c7Janie Lu ta FAST_TRAP
4df55fde49134f9735f84011f23a767c75e393c7Janie Lu retl
4df55fde49134f9735f84011f23a767c75e393c7Janie Lu stx %o1, [%o4]
4df55fde49134f9735f84011f23a767c75e393c7Janie Lu SET_SIZE(hv_mach_pri)
4df55fde49134f9735f84011f23a767c75e393c7Janie Lu
4df55fde49134f9735f84011f23a767c75e393c7Janie Lu#endif /* lint || __lint */