1/* 2 * Copyright 2006, Ingo Weinhold <bonefish@cs.tu-berlin.de>. 3 * All rights reserved. Distributed under the terms of the MIT License. 4 */ 5 6#include <OS.h> 7 8#include <arch_cpu.h> 9#include <libroot_private.h> 10#include <real_time_data.h> 11 12 13static vint32 *sConversionFactor; 14 15void 16__ppc_setup_system_time(vint32 *cvFactor) 17{ 18 sConversionFactor = cvFactor; 19} 20 21 22bigtime_t 23system_time(void) 24{ 25 uint64 timeBase = __ppc_get_time_base(); 26 27 uint32 cv = *sConversionFactor; 28 return (timeBase >> 32) * cv + (((timeBase & 0xffffffff) * cv) >> 32); 29} 30