Corey Osgood | 36b601c | 2007-03-17 14:00:23 +0000 | [diff] [blame] | 1 | /* |
Stefan Reinauer | 7e61e45 | 2008-01-18 10:35:56 +0000 | [diff] [blame] | 2 | * This file is part of the coreboot project. |
Corey Osgood | 36b601c | 2007-03-17 14:00:23 +0000 | [diff] [blame] | 3 | * |
| 4 | * Copyright (C) 2007 Corey Osgood <corey_osgood@verizon.net> |
| 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. |
Corey Osgood | 36b601c | 2007-03-17 14:00:23 +0000 | [diff] [blame] | 15 | */ |
| 16 | |
| 17 | /* Datasheets: |
| 18 | * Name: VT82C686A "Super South" South Bridge |
| 19 | * Link: http://www.datasheets.org.uk/datasheet.php?article=3510260 |
| 20 | * Name: VT82C686B "Super South" South Bridge |
| 21 | * Link: http://www.datasheet4u.com/html/V/T/8/VT82C686B_VIA.pdf.html |
| 22 | */ |
| 23 | |
| 24 | /* Super I/0 Configuration Registers. */ |
| 25 | /* Any registers not listed here are reserved. */ |
| 26 | #define VT82C686_SIO_DEV_ID 0xe0 /* Super-I/O Device ID */ |
| 27 | #define VT82C686_SIO_REV 0xe1 /* Super-I/O Device Revision */ |
| 28 | #define VT82C686_FS 0xe2 /* Function Select */ |
| 29 | #define VT82C686_FDC 0xe3 /* Floppy */ |
| 30 | #define VT82C686_PP 0xe6 /* Parallel Port */ |
| 31 | #define VT82C686_SP1 0xe7 /* Serial Port 1 */ |
| 32 | #define VT82C686_SP2 0xe8 /* Serial Port 2 */ |
| 33 | #define VT82C686_SP_CFG 0xee /* Serial Port Configuration */ |
| 34 | #define VT82C686_POWER 0xef /* Power Down Control */ |
| 35 | #define VT82C686_PP_CTRL 0xf0 /* Parallel Port Control */ |
| 36 | #define VT82C686_SP_CTRL 0xf1 /* Serial Port Control */ |
| 37 | #define VT82C686_FDC_CFG 0xf6 /* Floppy Controller Configuration */ |
| 38 | #define VT82C686_FDC_DC 0xf8 /* Floppy Drive Control */ |
| 39 | #define VT82C686_GPIO 0xfc /* General Purpose I/O */ |
| 40 | |
| 41 | /* For reference, used PCI IDs and their names in pci_ids.h: */ |
| 42 | /* |
| 43 | PCI_VENDOR_ID_VIA 0x1106 |
| 44 | PCI_DEVICE_ID_VIA_82C686 0x0686 // Function 0, PCI Config |
| 45 | PCI_DEVICE_ID_VIA_82C586_1 0x0571 // Function 1, IDE Controller |
| 46 | PCI_DEVICE_ID_VIA_82C586_2 0x3038 // Functions 2 & 3, USB Ports 0-1 & 2-3 |
| 47 | PCI_DEVICE_ID_VIA_82C586_3 0x3040 // Possible 2nd USB Controller? |
| 48 | PCI_DEVICE_ID_VIA_82C686_4 0x3057 // Function 4, Power Management |
| 49 | PCI_DEVICE_ID_VIA_82C686_5 0x3058 // Function 5, AC'97 Codec |
| 50 | PCI_DEVICE_ID_VIA_82C686_6 0x3068 // Function 6, MC'97 Codec |
| 51 | */ |