Implemented the PPC specific RTC support. We search for an "rtc"
device in the Open Firmware implementation of boot loader and pass its path to the kernel, where it's opened and used for getting/setting the real time. The expensive atomic_*64() on PPC 32-bit make things a bit more complicated. Moreover, missing 64 bit multiplication and division instructions won't really allow system_time() to be anywhere near as fast as on x86. :-/ git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15837 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
@@ -7,6 +7,8 @@
|
||||
|
||||
#include <arch/platform.h>
|
||||
|
||||
struct real_time_data;
|
||||
|
||||
namespace BPrivate {
|
||||
|
||||
class PPCPlatform {
|
||||
@@ -19,9 +21,14 @@ public:
|
||||
virtual status_t Init(struct kernel_args *kernelArgs) = 0;
|
||||
virtual status_t InitSerialDebug(struct kernel_args *kernelArgs) = 0;
|
||||
virtual status_t InitPostVM(struct kernel_args *kernelArgs) = 0;
|
||||
virtual status_t InitRTC(struct kernel_args *kernelArgs,
|
||||
struct real_time_data *data) = 0;
|
||||
|
||||
virtual char SerialDebugGetChar() = 0;
|
||||
virtual void SerialDebugPutChar(char c) = 0;
|
||||
|
||||
virtual void SetHardwareRTC(uint32 seconds) = 0;
|
||||
virtual uint32 GetHardwareRTC() = 0;
|
||||
};
|
||||
|
||||
} // namespace BPrivate
|
||||
|
||||
Reference in New Issue
Block a user