mirror of
				https://github.com/RGBCube/serenity
				synced 2025-10-24 22:32:06 +00:00 
			
		
		
		
	 d5ee03ef5b
			
		
	
	
		d5ee03ef5b
		
	
	
	
	
		
			
			The RTC and CMOS are currently only supported for x86 platforms and use specific x86 instructions to produce only certain x86 plaform operations and results, therefore, we move them to the Arch/x86 specific directory.
		
			
				
	
	
		
			24 lines
		
	
	
	
		
			383 B
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			24 lines
		
	
	
	
		
			383 B
		
	
	
	
		
			C++
		
	
	
	
	
	
| /*
 | |
|  * Copyright (c) 2018-2020, Andreas Kling <kling@serenityos.org>
 | |
|  *
 | |
|  * SPDX-License-Identifier: BSD-2-Clause
 | |
|  */
 | |
| 
 | |
| #include <Kernel/Arch/x86/IO.h>
 | |
| #include <Kernel/Arch/x86/common/CMOS.h>
 | |
| 
 | |
| namespace Kernel::CMOS {
 | |
| 
 | |
| u8 read(u8 index)
 | |
| {
 | |
|     IO::out8(0x70, index);
 | |
|     return IO::in8(0x71);
 | |
| }
 | |
| 
 | |
| void write(u8 index, u8 data)
 | |
| {
 | |
|     IO::out8(0x70, index);
 | |
|     IO::out8(0x71, data);
 | |
| }
 | |
| 
 | |
| }
 |