11ae08745Sheppo /*
21ae08745Sheppo  * CDDL HEADER START
31ae08745Sheppo  *
41ae08745Sheppo  * The contents of this file are subject to the terms of the
51ae08745Sheppo  * Common Development and Distribution License (the "License").
61ae08745Sheppo  * You may not use this file except in compliance with the License.
71ae08745Sheppo  *
81ae08745Sheppo  * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
91ae08745Sheppo  * or http://www.opensolaris.org/os/licensing.
101ae08745Sheppo  * See the License for the specific language governing permissions
111ae08745Sheppo  * and limitations under the License.
121ae08745Sheppo  *
131ae08745Sheppo  * When distributing Covered Code, include this CDDL HEADER in each
141ae08745Sheppo  * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
151ae08745Sheppo  * If applicable, add the following below this CDDL HEADER, with the
161ae08745Sheppo  * fields enclosed by brackets "[]" replaced with your own identifying
171ae08745Sheppo  * information: Portions Copyright [yyyy] [name of copyright owner]
181ae08745Sheppo  *
191ae08745Sheppo  * CDDL HEADER END
201ae08745Sheppo  */
211ae08745Sheppo 
221ae08745Sheppo /*
23*22e19ac1Sjm  * Copyright 2007 Sun Microsystems, Inc.  All rights reserved.
241ae08745Sheppo  * Use is subject to license terms.
251ae08745Sheppo  */
261ae08745Sheppo 
271ae08745Sheppo #pragma ident	"%Z%%M%	%I%	%E% SMI"
281ae08745Sheppo 
291ae08745Sheppo #include <sys/promif_impl.h>
301ae08745Sheppo #include <sys/hypervisor_api.h>
311ae08745Sheppo 
321ae08745Sheppo /*
33*22e19ac1Sjm  * By the time we reach this function we are single-threaded and
34*22e19ac1Sjm  * running at a high interrupt level.  It is too late to send
35*22e19ac1Sjm  * the boot args to LDoms Manager.  This is now done earlier --
36*22e19ac1Sjm  * see mdboot(), and thus the arg to this function is ignored.
371ae08745Sheppo  */
38*22e19ac1Sjm 
39*22e19ac1Sjm /*ARGSUSED*/
401ae08745Sheppo int
promif_reboot(void * p)411ae08745Sheppo promif_reboot(void *p)
421ae08745Sheppo {
431ae08745Sheppo 	int	rv = 0;
441ae08745Sheppo 
451ae08745Sheppo 	prom_printf("Resetting...\n");
461ae08745Sheppo 
471ae08745Sheppo 	rv = hv_mach_sir();
481ae08745Sheppo 
491ae08745Sheppo 	/* should not return */
501ae08745Sheppo 	ASSERT(0);
511ae08745Sheppo 
521ae08745Sheppo 	return (rv);
531ae08745Sheppo }
54