summaryrefslogtreecommitdiffstats
path: root/src/lib/syscall_misc.C
blob: ec2125d637abf85163bf06659032aa6dd02901fb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <sys/misc.h>
#include <sys/syscall.h>
#include <sys/mmio.h>

using namespace Systemcalls;

void shutdown(uint64_t i_status)
{
    mmio_scratch_write(MMIO_SCRATCH_IPLSTEP_CONFIG, 0x1234ABCD);
    _syscall1(MISC_SHUTDOWN, reinterpret_cast<void*>(i_status));
}

ProcessorCoreType cpu_core_type()
{
    return static_cast<ProcessorCoreType>(
            reinterpret_cast<uint64_t>(_syscall0(MISC_CPUCORETYPE)));
}

uint8_t cpu_dd_level()
{
    return reinterpret_cast<uint64_t>(_syscall0(MISC_CPUDDLEVEL));
}

OpenPOWER on IntegriCloud