git.openpandora.org
/
pandora-kernel.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 'devel' of master.kernel.org:/home/rmk/linux-2.6-arm
[pandora-kernel.git]
/
arch
/
sparc64
/
prom
/
misc.c
diff --git
a/arch/sparc64/prom/misc.c
b/arch/sparc64/prom/misc.c
index
f3e0c14
..
68c83ad
100644
(file)
--- a/
arch/sparc64/prom/misc.c
+++ b/
arch/sparc64/prom/misc.c
@@
-14,6
+14,7
@@
#include <asm/openprom.h>
#include <asm/oplib.h>
#include <asm/system.h>
#include <asm/openprom.h>
#include <asm/oplib.h>
#include <asm/system.h>
+#include <asm/ldc.h>
int prom_service_exists(const char *service_name)
{
int prom_service_exists(const char *service_name)
{
@@
-37,6
+38,10
@@
void prom_sun4v_guest_soft_state(void)
/* Reset and reboot the machine with the command 'bcommand'. */
void prom_reboot(const char *bcommand)
{
/* Reset and reboot the machine with the command 'bcommand'. */
void prom_reboot(const char *bcommand)
{
+#ifdef CONFIG_SUN_LDOMS
+ if (ldom_domaining_enabled)
+ ldom_reboot(bcommand);
+#endif
p1275_cmd("boot", P1275_ARG(0, P1275_ARG_IN_STRING) |
P1275_INOUT(1, 0), bcommand);
}
p1275_cmd("boot", P1275_ARG(0, P1275_ARG_IN_STRING) |
P1275_INOUT(1, 0), bcommand);
}
@@
-67,7
+72,7
@@
void prom_cmdline(void)
local_irq_save(flags);
local_irq_save(flags);
- if (
!serial_console &&
prom_palette)
+ if (prom_palette)
prom_palette(1);
#ifdef CONFIG_SMP
prom_palette(1);
#ifdef CONFIG_SMP
@@
-80,7
+85,7
@@
void prom_cmdline(void)
smp_release();
#endif
smp_release();
#endif
- if (
!serial_console &&
prom_palette)
+ if (prom_palette)
prom_palette(0);
local_irq_restore(flags);
prom_palette(0);
local_irq_restore(flags);
@@
-91,6
+96,10
@@
void prom_cmdline(void)
*/
void prom_halt(void)
{
*/
void prom_halt(void)
{
+#ifdef CONFIG_SUN_LDOMS
+ if (ldom_domaining_enabled)
+ ldom_power_off();
+#endif
again:
p1275_cmd("exit", P1275_INOUT(0, 0));
goto again; /* PROM is out to get me -DaveM */
again:
p1275_cmd("exit", P1275_INOUT(0, 0));
goto again; /* PROM is out to get me -DaveM */
@@
-98,6
+107,10
@@
again:
void prom_halt_power_off(void)
{
void prom_halt_power_off(void)
{
+#ifdef CONFIG_SUN_LDOMS
+ if (ldom_domaining_enabled)
+ ldom_power_off();
+#endif
p1275_cmd("SUNW,power-off", P1275_INOUT(0, 0));
/* if nothing else helps, we just halt */
p1275_cmd("SUNW,power-off", P1275_INOUT(0, 0));
/* if nothing else helps, we just halt */