ReactOS 0.4.15-dev-7906-g1b85a5f
halxbox.h
Go to the documentation of this file.
1/*
2 * PROJECT: Xbox HAL
3 * LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
4 * PURPOSE: Xbox specific routines
5 * COPYRIGHT: Copyright 2004 Gé van Geldorp (gvg@reactos.com)
6 * Copyright 2019-2020 Stanislav Motylkov (x86corez@gmail.com)
7 *
8 * REFERENCES: https://xboxdevwiki.net/SMBus
9 * https://github.com/XboxDev/cromwell/blob/master/drivers/pci/i2cio.c
10 * https://github.com/torvalds/linux/blob/master/drivers/i2c/busses/i2c-amd756.c
11 * https://github.com/xqemu/xqemu/blob/master/hw/xbox/smbus_xbox_smc.c
12 */
13
14#ifndef HALXBOX_H_INCLUDED
15#define HALXBOX_H_INCLUDED
16
17#include <hal.h>
18#include <ntdddisk.h>
19
20#define TAG_HAL_XBOX 'XlaH'
21
22#define SMB_IO_BASE 0xC000
23
24#define SMB_GLOBAL_STATUS (0 + SMB_IO_BASE)
25#define SMB_GLOBAL_ENABLE (2 + SMB_IO_BASE)
26#define SMB_HOST_ADDRESS (4 + SMB_IO_BASE)
27#define SMB_HOST_DATA (6 + SMB_IO_BASE)
28#define SMB_HOST_COMMAND (8 + SMB_IO_BASE)
29
30#define SMB_DEVICE_SMC_PIC16LC 0x10
31
32#define SMC_REG_POWER 0x02
33#define SMC_REG_POWER_RESET 0x01
34#define SMC_REG_POWER_CYCLE 0x40
35#define SMC_REG_POWER_SHUTDOWN 0x80
36
39
40#endif /* HALXBOX_H_INCLUDED */
41
42/* EOF */
VOID HalpXboxInitPciBus(PBUS_HANDLER BusHandler)
void HalpXboxInitPartIo(void)
Definition: part_xbox.c:331