1/* 2 * Copyright 2007, Haiku Inc. All rights reserved. 3 * Distributed under the terms of the MIT License. 4 * 5 * Authors: 6 * Fran��ois Revol <revol@free.fr> 7 * 8 * Copyright 2006, Ingo Weinhold <bonefish@cs.tu-berlin.de>. 9 * All rights reserved. Distributed under the terms of the MIT License. 10 */ 11 12#include <OS.h> 13 14#include <arch_cpu.h> 15#include <arch/system_info.h> 16#include <boot/kernel_args.h> 17 18 19static uint64 sCPUClockFrequency; 20static uint64 sBusClockFrequency; 21static uint16 sCPURevision; 22 23 24void 25arch_fill_topology_node(cpu_topology_node_info* node, int32 cpu) 26{ 27 switch (node->type) { 28 case B_TOPOLOGY_ROOT: 29 node->data.root.platform = B_CPU_RISC_V; 30 break; 31 32 case B_TOPOLOGY_PACKAGE: 33 node->data.package.vendor = B_CPU_VENDOR_UNKNOWN; 34 node->data.package.cache_line_size = CACHE_LINE_SIZE; 35 break; 36 37 case B_TOPOLOGY_CORE: 38 node->data.core.model = 0; 39 node->data.core.default_frequency = sCPUClockFrequency; 40 break; 41 42 default: 43 break; 44 } 45} 46 47 48status_t 49arch_system_info_init(struct kernel_args *args) 50{ 51 #warning IMPLEMENT arch_system_info_init clock frequency 52 sCPUClockFrequency = 1000000000; 53 return B_OK; 54} 55 56 57status_t 58arch_get_frequency(uint64 *frequency, int32 cpu) 59{ 60 *frequency = sCPUClockFrequency; 61 return B_OK; 62} 63