X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=arch%2Fsparc64%2Fprom%2Fmisc.c;fp=arch%2Fsparc64%2Fprom%2Fmisc.c;h=87f5cfce23bbccdd48f0fdc90e724c2abd224834;hb=64ba3f394c830ec48a1c31b53dcae312c56f1604;hp=0b4213720d439167e3ba7f59ab5b78849df072d3;hpb=be1e6109ac94a859551f8e1774eb9a8469fe055c;p=linux-2.6.git diff --git a/arch/sparc64/prom/misc.c b/arch/sparc64/prom/misc.c index 0b4213720..87f5cfce2 100644 --- a/arch/sparc64/prom/misc.c +++ b/arch/sparc64/prom/misc.c @@ -6,6 +6,7 @@ * Copyright (C) 1996,1997 Jakub Jelinek (jj@sunsite.mff.cuni.cz) */ +#include #include #include #include @@ -111,20 +112,28 @@ unsigned char prom_get_idprom(char *idbuf, int num_bytes) return 0xff; } -/* Install Linux trap table so PROM uses that instead of its own. */ -void prom_set_trap_table(unsigned long tba) +/* Get the major prom version number. */ +int prom_version(void) +{ + return PROM_P1275; +} + +/* Get the prom plugin-revision. */ +int prom_getrev(void) +{ + return prom_rev; +} + +/* Get the prom firmware print revision. */ +int prom_getprev(void) { - p1275_cmd("SUNW,set-trap-table", - (P1275_ARG(0, P1275_ARG_IN_64B) | - P1275_INOUT(1, 0)), tba); + return prom_prev; } -void prom_set_trap_table_sun4v(unsigned long tba, unsigned long mmfsa) +/* Install Linux trap table so PROM uses that instead of its own. */ +void prom_set_trap_table(unsigned long tba) { - p1275_cmd("SUNW,set-trap-table", - (P1275_ARG(0, P1275_ARG_IN_64B) | - P1275_ARG(1, P1275_ARG_IN_64B) | - P1275_INOUT(2, 0)), tba, mmfsa); + p1275_cmd("SUNW,set-trap-table", P1275_INOUT(1, 0), tba); } int prom_get_mmu_ihandle(void) @@ -294,21 +303,9 @@ int prom_wakeupsystem(void) } #ifdef CONFIG_SMP -void prom_startcpu(int cpunode, unsigned long pc, unsigned long arg) -{ - p1275_cmd("SUNW,start-cpu", P1275_INOUT(3, 0), cpunode, pc, arg); -} - -void prom_startcpu_cpuid(int cpuid, unsigned long pc, unsigned long arg) -{ - p1275_cmd("SUNW,start-cpu-by-cpuid", P1275_INOUT(3, 0), - cpuid, pc, arg); -} - -void prom_stopcpu_cpuid(int cpuid) +void prom_startcpu(int cpunode, unsigned long pc, unsigned long o0) { - p1275_cmd("SUNW,stop-cpu-by-cpuid", P1275_INOUT(1, 0), - cpuid); + p1275_cmd("SUNW,start-cpu", P1275_INOUT(3, 0), cpunode, pc, o0); } void prom_stopself(void)