Alexandru Gagniuc | 88a3023 | 2013-06-04 23:37:56 -0500 | [diff] [blame] | 1 | /* |
| 2 | * This file is part of the coreboot project. |
| 3 | * |
| 4 | * Copyright (C) 2011 Alexandru Gagniuc <mr.nuke.me@gmail.com> |
| 5 | * |
| 6 | * This program is free software: you can redistribute it and/or modify |
| 7 | * it under the terms of the GNU General Public License as published by |
| 8 | * the Free Software Foundation, either version 2 of the License, or |
| 9 | * (at your option) any later version. |
| 10 | * |
| 11 | * This program is distributed in the hope that it will be useful, |
| 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
| 14 | * GNU General Public License for more details. |
Alexandru Gagniuc | 88a3023 | 2013-06-04 23:37:56 -0500 | [diff] [blame] | 15 | */ |
| 16 | #ifndef __VX900_H |
| 17 | #define __VX900_H |
| 18 | |
| 19 | #define VX900_ACPI_IO_BASE 0x0400 |
| 20 | |
| 21 | #define VX900_NB_IOAPIC_ID 0x2 |
| 22 | #define VX900_NB_IOAPIC_BASE 0xfecc000 |
| 23 | |
| 24 | #define VX900_SB_IOAPIC_ID 0x1 |
| 25 | #define VX900_SB_IOAPIC_BASE 0xfec0000 |
| 26 | |
| 27 | #define SMBUS_IO_BASE 0x500 |
| 28 | |
| 29 | /* The maximum number of DIMM slots that the VX900 supports */ |
| 30 | #define VX900_MAX_DIMM_SLOTS 2 |
| 31 | #define VX900_MAX_MEM_RANKS 4 |
| 32 | |
Alexandru Gagniuc | 88a3023 | 2013-06-04 23:37:56 -0500 | [diff] [blame] | 33 | #include <arch/io.h> |
| 34 | #include <device/pci.h> |
| 35 | |
| 36 | #include <console/console.h> |
| 37 | |
| 38 | u32 chrome9hd_fb_size(void); |
Alexandru Gagniuc | 23211b0 | 2013-06-09 16:06:07 -0500 | [diff] [blame] | 39 | u8 vx900_int15_get_5f18_bl(void); |
Kyösti Mälkki | 5cf8824 | 2013-10-18 11:02:56 +0300 | [diff] [blame] | 40 | uint64_t get_uma_memory_base(void); |
Alexandru Gagniuc | 88a3023 | 2013-06-04 23:37:56 -0500 | [diff] [blame] | 41 | |
| 42 | /* We use these throughout the code. They really belong in a generic part of |
| 43 | * coreboot, but until bureaucracy gets them there, we still need them */ |
| 44 | void dump_pci_device(device_t dev); |
| 45 | void pci_mod_config8(device_t dev, unsigned int where, |
| 46 | uint8_t clr_mask, uint8_t set_mask); |
| 47 | void pci_mod_config16(device_t dev, unsigned int where, |
| 48 | uint16_t clr_mask, uint16_t set_mask); |
| 49 | void pci_mod_config32(device_t dev, unsigned int where, |
| 50 | uint32_t clr_mask, uint32_t set_mask); |
| 51 | |
Alexandru Gagniuc | 560433b | 2013-06-10 15:47:25 -0500 | [diff] [blame] | 52 | #endif /* __VX900_H */ |