mirror of
https://github.com/fail0verflow/switch-coreboot.git
synced 2025-05-04 01:39:18 -04:00
src/mainboard/lenovo-winent: Add space around operators
Change-Id: Iab2a879ebdea9d93ef5eb7e3abf875036c1e1cb4 Signed-off-by: Elyes HAOUAS <ehaouas@noos.fr> Reviewed-on: https://review.coreboot.org/16641 Tested-by: build bot (Jenkins) Reviewed-by: Patrick Georgi <pgeorgi@google.com>
This commit is contained in:
parent
531b87ac4e
commit
a5aad2ed68
81 changed files with 392 additions and 392 deletions
|
@ -31,7 +31,7 @@
|
|||
|
||||
/* Init SIO GPIOs. */
|
||||
#define SIO_RUNTIME_BASE 0x0E00
|
||||
static const u16 sio_init_table[] = { // hi=offset, lo=value
|
||||
static const u16 sio_init_table[] = { // hi = offset, lo = value
|
||||
0x4BA0, // GP1x: COM1/2 control = RS232, no term, max 115200
|
||||
0x2300, // GP10: COM1 termination = push/pull output
|
||||
0x2400, // GP11: COM2 termination = push/pull output
|
||||
|
@ -70,7 +70,7 @@ static const u16 sio_init_table[] = { // hi=offset, lo=value
|
|||
static int smb_write_blk(u8 slave, u8 command, u8 length, const u8 *data)
|
||||
{
|
||||
__outbyte(SMB0_STATUS, 0x1E); // clear error status
|
||||
__outbyte(SMB0_ADDRESS, slave & ~1); // slave addr + direction=out
|
||||
__outbyte(SMB0_ADDRESS, slave & ~1); // slave addr + direction = out
|
||||
__outbyte(SMB0_HOSTCMD, command); // or destination offset
|
||||
__outbyte(SMB0_DATA0, length); // sent before data
|
||||
__inbyte(SMB0_CONTROL); // reset block data array
|
||||
|
|
|
@ -23,7 +23,7 @@ static const struct irq_routing_table intel_irq_routing_table = {
|
|||
PIRQ_VERSION, /* u16 version */
|
||||
32+16*CONFIG_IRQ_SLOT_COUNT, /* there can be total CONFIG_IRQ_SLOT_COUNT devices on the bus */
|
||||
0x00, /* Where the interrupt router lies (bus) */
|
||||
(0x12<<3)|0x0, /* Where the interrupt router lies (dev) */
|
||||
(0x12 << 3)|0x0, /* Where the interrupt router lies (dev) */
|
||||
0x800, /* IRQs devoted exclusively to PCI usage */
|
||||
0x1078, /* Vendor */
|
||||
0x2, /* Device */
|
||||
|
@ -31,9 +31,9 @@ static const struct irq_routing_table intel_irq_routing_table = {
|
|||
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, /* u8 rfu[11] */
|
||||
0xdf, /* u8 checksum , this hase to set to some value that would give 0 after the sum of all bytes for this structure (including checksum) */
|
||||
{
|
||||
/* bus, dev|fn, {link, bitmap}, {link, bitmap}, {link, bitmap}, {link, bitmap}, slot, rfu */
|
||||
{0x00,(0x0e<<3)|0x0, {{0x02, 0xdeb8}, {0x03, 0xdeb8}, {0x04, 0xdeb8}, {0x01, 0x0deb8}}, 0x1, 0x0},
|
||||
{0x00,(0x0f<<3)|0x0, {{0x03, 0xdeb8}, {0x04, 0xdeb8}, {0x01, 0xdeb8}, {0x02, 0x0deb8}}, 0x2, 0x0},
|
||||
/* bus, dev|fn, {link, bitmap}, {link, bitmap}, {link, bitmap}, {link, bitmap}, slot, rfu */
|
||||
{0x00,(0x0e << 3)|0x0, {{0x02, 0xdeb8}, {0x03, 0xdeb8}, {0x04, 0xdeb8}, {0x01, 0x0deb8}}, 0x1, 0x0},
|
||||
{0x00,(0x0f << 3)|0x0, {{0x03, 0xdeb8}, {0x04, 0xdeb8}, {0x01, 0xdeb8}, {0x02, 0x0deb8}}, 0x2, 0x0},
|
||||
}
|
||||
};
|
||||
unsigned long write_pirq_routing_table(unsigned long addr)
|
||||
|
|
|
@ -31,7 +31,7 @@
|
|||
#define SIO_GP1X_CONFIG 0x00
|
||||
#endif
|
||||
|
||||
static const u16 ec_init_table[] = { /* hi=data, lo=index */
|
||||
static const u16 ec_init_table[] = { /* hi = data, lo = index */
|
||||
0x1900, /* Enable monitoring */
|
||||
0x0351, /* TMPIN1,2 diode mode, TMPIN3 off */
|
||||
0x805C, /* Unlock zero adjust */
|
||||
|
|
|
@ -76,7 +76,7 @@ static int smc_send_config(unsigned char config_data)
|
|||
#include "cpu/amd/geode_lx/syspreinit.c"
|
||||
#include "cpu/amd/geode_lx/msrinit.c"
|
||||
|
||||
static const u16 sio_init_table[] = { // hi=data, lo=index
|
||||
static const u16 sio_init_table[] = { // hi = data, lo = index
|
||||
0x042C, // disable ATXPG; VIN6 enabled, FAN4/5 disabled, VIN7,VIN3 enabled
|
||||
0x1423, // don't delay PoWeROK1/2
|
||||
0x9072, // watchdog triggers PWROK, counts seconds
|
||||
|
@ -84,7 +84,7 @@ static const u16 sio_init_table[] = { // hi=data, lo=index
|
|||
0x0073, 0x0074, // disarm watchdog by changing 56 s timeout to 0
|
||||
#endif
|
||||
0xBF25, 0x172A, 0xF326, // select GPIO function for most pins
|
||||
0xBF27, 0xFF28, 0x2D29, // (GP36=FAN_CTL3 (PWM), GP23,22,16,15=SPI, GP13=PWROK1)
|
||||
0xBF27, 0xFF28, 0x2D29, // (GP36 = FAN_CTL3 (PWM), GP23,22,16,15 = SPI, GP13 = PWROK1)
|
||||
0x66B8, 0x0CB9, // enable pullups on SPI, RS485_EN
|
||||
0x07C0, // enable Simple-I/O for GP12-10= RS485_EN2,1, WD_ACTIVE
|
||||
0x06C8, // config GP12,11 as output, GP10 as input
|
||||
|
|
|
@ -34,7 +34,7 @@
|
|||
/* Bit0 enables COM3's transceiver, bit1 disables the RS485 receiver (e.g. for IR). */
|
||||
#define SIO_GP2X_CONFIG 0x00
|
||||
|
||||
static const u16 ec_init_table[] = { /* hi=data, lo=index */
|
||||
static const u16 ec_init_table[] = { /* hi = data, lo = index */
|
||||
0x1900, /* Enable monitoring */
|
||||
0x3050, /* VIN4,5 enabled */
|
||||
0x0351, /* TMPIN1,2 diode mode, TMPIN3 off */
|
||||
|
|
|
@ -115,7 +115,7 @@ static int smc_send_config(unsigned char config_data)
|
|||
#include "cpu/amd/geode_lx/syspreinit.c"
|
||||
#include "cpu/amd/geode_lx/msrinit.c"
|
||||
|
||||
static const u16 sio_init_table[] = { // hi=data, lo=index
|
||||
static const u16 sio_init_table[] = { // hi = data, lo = index
|
||||
0x072C, // VIN6 enabled, FAN4/5 disabled, VIN7,VIN3 internal
|
||||
0x1423, // don't delay PoWeROK1/2
|
||||
0x9072, // watchdog triggers PWROK, counts seconds
|
||||
|
@ -123,7 +123,7 @@ static const u16 sio_init_table[] = { // hi=data, lo=index
|
|||
0x0073, 0x0074, // disarm watchdog by changing 56 s timeout to 0
|
||||
#endif
|
||||
0xBF25, 0x172A, 0xF326, // select GPIO function for most pins
|
||||
0xFF27, 0xDF28, 0x2729, // (GP45=SUSB, GP23,22,16,15=SPI, GP13=PWROK1)
|
||||
0xFF27, 0xDF28, 0x2729, // (GP45 = SUSB, GP23,22,16,15 = SPI, GP13 = PWROK1)
|
||||
0x66B8, 0x0FB9, // enable pullups on SPI, RS485_EN, COM3_R/TX_EN
|
||||
0x07C0, // enable Simple-I/O for GP12-10= RS485_EN2,1, LIVE_LED
|
||||
0x03C1, // enable Simple-I/O for GP21-20= COM3_RX_EN,TX_EN
|
||||
|
@ -131,7 +131,7 @@ static const u16 sio_init_table[] = { // hi=data, lo=index
|
|||
0x07C8, // config GP12-10 as output
|
||||
0x03C9, // config GP21-20 as output
|
||||
0x2DF5, // map Hw Monitor Thermal Output to GP55
|
||||
0x08F8, // map GP LED Blinking 1 to GP10=LIVE_LED (deactivate Simple I/O to use)
|
||||
0x08F8, // map GP LED Blinking 1 to GP10 = LIVE_LED (deactivate Simple I/O to use)
|
||||
};
|
||||
|
||||
/* Early mainboard specific GPIO setup. */
|
||||
|
|
|
@ -31,7 +31,7 @@
|
|||
#define SIO_GP1X_CONFIG 0x20
|
||||
#endif
|
||||
|
||||
static const u16 ec_init_table[] = { /* hi=data, lo=index */
|
||||
static const u16 ec_init_table[] = { /* hi = data, lo = index */
|
||||
0x1900, /* Enable monitoring */
|
||||
0x0351, /* TMPIN1,2 diode mode, TMPIN3 off */
|
||||
0x805C, /* Unlock zero adjust */
|
||||
|
|
|
@ -52,7 +52,7 @@ int spd_read_byte(unsigned int device, unsigned int address)
|
|||
#include "cpu/amd/geode_lx/syspreinit.c"
|
||||
#include "cpu/amd/geode_lx/msrinit.c"
|
||||
|
||||
static const u16 sio_init_table[] = { // hi=data, lo=index
|
||||
static const u16 sio_init_table[] = { // hi = data, lo = index
|
||||
0x1E2C, // disable ATXPG; VIN6,FAN4/5,VIN3 enabled, VIN7 internal
|
||||
0x1423, // don't delay PoWeROK1/2 - triggers 2nd reset
|
||||
0x9072, // watchdog triggers PWROK, counts seconds
|
||||
|
@ -60,13 +60,13 @@ static const u16 sio_init_table[] = { // hi=data, lo=index
|
|||
0x0073, 0x0074, // disarm watchdog by changing 56 s timeout to 0
|
||||
#endif
|
||||
0xBF25, 0x372A, 0xF326, // select GPIO function for most pins
|
||||
0xBF27, 0xFF28, 0x2529, // (GP36=FAN_CTL3, GP13=PWROK1)
|
||||
0xBF27, 0xFF28, 0x2529, // (GP36 = FAN_CTL3, GP13 = PWROK1)
|
||||
0x46B8, 0x0CB9, // enable pullups on RS485_EN
|
||||
0x36C0, // enable Simple-I/O for GP15,14,12,11= LIVE_LED, WD_ACTIVE, RS485_EN2,1
|
||||
0xFFC3, // enable Simple-I/O for GP47-40 (GPIOs on Supervisory Connector)
|
||||
0x26C8, // config GP15,12,11 as output; GP14 as input
|
||||
0x2DF5, // map Hw Monitor Thermal Output to GP55
|
||||
0x0DF8, // map GP LED Blinking 1 to GP15=LIVE_LED (deactivate Simple-I/O to use)
|
||||
0x0DF8, // map GP LED Blinking 1 to GP15 = LIVE_LED (deactivate Simple-I/O to use)
|
||||
};
|
||||
|
||||
/* Early mainboard specific GPIO setup. */
|
||||
|
|
|
@ -21,7 +21,7 @@ chip northbridge/amd/lx
|
|||
register "com2_enable" = "0"
|
||||
register "com2_address" = "0x2E8"
|
||||
register "com2_irq" = "6"
|
||||
register "unwanted_vpci[0]" = "0x80007B00" # Audio: 1<<31 + Device 0x0F<<11 + Function 3<<8
|
||||
register "unwanted_vpci[0]" = "0x80007B00" # Audio: 1 << 31 + Device 0x0F << 11 + Function 3 << 8
|
||||
register "unwanted_vpci[1]" = "0" # End of list has a zero
|
||||
device pci 8.0 on end # Slot4
|
||||
device pci 9.0 on end # Slot3
|
||||
|
|
|
@ -31,7 +31,7 @@
|
|||
#define SIO_GP1X_CONFIG 0x01
|
||||
#endif
|
||||
|
||||
static const u16 ec_init_table[] = { /* hi=data, lo=index */
|
||||
static const u16 ec_init_table[] = { /* hi = data, lo = index */
|
||||
0x1900, /* Enable monitoring */
|
||||
0x3050, /* VIN4,5 enabled */
|
||||
0x0351, /* TMPIN1,2 diode mode, TMPIN3 off */
|
||||
|
|
|
@ -116,7 +116,7 @@ static int smc_send_config(unsigned char config_data)
|
|||
#include "cpu/amd/geode_lx/syspreinit.c"
|
||||
#include "cpu/amd/geode_lx/msrinit.c"
|
||||
|
||||
static const u16 sio_init_table[] = { // hi=data, lo=index
|
||||
static const u16 sio_init_table[] = { // hi = data, lo = index
|
||||
0x072C, // VIN6 enabled, FAN4/5 disabled, VIN7,VIN3 internal
|
||||
0x1423, // don't delay PoWeROK1/2
|
||||
0x9072, // watchdog triggers PWROK, counts seconds
|
||||
|
@ -124,12 +124,12 @@ static const u16 sio_init_table[] = { // hi=data, lo=index
|
|||
0x0073, 0x0074, // disarm watchdog by changing 56 s timeout to 0
|
||||
#endif
|
||||
0xBF25, 0x172A, 0xF326, // select GPIO function for most pins
|
||||
0xFF27, 0xDF28, 0x2729, // (GP45=SUSB, GP23,22,16,15=SPI, GP13=PWROK1)
|
||||
0xFF27, 0xDF28, 0x2729, // (GP45 = SUSB, GP23,22,16,15 = SPI, GP13 = PWROK1)
|
||||
0x66B8, 0x0CB9, // enable pullups on SPI, RS485_EN
|
||||
0x07C0, // enable Simple-I/O for GP12-10= RS485_EN2,1, LIVE_LED
|
||||
0x07C8, // config GP12-10 as output
|
||||
0x2DF5, // map Hw Monitor Thermal Output to GP55
|
||||
0x08F8, // map GP LED Blinking 1 to GP10=LIVE_LED (deactivate Simple I/O to use)
|
||||
0x08F8, // map GP LED Blinking 1 to GP10 = LIVE_LED (deactivate Simple I/O to use)
|
||||
};
|
||||
|
||||
/* Early mainboard specific GPIO setup. */
|
||||
|
|
|
@ -39,7 +39,7 @@
|
|||
static int smb_write_blk(u8 slave, u8 command, u8 length, const u8 *data)
|
||||
{
|
||||
__outbyte(SMB0_STATUS, 0x1E); // clear error status
|
||||
__outbyte(SMB0_ADDRESS, slave & ~1); // slave addr + direction=out
|
||||
__outbyte(SMB0_ADDRESS, slave & ~1); // slave addr + direction = out
|
||||
__outbyte(SMB0_HOSTCMD, command); // or destination offset
|
||||
__outbyte(SMB0_DATA0, length); // sent before data
|
||||
__inbyte(SMB0_CONTROL); // reset block data array
|
||||
|
@ -96,7 +96,7 @@ static void init(struct device *dev)
|
|||
* effect a power cycle and switch to the alternate BIOS chip.
|
||||
* Should be done as late as possible. */
|
||||
printk(BIOS_INFO, "Sending BIOS alive message\n");
|
||||
const u8 i_am_alive[] = { 0x03 }; //bit2=SEL_DP0: 0=DDI2, 1=LVDS
|
||||
const u8 i_am_alive[] = { 0x03 }; //bit2 = SEL_DP0: 0 = DDI2, 1 = LVDS
|
||||
if ((i = smb_write_blk(0x50, 0x25, sizeof(i_am_alive), i_am_alive)))
|
||||
printk(BIOS_ERR, "smb_write_blk failed: %d\n", i);
|
||||
|
||||
|
|
|
@ -29,14 +29,14 @@ static const struct irq_routing_table intel_irq_routing_table = {
|
|||
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, /* u8 rfu[11] */
|
||||
0x9c, /* Checksum */
|
||||
{
|
||||
/* bus, dev|fn, {link, bitmap}, {link, bitmap}, {link, bitmap}, {link, bitmap}, slot, rfu */
|
||||
{0x00,(0x0e<<3)|0x0, {{0x60, 0xdeb8}, {0x61, 0xdeb8}, {0x62, 0xdeb8}, {0x63, 0x0deb8}}, 0x1, 0x0},
|
||||
{0x00,(0x10<<3)|0x0, {{0x61, 0xdeb8}, {0x62, 0xdeb8}, {0x63, 0xdeb8}, {0x60, 0x0deb8}}, 0x2, 0x0},
|
||||
{0x00,(0x12<<3)|0x0, {{0x62, 0xdeb8}, {0x63, 0xdeb8}, {0x60, 0xdeb8}, {0x61, 0x0deb8}}, 0x3, 0x0},
|
||||
{0x00,(0x14<<3)|0x0, {{0x63, 0xdeb8}, {0x60, 0xdeb8}, {0x61, 0xdeb8}, {0x62, 0x0deb8}}, 0x4, 0x0},
|
||||
{0x00,(0x07<<3)|0x1, {{0x00, 0xdeb8}, {0x00, 0xdeb8}, {0x00, 0xdeb8}, {0x00, 0x0deb8}}, 0x0, 0x0},
|
||||
{0x00,(0x07<<3)|0x2, {{0x00, 0xdeb8}, {0x00, 0xdeb8}, {0x00, 0xdeb8}, {0x63, 0x0deb8}}, 0x0, 0x0},
|
||||
{0x00,(0x01<<3)|0x0, {{0x60, 0xdeb8}, {0x61, 0xdeb8}, {0x62, 0xdeb8}, {0x63, 0x0deb8}}, 0x0, 0x0},
|
||||
/* bus, dev|fn, {link, bitmap}, {link, bitmap}, {link, bitmap}, {link, bitmap}, slot, rfu */
|
||||
{0x00,(0x0e << 3)|0x0, {{0x60, 0xdeb8}, {0x61, 0xdeb8}, {0x62, 0xdeb8}, {0x63, 0x0deb8}}, 0x1, 0x0},
|
||||
{0x00,(0x10 << 3)|0x0, {{0x61, 0xdeb8}, {0x62, 0xdeb8}, {0x63, 0xdeb8}, {0x60, 0x0deb8}}, 0x2, 0x0},
|
||||
{0x00,(0x12 << 3)|0x0, {{0x62, 0xdeb8}, {0x63, 0xdeb8}, {0x60, 0xdeb8}, {0x61, 0x0deb8}}, 0x3, 0x0},
|
||||
{0x00,(0x14 << 3)|0x0, {{0x63, 0xdeb8}, {0x60, 0xdeb8}, {0x61, 0xdeb8}, {0x62, 0x0deb8}}, 0x4, 0x0},
|
||||
{0x00,(0x07 << 3)|0x1, {{0x00, 0xdeb8}, {0x00, 0xdeb8}, {0x00, 0xdeb8}, {0x00, 0x0deb8}}, 0x0, 0x0},
|
||||
{0x00,(0x07 << 3)|0x2, {{0x00, 0xdeb8}, {0x00, 0xdeb8}, {0x00, 0xdeb8}, {0x63, 0x0deb8}}, 0x0, 0x0},
|
||||
{0x00,(0x01 << 3)|0x0, {{0x60, 0xdeb8}, {0x61, 0xdeb8}, {0x62, 0xdeb8}, {0x63, 0x0deb8}}, 0x0, 0x0},
|
||||
}
|
||||
};
|
||||
|
||||
|
|
|
@ -29,15 +29,15 @@ static const struct irq_routing_table intel_irq_routing_table = {
|
|||
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, /* u8 rfu[11] */
|
||||
0x20, /* Checksum */
|
||||
{
|
||||
/* bus, dev|fn, {link, bitmap}, {link, bitmap}, {link, bitmap}, {link, bitmap}, slot, rfu */
|
||||
{0x00,(0x0e<<3)|0x0, {{0x60, 0xdeb8}, {0x61, 0xdeb8}, {0x62, 0xdeb8}, {0x63, 0x0deb8}}, 0x1, 0x0},
|
||||
{0x00,(0x10<<3)|0x0, {{0x61, 0xdeb8}, {0x62, 0xdeb8}, {0x63, 0xdeb8}, {0x60, 0x0deb8}}, 0x2, 0x0},
|
||||
{0x00,(0x12<<3)|0x0, {{0x62, 0xdeb8}, {0x63, 0xdeb8}, {0x60, 0xdeb8}, {0x61, 0x0deb8}}, 0x3, 0x0},
|
||||
{0x00,(0x14<<3)|0x0, {{0x63, 0xdeb8}, {0x60, 0xdeb8}, {0x61, 0xdeb8}, {0x62, 0x0deb8}}, 0x4, 0x0},
|
||||
{0x00,(0x00<<3)|0x0, {{0x00, 0xdeb8}, {0x00, 0xdeb8}, {0x00, 0xdeb8}, {0x00, 0x0deb8}}, 0x0, 0x0}, /* North bridge */
|
||||
{0x00,(0x07<<3)|0x1, {{0x00, 0xdeb8}, {0x00, 0xdeb8}, {0x00, 0xdeb8}, {0x00, 0x0deb8}}, 0x0, 0x0}, /* IDE */
|
||||
{0x00,(0x07<<3)|0x2, {{0x00, 0xdeb8}, {0x00, 0xdeb8}, {0x00, 0xdeb8}, {0x63, 0x0deb8}}, 0x0, 0x0}, /* UHCI */
|
||||
{0x00,(0x01<<3)|0x0, {{0x60, 0xdeb8}, {0x61, 0xdeb8}, {0x62, 0xdeb8}, {0x63, 0x0deb8}}, 0x0, 0x0}, /* AGP bridge */
|
||||
/* bus, dev|fn, {link, bitmap}, {link, bitmap}, {link, bitmap}, {link, bitmap}, slot, rfu */
|
||||
{0x00,(0x0e << 3)|0x0, {{0x60, 0xdeb8}, {0x61, 0xdeb8}, {0x62, 0xdeb8}, {0x63, 0x0deb8}}, 0x1, 0x0},
|
||||
{0x00,(0x10 << 3)|0x0, {{0x61, 0xdeb8}, {0x62, 0xdeb8}, {0x63, 0xdeb8}, {0x60, 0x0deb8}}, 0x2, 0x0},
|
||||
{0x00,(0x12 << 3)|0x0, {{0x62, 0xdeb8}, {0x63, 0xdeb8}, {0x60, 0xdeb8}, {0x61, 0x0deb8}}, 0x3, 0x0},
|
||||
{0x00,(0x14 << 3)|0x0, {{0x63, 0xdeb8}, {0x60, 0xdeb8}, {0x61, 0xdeb8}, {0x62, 0x0deb8}}, 0x4, 0x0},
|
||||
{0x00,(0x00 << 3)|0x0, {{0x00, 0xdeb8}, {0x00, 0xdeb8}, {0x00, 0xdeb8}, {0x00, 0x0deb8}}, 0x0, 0x0}, /* North bridge */
|
||||
{0x00,(0x07 << 3)|0x1, {{0x00, 0xdeb8}, {0x00, 0xdeb8}, {0x00, 0xdeb8}, {0x00, 0x0deb8}}, 0x0, 0x0}, /* IDE */
|
||||
{0x00,(0x07 << 3)|0x2, {{0x00, 0xdeb8}, {0x00, 0xdeb8}, {0x00, 0xdeb8}, {0x63, 0x0deb8}}, 0x0, 0x0}, /* UHCI */
|
||||
{0x00,(0x01 << 3)|0x0, {{0x60, 0xdeb8}, {0x61, 0xdeb8}, {0x62, 0xdeb8}, {0x63, 0x0deb8}}, 0x0, 0x0}, /* AGP bridge */
|
||||
}
|
||||
};
|
||||
|
||||
|
|
|
@ -29,11 +29,11 @@ static const struct irq_routing_table intel_irq_routing_table = {
|
|||
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, /* u8 rfu[11] */
|
||||
0x1a, /* Checksum */
|
||||
{
|
||||
/* bus, dev|fn, {link, bitmap}, {link, bitmap}, {link, bitmap}, {link, bitmap}, slot, rfu */
|
||||
{0x00,(0x1e<<3)|0x0, {{0x60, 0xdeb8}, {0x61, 0xdeb8}, {0x62, 0xdeb8}, {0x63, 0x0deb8}}, 0x1, 0x0},
|
||||
{0x00,(0x10<<3)|0x0, {{0x61, 0xdeb8}, {0x62, 0xdeb8}, {0x63, 0xdeb8}, {0x60, 0x0deb8}}, 0x2, 0x0},
|
||||
{0x00,(0x01<<3)|0x0, {{0x60, 0xdeb8}, {0x61, 0xdeb8}, {0x62, 0xdeb8}, {0x63, 0x0deb8}}, 0x0, 0x0},
|
||||
{0x00,(0x1f<<3)|0x1, {{0x60, 0xdeb8}, {0x61, 0xdeb8}, {0x62, 0xdeb8}, {0x63, 0x0deb8}}, 0x0, 0x0},
|
||||
/* bus, dev|fn, {link, bitmap}, {link, bitmap}, {link, bitmap}, {link, bitmap}, slot, rfu */
|
||||
{0x00,(0x1e << 3)|0x0, {{0x60, 0xdeb8}, {0x61, 0xdeb8}, {0x62, 0xdeb8}, {0x63, 0x0deb8}}, 0x1, 0x0},
|
||||
{0x00,(0x10 << 3)|0x0, {{0x61, 0xdeb8}, {0x62, 0xdeb8}, {0x63, 0xdeb8}, {0x60, 0x0deb8}}, 0x2, 0x0},
|
||||
{0x00,(0x01 << 3)|0x0, {{0x60, 0xdeb8}, {0x61, 0xdeb8}, {0x62, 0xdeb8}, {0x63, 0x0deb8}}, 0x0, 0x0},
|
||||
{0x00,(0x1f << 3)|0x1, {{0x60, 0xdeb8}, {0x61, 0xdeb8}, {0x62, 0xdeb8}, {0x63, 0x0deb8}}, 0x0, 0x0},
|
||||
}
|
||||
};
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
/*
|
||||
* This file is part of the coreboot project.
|
||||
*
|
||||
* Copyright (C) 2001 Eric W.Biederman<ebiderman@lnxi.com>
|
||||
* Copyright (C) 2001 Eric W.Biederman <ebiderman@lnxi.com>
|
||||
*
|
||||
* Copyright (C) 2006 AMD
|
||||
* Written by Yinghai Lu <yinghailu@gmail.com> for AMD.
|
||||
|
@ -54,7 +54,7 @@ static void *smp_write_config_table(void *v)
|
|||
{
|
||||
device_t dev = 0;
|
||||
struct resource *res;
|
||||
for(i=0; i<3; i++) {
|
||||
for(i = 0; i < 3; i++) {
|
||||
dev = dev_find_device(0x1166, 0x0235, dev);
|
||||
if (dev) {
|
||||
res = find_resource(dev, PCI_BASE_ADDRESS_0);
|
||||
|
@ -76,11 +76,11 @@ static void *smp_write_config_table(void *v)
|
|||
|
||||
//SATA
|
||||
outb(0x07, 0xc00); outb(0x0f, 0xc01);
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, m->bus_bcm5785_1, (0x0e<<2)|0, m->apicid_bcm5785[0], 0xf);
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, m->bus_bcm5785_1, (0x0e << 2)|0, m->apicid_bcm5785[0], 0xf);
|
||||
|
||||
//USB
|
||||
outb(0x01, 0xc00); outb(0x0a, 0xc01);
|
||||
for(i=0;i<3;i++) {
|
||||
for(i = 0; i < 3; i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, m->bus_bcm5785_0, ((2+sysconf.sbdn)<<2)|i, m->apicid_bcm5785[0], 0xa); //
|
||||
}
|
||||
|
||||
|
@ -94,52 +94,52 @@ static void *smp_write_config_table(void *v)
|
|||
if(dev) {
|
||||
uint32_t dword;
|
||||
dword = pci_read_config32(dev, 0x6c);
|
||||
dword |= (1<<4); // enable interrupts
|
||||
dword |= (1 << 4); // enable interrupts
|
||||
pci_write_config32(dev, 0x6c, dword);
|
||||
}
|
||||
}
|
||||
|
||||
//First pci-x slot (on bcm5785) under bus_bcm5785_1:d.0
|
||||
// AIC 8130 Galileo Technology...
|
||||
for(i=0;i<4;i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, m->bus_bcm5785_1_1, (6<<2)|i, m->apicid_bcm5785[1], 2 + (1+i)%4); //
|
||||
for(i = 0; i < 4; i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, m->bus_bcm5785_1_1, (6 << 2)|i, m->apicid_bcm5785[1], 2 + (1+i)%4); //
|
||||
}
|
||||
|
||||
|
||||
//pci slot (on bcm5785)
|
||||
for(i=0;i<4;i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, m->bus_bcm5785_0, (5<<2)|i, m->apicid_bcm5785[1], 8+i%4); //
|
||||
for(i = 0; i < 4; i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, m->bus_bcm5785_0, (5 << 2)|i, m->apicid_bcm5785[1], 8+i%4); //
|
||||
}
|
||||
|
||||
|
||||
//onboard ati
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, m->bus_bcm5785_0, (4<<2)|0, m->apicid_bcm5785[1], 0x1);
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, m->bus_bcm5785_0, (4 << 2)|0, m->apicid_bcm5785[1], 0x1);
|
||||
|
||||
//PCI-X on bcm5780
|
||||
for(i=0;i<4;i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, m->bus_bcm5780[1], (4<<2)|i, m->apicid_bcm5785[1], 2 + (0+i)%4); //
|
||||
for(i = 0; i < 4; i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, m->bus_bcm5780[1], (4 << 2)|i, m->apicid_bcm5785[1], 2 + (0+i)%4); //
|
||||
}
|
||||
|
||||
//onboard Broadcom
|
||||
for(i=0;i<2;i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, m->bus_bcm5780[2], (4<<2)|i, m->apicid_bcm5785[1], 0xa + (0+i)%4); //
|
||||
for(i = 0; i < 2; i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, m->bus_bcm5780[2], (4 << 2)|i, m->apicid_bcm5785[1], 0xa + (0+i)%4); //
|
||||
}
|
||||
|
||||
|
||||
// First PCI-E x8
|
||||
for(i=0;i<4;i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, m->bus_bcm5780[5], (0<<2)|i, m->apicid_bcm5785[1], 0xe); //
|
||||
for(i = 0; i < 4; i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, m->bus_bcm5780[5], (0 << 2)|i, m->apicid_bcm5785[1], 0xe); //
|
||||
}
|
||||
|
||||
|
||||
// Second PCI-E x8
|
||||
for(i=0;i<4;i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, m->bus_bcm5780[3], (0<<2)|i, m->apicid_bcm5785[1], 0xc); //
|
||||
for(i = 0; i < 4; i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, m->bus_bcm5780[3], (0 << 2)|i, m->apicid_bcm5785[1], 0xc); //
|
||||
}
|
||||
|
||||
// Third PCI-E x1
|
||||
for(i=0;i<4;i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, m->bus_bcm5780[4], (0<<2)|i, m->apicid_bcm5785[1], 0xd); //
|
||||
for(i = 0; i < 4; i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, m->bus_bcm5780[4], (0 << 2)|i, m->apicid_bcm5785[1], 0xd); //
|
||||
}
|
||||
|
||||
/*Local Ints: Type Polarity Trigger Bus ID IRQ APIC ID PIN#*/
|
||||
|
|
|
@ -72,8 +72,8 @@ static inline int spd_read_byte(unsigned device, unsigned address)
|
|||
#include "cpu/amd/model_fxx/fidvid.c"
|
||||
#include "northbridge/amd/amdk8/early_ht.c"
|
||||
|
||||
#define RC0 (0x10<<8)
|
||||
#define RC1 (0x01<<8)
|
||||
#define RC0 (0x10 << 8)
|
||||
#define RC1 (0x01 << 8)
|
||||
|
||||
void cache_as_ram_main(unsigned long bist, unsigned long cpu_init_detectedx)
|
||||
{
|
||||
|
@ -148,7 +148,7 @@ void cache_as_ram_main(unsigned long bist, unsigned long cpu_init_detectedx)
|
|||
#if CONFIG_SET_FIDVID
|
||||
{
|
||||
msr_t msr;
|
||||
msr=rdmsr(0xc0010042);
|
||||
msr = rdmsr(0xc0010042);
|
||||
printk(BIOS_DEBUG, "begin msr fid, vid %08x%08x\n", msr.hi, msr.lo);
|
||||
}
|
||||
enable_fid_change();
|
||||
|
@ -157,7 +157,7 @@ void cache_as_ram_main(unsigned long bist, unsigned long cpu_init_detectedx)
|
|||
// show final fid and vid
|
||||
{
|
||||
msr_t msr;
|
||||
msr=rdmsr(0xc0010042);
|
||||
msr = rdmsr(0xc0010042);
|
||||
printk(BIOS_DEBUG, "end msr fid, vid %08x%08x\n", msr.hi, msr.lo);
|
||||
}
|
||||
#endif
|
||||
|
@ -181,7 +181,7 @@ void cache_as_ram_main(unsigned long bist, unsigned long cpu_init_detectedx)
|
|||
|
||||
#if 0
|
||||
int i;
|
||||
for(i=0;i<2;i++) {
|
||||
for(i = 0; i < 2; i++) {
|
||||
activate_spd_rom(sysinfo->ctrl+i);
|
||||
dump_smbus_registers();
|
||||
}
|
||||
|
|
|
@ -99,15 +99,15 @@ static void *smp_write_config_table(void *v)
|
|||
//NIC2
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, m->bus_mcp55[0], ((sbdn+9)<<2)|0, m->apicid_mcp55, 0x15); // 21
|
||||
|
||||
for(j=7; j>=2; j--) {
|
||||
for(j = 7; j >= 2; j--) {
|
||||
if(!m->bus_mcp55[j]) continue;
|
||||
for(i=0;i<4;i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, m->bus_mcp55[j], (0x00<<2)|i, m->apicid_mcp55, 0x10 + (2+j+i+4-sbdn%4)%4);
|
||||
for(i = 0; i < 4; i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, m->bus_mcp55[j], (0x00 << 2)|i, m->apicid_mcp55, 0x10 + (2+j+i+4-sbdn%4)%4);
|
||||
}
|
||||
}
|
||||
|
||||
for(j=0; j<1; j++)
|
||||
for(i=0;i<4;i++) {
|
||||
for(j = 0; j < 1; j++)
|
||||
for(i = 0; i < 4; i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, m->bus_mcp55[1], ((0x04+j)<<2)|i, m->apicid_mcp55, 0x10 + (2+i+j)%4);
|
||||
}
|
||||
|
||||
|
|
|
@ -70,10 +70,10 @@ static inline int spd_read_byte(unsigned device, unsigned address)
|
|||
|
||||
//set GPIO to input mode
|
||||
#define MCP55_MB_SETUP \
|
||||
RES_PORT_IO_8, SYSCTRL_IO_BASE + 0xc0+15, ~(0xff), ((0<<4)|(0<<2)|(0<<0)),/* M8,GPIO16, PCIXA_PRSNT2_L*/ \
|
||||
RES_PORT_IO_8, SYSCTRL_IO_BASE + 0xc0+44, ~(0xff), ((0<<4)|(0<<2)|(0<<0)),/* P5,GPIO45, PCIXA_PRSNT1_L*/ \
|
||||
RES_PORT_IO_8, SYSCTRL_IO_BASE + 0xc0+16, ~(0xff), ((0<<4)|(0<<2)|(0<<0)),/* K4,GPIO17, PCIXB_PRSNT1_L*/ \
|
||||
RES_PORT_IO_8, SYSCTRL_IO_BASE + 0xc0+45, ~(0xff), ((0<<4)|(0<<2)|(0<<0)),/* P7,GPIO46, PCIXB_PRSNT2_L*/ \
|
||||
RES_PORT_IO_8, SYSCTRL_IO_BASE + 0xc0+15, ~(0xff), ((0 << 4)|(0 << 2)|(0 << 0)),/* M8,GPIO16, PCIXA_PRSNT2_L*/ \
|
||||
RES_PORT_IO_8, SYSCTRL_IO_BASE + 0xc0+44, ~(0xff), ((0 << 4)|(0 << 2)|(0 << 0)),/* P5,GPIO45, PCIXA_PRSNT1_L*/ \
|
||||
RES_PORT_IO_8, SYSCTRL_IO_BASE + 0xc0+16, ~(0xff), ((0 << 4)|(0 << 2)|(0 << 0)),/* K4,GPIO17, PCIXB_PRSNT1_L*/ \
|
||||
RES_PORT_IO_8, SYSCTRL_IO_BASE + 0xc0+45, ~(0xff), ((0 << 4)|(0 << 2)|(0 << 0)),/* P7,GPIO46, PCIXB_PRSNT2_L*/ \
|
||||
|
||||
#include "southbridge/nvidia/mcp55/early_setup_car.c"
|
||||
#include "cpu/amd/model_fxx/init_cpus.c"
|
||||
|
@ -98,13 +98,13 @@ static void sio_setup(void)
|
|||
pci_write_config8(PCI_DEV(0, MCP55_DEVN_BASE+1 , 0), 0x7b, byte);
|
||||
|
||||
dword = pci_read_config32(PCI_DEV(0, MCP55_DEVN_BASE+1 , 0), 0xa0);
|
||||
dword |= (1<<0);
|
||||
dword |= (1 << 0);
|
||||
pci_write_config32(PCI_DEV(0, MCP55_DEVN_BASE+1 , 0), 0xa0, dword);
|
||||
}
|
||||
|
||||
//CPU 1 mem is on SMBUS_HUB channel 2, and CPU 2 mem is on channel 1.
|
||||
#define RC0 (2<<8)
|
||||
#define RC1 (1<<8)
|
||||
#define RC0 (2 << 8)
|
||||
#define RC1 (1 << 8)
|
||||
|
||||
void cache_as_ram_main(unsigned long bist, unsigned long cpu_init_detectedx)
|
||||
{
|
||||
|
|
|
@ -70,7 +70,7 @@ void get_bus_conf(void)
|
|||
|
||||
printk(BIOS_SPEW, "get_bus_conf()\n");
|
||||
|
||||
if(get_bus_conf_done==1) return; //do it only once
|
||||
if(get_bus_conf_done == 1) return; //do it only once
|
||||
|
||||
get_bus_conf_done = 1;
|
||||
|
||||
|
@ -80,7 +80,7 @@ void get_bus_conf(void)
|
|||
memset(m, 0, sizeof(struct mb_sysconf_t));
|
||||
|
||||
sysconf.hc_possible_num = ARRAY_SIZE(pci1234x);
|
||||
for(i=0;i<sysconf.hc_possible_num; i++) {
|
||||
for(i = 0; i < sysconf.hc_possible_num; i++) {
|
||||
sysconf.pci1234[i] = pci1234x[i];
|
||||
sysconf.hcdn[i] = hcdnx[i];
|
||||
}
|
||||
|
@ -99,7 +99,7 @@ void get_bus_conf(void)
|
|||
printk(BIOS_DEBUG, "ERROR - could not find PCI 1:%02x.0, using defaults\n", sysconf.sbdn + 0x06);
|
||||
}
|
||||
|
||||
for(i=2; i<8;i++) {
|
||||
for(i = 2; i < 8; i++) {
|
||||
dev = dev_find_slot(m->bus_mcp55[0], PCI_DEVFN(sysconf.sbdn + 0x0a + i - 2 , 0));
|
||||
if (dev) {
|
||||
m->bus_mcp55[i] = pci_read_config8(dev, PCI_SECONDARY_BUS);
|
||||
|
@ -112,10 +112,10 @@ void get_bus_conf(void)
|
|||
/*I/O APICs: APIC ID Version State Address*/
|
||||
if (IS_ENABLED(CONFIG_LOGICAL_CPUS)) {
|
||||
apicid_base = get_apicid_base(1);
|
||||
printk(BIOS_SPEW, "CONFIG_LOGICAL_CPUS==1: apicid_base: %08x\n", apicid_base);
|
||||
printk(BIOS_SPEW, "CONFIG_LOGICAL_CPUS == 1: apicid_base: %08x\n", apicid_base);
|
||||
} else {
|
||||
apicid_base = CONFIG_MAX_PHYSICAL_CPUS;
|
||||
printk(BIOS_SPEW, "CONFIG_LOGICAL_CPUS==0: apicid_base: %08x\n", apicid_base);
|
||||
printk(BIOS_SPEW, "CONFIG_LOGICAL_CPUS == 0: apicid_base: %08x\n", apicid_base);
|
||||
}
|
||||
m->apicid_mcp55 = apicid_base+0;
|
||||
}
|
||||
|
|
|
@ -88,15 +88,15 @@ static void *smp_write_config_table(void *v)
|
|||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, m->bus_mcp55[0], ((sbdn+8)<<2)|0, m->apicid_mcp55, 0x16); // 22
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, m->bus_mcp55[0], ((sbdn+9)<<2)|0, m->apicid_mcp55, 0x15); // 21
|
||||
|
||||
for(j=7; j>=2; j--) {
|
||||
for(j = 7; j >= 2; j--) {
|
||||
if(!m->bus_mcp55[j]) continue;
|
||||
for(i=0;i<4;i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, m->bus_mcp55[j], (0x00<<2)|i, m->apicid_mcp55, 0x10 + (2+j+i+4-sbdn%4)%4);
|
||||
for(i = 0; i < 4; i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, m->bus_mcp55[j], (0x00 << 2)|i, m->apicid_mcp55, 0x10 + (2+j+i+4-sbdn%4)%4);
|
||||
}
|
||||
}
|
||||
|
||||
for(j=0; j<1; j++)
|
||||
for(i=0;i<4;i++) {
|
||||
for(j = 0; j < 1; j++)
|
||||
for(i = 0; i < 4; i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, m->bus_mcp55[1], ((0x04+j)<<2)|i, m->apicid_mcp55, 0x10 + (2+i+j)%4);
|
||||
}
|
||||
|
||||
|
|
|
@ -83,7 +83,7 @@ static void sio_setup(void)
|
|||
pci_write_config8(PCI_DEV(0, MCP55_DEVN_BASE+1 , 0), 0x7b, byte);
|
||||
|
||||
dword = pci_read_config32(PCI_DEV(0, MCP55_DEVN_BASE+1 , 0), 0xa0);
|
||||
dword |= (1<<0);
|
||||
dword |= (1 << 0);
|
||||
pci_write_config32(PCI_DEV(0, MCP55_DEVN_BASE+1 , 0), 0xa0, dword);
|
||||
}
|
||||
|
||||
|
@ -200,7 +200,7 @@ void cache_as_ram_main(unsigned long bist, unsigned long cpu_init_detectedx)
|
|||
post_code(0x3A);
|
||||
|
||||
/* show final fid and vid */
|
||||
msr=rdmsr(0xc0010071);
|
||||
msr = rdmsr(0xc0010071);
|
||||
printk(BIOS_DEBUG, "End FIDVIDMSR 0xc0010071 0x%08x 0x%08x\n", msr.hi, msr.lo);
|
||||
#endif
|
||||
init_timer(); /* Need to use TMICT to synchronize FID/VID. */
|
||||
|
|
|
@ -58,8 +58,8 @@ static void *smp_write_config_table(void *v)
|
|||
|
||||
/* Initialize interrupt mapping*/
|
||||
dword = pci_read_config32(dev, 0x74);
|
||||
dword &= ~(1<<15);
|
||||
dword |= 1<<2;
|
||||
dword &= ~(1 << 15);
|
||||
dword |= 1 << 2;
|
||||
pci_write_config32(dev, 0x74, dword);
|
||||
|
||||
dword = 0x43c6c643;
|
||||
|
|
|
@ -81,11 +81,11 @@ static void sio_setup(void)
|
|||
pci_write_config8(PCI_DEV(0, MCP55_DEVN_BASE+1 , 0), 0x7b, byte);
|
||||
|
||||
dword = pci_read_config32(PCI_DEV(0, MCP55_DEVN_BASE+1 , 0), 0xa0);
|
||||
dword |= (1<<0);
|
||||
dword |= (1 << 0);
|
||||
pci_write_config32(PCI_DEV(0, MCP55_DEVN_BASE+1 , 0), 0xa0, dword);
|
||||
|
||||
dword = pci_read_config32(PCI_DEV(0, MCP55_DEVN_BASE+1 , 0), 0xa4);
|
||||
dword |= (1<<16);
|
||||
dword |= (1 << 16);
|
||||
pci_write_config32(PCI_DEV(0, MCP55_DEVN_BASE+1 , 0), 0xa4, dword);
|
||||
}
|
||||
|
||||
|
@ -149,7 +149,7 @@ void cache_as_ram_main(unsigned long bist, unsigned long cpu_init_detectedx)
|
|||
#if CONFIG_SET_FIDVID
|
||||
{
|
||||
msr_t msr;
|
||||
msr=rdmsr(0xc0010042);
|
||||
msr = rdmsr(0xc0010042);
|
||||
printk(BIOS_DEBUG, "begin msr fid, vid %08x%08x\n", msr.hi, msr.lo);
|
||||
}
|
||||
enable_fid_change();
|
||||
|
@ -158,7 +158,7 @@ void cache_as_ram_main(unsigned long bist, unsigned long cpu_init_detectedx)
|
|||
// show final fid and vid
|
||||
{
|
||||
msr_t msr;
|
||||
msr=rdmsr(0xc0010042);
|
||||
msr = rdmsr(0xc0010042);
|
||||
printk(BIOS_DEBUG, "end msr fid, vid %08x%08x\n", msr.hi, msr.lo);
|
||||
}
|
||||
#endif
|
||||
|
|
|
@ -21,7 +21,7 @@ static const struct irq_routing_table intel_irq_routing_table = {
|
|||
PIRQ_VERSION, /* u16 version */
|
||||
32+16*CONFIG_IRQ_SLOT_COUNT, /* there can be total CONFIG_IRQ_SLOT_COUNT devices on the bus */
|
||||
0x00, /* Where the interrupt router lies (bus) */
|
||||
(0x1f<<3)|0x0, /* Where the interrupt router lies (dev) */
|
||||
(0x1f << 3)|0x0, /* Where the interrupt router lies (dev) */
|
||||
0, /* IRQs devoted exclusively to PCI usage */
|
||||
0x8086, /* Vendor */
|
||||
0x24c0, /* Device */
|
||||
|
@ -29,14 +29,14 @@ static const struct irq_routing_table intel_irq_routing_table = {
|
|||
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, /* u8 rfu[11] */
|
||||
0x07, /* u8 checksum , this hase to set to some value that would give 0 after the sum of all bytes for this structure (including checksum) */
|
||||
{
|
||||
/* bus, dev|fn, {link, bitmap}, {link, bitmap}, {link, bitmap}, {link, bitmap}, slot, rfu */
|
||||
{0x00,(0x02<<3)|0x0, {{0x60, 0x0ef8}, {0x00, 0x0000}, {0x00, 0x0000}, {0x00, 0x00000}}, 0x0, 0x0}, /* [A] IGD VGA */
|
||||
{0x00,(0x1d<<3)|0x0, {{0x60, 0x0ef8}, {0x63, 0x0ef8}, {0x62, 0x0ef8}, {0x6b, 0x00ef8}}, 0x0, 0x0}, /* [A] USB1, [B] USB2, [C] USB3, [D] EHCI */
|
||||
{0x00,(0x1f<<3)|0x0, {{0x62, 0x0ef8}, {0x61, 0x0ef8}, {0x00, 0x0000}, {0x00, 0x00000}}, 0x0, 0x0}, /* [A] IDE, [B] SMBUS, [B] AUDIO, [B] MODEM */
|
||||
{0x01,(0x08<<3)|0x0, {{0x68, 0x0ef8}, {0x00, 0x0000}, {0x00, 0x0000}, {0x00, 0x00000}}, 0x0, 0x0}, /* [A] ETHERNET */
|
||||
{0x01,(0x00<<3)|0x0, {{0x60, 0x0ef8}, {0x61, 0x0ef8}, {0x62, 0x0ef8}, {0x63, 0x00ef8}}, 0x1, 0x0}, /* PCI SLOT 1 */
|
||||
{0x01,(0x01<<3)|0x0, {{0x63, 0x0ef8}, {0x60, 0x0ef8}, {0x61, 0x0ef8}, {0x62, 0x00ef8}}, 0x2, 0x0}, /* PCI SLOT 2 */
|
||||
{0x01,(0x02<<3)|0x0, {{0x62, 0x0ef8}, {0x63, 0x0ef8}, {0x60, 0x0ef8}, {0x61, 0x00ef8}}, 0x3, 0x0}, /* PCI SLOT 3 */
|
||||
/* bus, dev|fn, {link, bitmap}, {link, bitmap}, {link, bitmap}, {link, bitmap}, slot, rfu */
|
||||
{0x00,(0x02 << 3)|0x0, {{0x60, 0x0ef8}, {0x00, 0x0000}, {0x00, 0x0000}, {0x00, 0x00000}}, 0x0, 0x0}, /* [A] IGD VGA */
|
||||
{0x00,(0x1d << 3)|0x0, {{0x60, 0x0ef8}, {0x63, 0x0ef8}, {0x62, 0x0ef8}, {0x6b, 0x00ef8}}, 0x0, 0x0}, /* [A] USB1, [B] USB2, [C] USB3, [D] EHCI */
|
||||
{0x00,(0x1f << 3)|0x0, {{0x62, 0x0ef8}, {0x61, 0x0ef8}, {0x00, 0x0000}, {0x00, 0x00000}}, 0x0, 0x0}, /* [A] IDE, [B] SMBUS, [B] AUDIO, [B] MODEM */
|
||||
{0x01,(0x08 << 3)|0x0, {{0x68, 0x0ef8}, {0x00, 0x0000}, {0x00, 0x0000}, {0x00, 0x00000}}, 0x0, 0x0}, /* [A] ETHERNET */
|
||||
{0x01,(0x00 << 3)|0x0, {{0x60, 0x0ef8}, {0x61, 0x0ef8}, {0x62, 0x0ef8}, {0x63, 0x00ef8}}, 0x1, 0x0}, /* PCI SLOT 1 */
|
||||
{0x01,(0x01 << 3)|0x0, {{0x63, 0x0ef8}, {0x60, 0x0ef8}, {0x61, 0x0ef8}, {0x62, 0x00ef8}}, 0x2, 0x0}, /* PCI SLOT 2 */
|
||||
{0x01,(0x02 << 3)|0x0, {{0x62, 0x0ef8}, {0x63, 0x0ef8}, {0x60, 0x0ef8}, {0x61, 0x00ef8}}, 0x3, 0x0}, /* PCI SLOT 3 */
|
||||
}
|
||||
};
|
||||
|
||||
|
|
|
@ -21,7 +21,7 @@ static const struct irq_routing_table intel_irq_routing_table = {
|
|||
PIRQ_VERSION, /* u16 version */
|
||||
32+16*18, /* There can be total 18 devices on the bus */
|
||||
0x00, /* Where the interrupt router lies (bus) */
|
||||
(0x1f<<3)|0x0, /* Where the interrupt router lies (dev) */
|
||||
(0x1f << 3)|0x0, /* Where the interrupt router lies (dev) */
|
||||
0, /* IRQs devoted exclusively to PCI usage */
|
||||
0x8086, /* Vendor */
|
||||
0x27b0, /* Device */
|
||||
|
@ -29,25 +29,25 @@ static const struct irq_routing_table intel_irq_routing_table = {
|
|||
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, /* u8 rfu[11] */
|
||||
0xf, /* u8 checksum. */
|
||||
{
|
||||
/* bus, dev|fn, {link, bitmap}, {link, bitmap}, {link, bitmap}, {link, bitmap}, slot, rfu */
|
||||
{0x00,(0x01<<3)|0x0, {{0x60, 0xdcf8}, {0x61, 0xdcf8}, {0x62, 0xdcf8}, {0x63, 0x0dcd8}}, 0x0, 0x0}, // PCIe?
|
||||
{0x00,(0x02<<3)|0x0, {{0x60, 0xdcf8}, {0x00, 0x0000}, {0x00, 0x0000}, {0x00, 0x00000}}, 0x0, 0x0}, // VGA
|
||||
{0x00,(0x1e<<3)|0x0, {{0x61, 0xdcf8}, {0x68, 0xdcf8}, {0x00, 0x0000}, {0x00, 0x00000}}, 0x0, 0x0}, // PCI bridge
|
||||
{0x00,(0x1f<<3)|0x0, {{0x62, 0xdcf8}, {0x63, 0xdcd8}, {0x00, 0x0000}, {0x00, 0x00000}}, 0x0, 0x0}, // LPC
|
||||
{0x00,(0x1d<<3)|0x0, {{0x6b, 0xdcf8}, {0x63, 0xdcd8}, {0x62, 0xdcf8}, {0x60, 0x0dcf8}}, 0x0, 0x0}, // USB#1
|
||||
{0x00,(0x1b<<3)|0x0, {{0x60, 0xdcf8}, {0x00, 0x0000}, {0x00, 0x0000}, {0x00, 0x00000}}, 0x0, 0x0}, // Audio device
|
||||
{0x00,(0x1c<<3)|0x0, {{0x60, 0xdcf8}, {0x61, 0xdcf8}, {0x62, 0xdcf8}, {0x63, 0x0dcd8}}, 0x2, 0x0}, // PCIe bridge
|
||||
{0x04,(0x00<<3)|0x0, {{0x60, 0xdcf8}, {0x00, 0x0000}, {0x00, 0x0000}, {0x00, 0x00000}}, 0x0, 0x0}, // Firewire
|
||||
{0x04,(0x01<<3)|0x0, {{0x68, 0xdcf8}, {0x69, 0xdcf8}, {0x6a, 0xdcf8}, {0x6b, 0x0dcf8}}, 0x1, 0x0}, // PCI Bridge
|
||||
{0x04,(0x02<<3)|0x0, {{0x69, 0xdcf8}, {0x6a, 0xdcf8}, {0x6b, 0xdcf8}, {0x68, 0x0dcf8}}, 0x2, 0x0},
|
||||
{0x04,(0x03<<3)|0x0, {{0x6a, 0xdcf8}, {0x6b, 0xdcf8}, {0x68, 0xdcf8}, {0x69, 0x0dcf8}}, 0x3, 0x0},
|
||||
{0x04,(0x04<<3)|0x0, {{0x6b, 0xdcf8}, {0x68, 0xdcf8}, {0x69, 0xdcf8}, {0x6a, 0x0dcf8}}, 0x4, 0x0},
|
||||
{0x04,(0x05<<3)|0x0, {{0x63, 0xdcd8}, {0x62, 0xdcf8}, {0x61, 0xdcf8}, {0x60, 0x0dcf8}}, 0x5, 0x0},
|
||||
{0x04,(0x06<<3)|0x0, {{0x62, 0xdcf8}, {0x61, 0xdcf8}, {0x60, 0xdcf8}, {0x63, 0x0dcd8}}, 0x6, 0x0},
|
||||
{0x04,(0x09<<3)|0x0, {{0x69, 0xdcf8}, {0x6a, 0xdcf8}, {0x6b, 0xdcf8}, {0x68, 0x0dcf8}}, 0x9, 0x0},
|
||||
{0x01,(0x00<<3)|0x0, {{0x60, 0xdcf8}, {0x61, 0xdcf8}, {0x62, 0xdcf8}, {0x63, 0x0dcd8}}, 0x0, 0x0}, // Ethernet 8168
|
||||
{0x02,(0x00<<3)|0x0, {{0x60, 0xdcf8}, {0x61, 0xdcf8}, {0x62, 0xdcf8}, {0x63, 0x0dcd8}}, 0x9, 0x0},
|
||||
{0x03,(0x00<<3)|0x0, {{0x61, 0xdcf8}, {0x62, 0xdcf8}, {0x63, 0xdcd8}, {0x60, 0x0dcf8}}, 0xa, 0x0},
|
||||
/* bus, dev|fn, {link, bitmap}, {link, bitmap}, {link, bitmap}, {link, bitmap}, slot, rfu */
|
||||
{0x00,(0x01 << 3)|0x0, {{0x60, 0xdcf8}, {0x61, 0xdcf8}, {0x62, 0xdcf8}, {0x63, 0x0dcd8}}, 0x0, 0x0}, // PCIe?
|
||||
{0x00,(0x02 << 3)|0x0, {{0x60, 0xdcf8}, {0x00, 0x0000}, {0x00, 0x0000}, {0x00, 0x00000}}, 0x0, 0x0}, // VGA
|
||||
{0x00,(0x1e << 3)|0x0, {{0x61, 0xdcf8}, {0x68, 0xdcf8}, {0x00, 0x0000}, {0x00, 0x00000}}, 0x0, 0x0}, // PCI bridge
|
||||
{0x00,(0x1f << 3)|0x0, {{0x62, 0xdcf8}, {0x63, 0xdcd8}, {0x00, 0x0000}, {0x00, 0x00000}}, 0x0, 0x0}, // LPC
|
||||
{0x00,(0x1d << 3)|0x0, {{0x6b, 0xdcf8}, {0x63, 0xdcd8}, {0x62, 0xdcf8}, {0x60, 0x0dcf8}}, 0x0, 0x0}, // USB#1
|
||||
{0x00,(0x1b << 3)|0x0, {{0x60, 0xdcf8}, {0x00, 0x0000}, {0x00, 0x0000}, {0x00, 0x00000}}, 0x0, 0x0}, // Audio device
|
||||
{0x00,(0x1c << 3)|0x0, {{0x60, 0xdcf8}, {0x61, 0xdcf8}, {0x62, 0xdcf8}, {0x63, 0x0dcd8}}, 0x2, 0x0}, // PCIe bridge
|
||||
{0x04,(0x00 << 3)|0x0, {{0x60, 0xdcf8}, {0x00, 0x0000}, {0x00, 0x0000}, {0x00, 0x00000}}, 0x0, 0x0}, // Firewire
|
||||
{0x04,(0x01 << 3)|0x0, {{0x68, 0xdcf8}, {0x69, 0xdcf8}, {0x6a, 0xdcf8}, {0x6b, 0x0dcf8}}, 0x1, 0x0}, // PCI Bridge
|
||||
{0x04,(0x02 << 3)|0x0, {{0x69, 0xdcf8}, {0x6a, 0xdcf8}, {0x6b, 0xdcf8}, {0x68, 0x0dcf8}}, 0x2, 0x0},
|
||||
{0x04,(0x03 << 3)|0x0, {{0x6a, 0xdcf8}, {0x6b, 0xdcf8}, {0x68, 0xdcf8}, {0x69, 0x0dcf8}}, 0x3, 0x0},
|
||||
{0x04,(0x04 << 3)|0x0, {{0x6b, 0xdcf8}, {0x68, 0xdcf8}, {0x69, 0xdcf8}, {0x6a, 0x0dcf8}}, 0x4, 0x0},
|
||||
{0x04,(0x05 << 3)|0x0, {{0x63, 0xdcd8}, {0x62, 0xdcf8}, {0x61, 0xdcf8}, {0x60, 0x0dcf8}}, 0x5, 0x0},
|
||||
{0x04,(0x06 << 3)|0x0, {{0x62, 0xdcf8}, {0x61, 0xdcf8}, {0x60, 0xdcf8}, {0x63, 0x0dcd8}}, 0x6, 0x0},
|
||||
{0x04,(0x09 << 3)|0x0, {{0x69, 0xdcf8}, {0x6a, 0xdcf8}, {0x6b, 0xdcf8}, {0x68, 0x0dcf8}}, 0x9, 0x0},
|
||||
{0x01,(0x00 << 3)|0x0, {{0x60, 0xdcf8}, {0x61, 0xdcf8}, {0x62, 0xdcf8}, {0x63, 0x0dcd8}}, 0x0, 0x0}, // Ethernet 8168
|
||||
{0x02,(0x00 << 3)|0x0, {{0x60, 0xdcf8}, {0x61, 0xdcf8}, {0x62, 0xdcf8}, {0x63, 0x0dcd8}}, 0x9, 0x0},
|
||||
{0x03,(0x00 << 3)|0x0, {{0x61, 0xdcf8}, {0x62, 0xdcf8}, {0x63, 0xdcd8}, {0x60, 0x0dcf8}}, 0xa, 0x0},
|
||||
}
|
||||
};
|
||||
|
||||
|
|
|
@ -240,7 +240,7 @@ void m3885_configure_multikey(void)
|
|||
m3885_set_variable(0x0c, kstate5_flags & ~(7 << 4));
|
||||
|
||||
/* Write Matrix to bank 0 */
|
||||
for (i=0; i < ARRAY_SIZE(matrix); i++) {
|
||||
for (i = 0; i < ARRAY_SIZE(matrix); i++) {
|
||||
m3885_set_proc_ram(i + 0x80, matrix[i]);
|
||||
}
|
||||
|
||||
|
@ -257,7 +257,7 @@ void m3885_configure_multikey(void)
|
|||
printk(BIOS_DEBUG, "M388x does not have a valid RAM offset (0x%x)\n", offs);
|
||||
} else {
|
||||
printk(BIOS_DEBUG, "Writing Fn-Table to M388x RAM offset 0x%x\n", offs);
|
||||
for (i=0; i < ARRAY_SIZE(function_ram); i++) {
|
||||
for (i = 0; i < ARRAY_SIZE(function_ram); i++) {
|
||||
m3885_set_proc_ram(i + offs, function_ram[i]);
|
||||
}
|
||||
}
|
||||
|
@ -269,7 +269,7 @@ void m3885_configure_multikey(void)
|
|||
m3885_set_variable(0x0c, kstate5_flags);
|
||||
maxvars = m3885_get_variable(0x00);
|
||||
printk(BIOS_DEBUG, "M388x has %d variables in original bank.\n", maxvars);
|
||||
for (i=0; i<ARRAY_SIZE(variables); i+=3) {
|
||||
for (i = 0; i < ARRAY_SIZE(variables); i+=3) {
|
||||
if(variables[i + 0] > maxvars)
|
||||
continue;
|
||||
reg8 = m3885_get_variable(variables[i + 0]);
|
||||
|
|
|
@ -21,50 +21,50 @@
|
|||
#define M3885_CMDAT2 0x06
|
||||
#define M3885_CMDAT3 0x07
|
||||
|
||||
#define M3885_GPIO_LEVEL (0<<7)
|
||||
#define M3885_GPIO_PULSE (1<<7)
|
||||
#define M3885_GPIO_LEVEL (0 << 7)
|
||||
#define M3885_GPIO_PULSE (1 << 7)
|
||||
|
||||
#define M3885_GPIO_READ (0<<5)
|
||||
#define M3885_GPIO_SET (1<<5)
|
||||
#define M3885_GPIO_CLEAR (2<<5)
|
||||
#define M3885_GPIO_TOGGLE (3<<5)
|
||||
#define M3885_GPIO_READ (0 << 5)
|
||||
#define M3885_GPIO_SET (1 << 5)
|
||||
#define M3885_GPIO_CLEAR (2 << 5)
|
||||
#define M3885_GPIO_TOGGLE (3 << 5)
|
||||
|
||||
#define M3885_GPIO_P14 (0x00<<0)
|
||||
#define M3885_GPIO_P15 (0x01<<0)
|
||||
#define M3885_GPIO_P16 (0x02<<0)
|
||||
#define M3885_GPIO_P17 (0x03<<0)
|
||||
#define M3885_GPIO_P14 (0x00 << 0)
|
||||
#define M3885_GPIO_P15 (0x01 << 0)
|
||||
#define M3885_GPIO_P16 (0x02 << 0)
|
||||
#define M3885_GPIO_P17 (0x03 << 0)
|
||||
|
||||
#define M3885_GPIO_P54 (0x04<<0)
|
||||
#define M3885_GPIO_P55 (0x05<<0)
|
||||
#define M3885_GPIO_P56 (0x06<<0)
|
||||
#define M3885_GPIO_P57 (0x07<<0)
|
||||
#define M3885_GPIO_P54 (0x04 << 0)
|
||||
#define M3885_GPIO_P55 (0x05 << 0)
|
||||
#define M3885_GPIO_P56 (0x06 << 0)
|
||||
#define M3885_GPIO_P57 (0x07 << 0)
|
||||
|
||||
#define M3885_GPIO_P20 (0x08<<0)
|
||||
#define M3885_GPIO_P21 (0x09<<0)
|
||||
#define M3885_GPIO_P22 (0x0a<<0)
|
||||
#define M3885_GPIO_P23 (0x0b<<0)
|
||||
#define M3885_GPIO_P24 (0x0c<<0)
|
||||
#define M3885_GPIO_P25 (0x0d<<0)
|
||||
#define M3885_GPIO_P26 (0x0e<<0)
|
||||
#define M3885_GPIO_P27 (0x0f<<0)
|
||||
#define M3885_GPIO_P20 (0x08 << 0)
|
||||
#define M3885_GPIO_P21 (0x09 << 0)
|
||||
#define M3885_GPIO_P22 (0x0a << 0)
|
||||
#define M3885_GPIO_P23 (0x0b << 0)
|
||||
#define M3885_GPIO_P24 (0x0c << 0)
|
||||
#define M3885_GPIO_P25 (0x0d << 0)
|
||||
#define M3885_GPIO_P26 (0x0e << 0)
|
||||
#define M3885_GPIO_P27 (0x0f << 0)
|
||||
|
||||
#define M3885_GPIO_P40 (0x10<<0)
|
||||
#define M3885_GPIO_P41 (0x11<<0)
|
||||
#define M3885_GPIO_P42 (0x12<<0)
|
||||
#define M3885_GPIO_P43 (0x13<<0)
|
||||
#define M3885_GPIO_P44 (0x14<<0)
|
||||
#define M3885_GPIO_P45 (0x15<<0)
|
||||
#define M3885_GPIO_P46 (0x16<<0)
|
||||
#define M3885_GPIO_P47 (0x17<<0)
|
||||
#define M3885_GPIO_P40 (0x10 << 0)
|
||||
#define M3885_GPIO_P41 (0x11 << 0)
|
||||
#define M3885_GPIO_P42 (0x12 << 0)
|
||||
#define M3885_GPIO_P43 (0x13 << 0)
|
||||
#define M3885_GPIO_P44 (0x14 << 0)
|
||||
#define M3885_GPIO_P45 (0x15 << 0)
|
||||
#define M3885_GPIO_P46 (0x16 << 0)
|
||||
#define M3885_GPIO_P47 (0x17 << 0)
|
||||
|
||||
#define M3885_GPIO_P60 (0x18<<0)
|
||||
#define M3885_GPIO_P61 (0x19<<0)
|
||||
#define M3885_GPIO_P62 (0x1a<<0)
|
||||
#define M3885_GPIO_P63 (0x1b<<0)
|
||||
#define M3885_GPIO_P64 (0x1c<<0)
|
||||
#define M3885_GPIO_P65 (0x1d<<0)
|
||||
#define M3885_GPIO_P66 (0x1e<<0)
|
||||
#define M3885_GPIO_P67 (0x1f<<0)
|
||||
#define M3885_GPIO_P60 (0x18 << 0)
|
||||
#define M3885_GPIO_P61 (0x19 << 0)
|
||||
#define M3885_GPIO_P62 (0x1a << 0)
|
||||
#define M3885_GPIO_P63 (0x1b << 0)
|
||||
#define M3885_GPIO_P64 (0x1c << 0)
|
||||
#define M3885_GPIO_P65 (0x1d << 0)
|
||||
#define M3885_GPIO_P66 (0x1e << 0)
|
||||
#define M3885_GPIO_P67 (0x1f << 0)
|
||||
|
||||
void m3885_configure_multikey(void);
|
||||
u8 m3885_gpio(u8 value);
|
||||
|
|
|
@ -35,7 +35,7 @@ static void backlight_enable(void)
|
|||
/* P56 is Brightness Up, and it needs a Pulse instead of a
|
||||
* Level
|
||||
*/
|
||||
for (i=0; i < 28; i++) {
|
||||
for (i = 0; i < 28; i++) {
|
||||
//m3885_gpio(M3885_GPIO_PULSE|M3885_GPIO_SET|M3885_GPIO_P56);
|
||||
m3885_gpio(M3885_GPIO_PULSE|M3885_GPIO_TOGGLE|M3885_GPIO_P56);
|
||||
}
|
||||
|
@ -49,10 +49,10 @@ static void dump_runtime_registers(void)
|
|||
int i;
|
||||
|
||||
printk(BIOS_DEBUG, "SuperIO runtime register block:\n");
|
||||
for (i=0; i<0x10; i++)
|
||||
for (i = 0; i < 0x10; i++)
|
||||
printk(BIOS_DEBUG, "%02x ", i);
|
||||
printk(BIOS_DEBUG, "\n");
|
||||
for (i=0; i<0x10; i++)
|
||||
for (i = 0; i < 0x10; i++)
|
||||
printk(BIOS_DEBUG, "%02x ", inb(0x600 +i));
|
||||
printk(BIOS_DEBUG, "\n");
|
||||
}
|
||||
|
|
|
@ -68,7 +68,7 @@ static void ich7_enable_lpc(void)
|
|||
{
|
||||
int lpt_en = 0;
|
||||
if (read_option(lpt, 0) != 0) {
|
||||
lpt_en = 1<<2; // enable LPT
|
||||
lpt_en = 1 << 2; // enable LPT
|
||||
}
|
||||
// Enable Serial IRQ
|
||||
pci_write_config8(PCI_DEV(0, 0x1f, 0), 0x64, 0xd0);
|
||||
|
@ -113,7 +113,7 @@ static void early_superio_config(void)
|
|||
{
|
||||
device_t dev;
|
||||
|
||||
dev=PNP_DEV(0x2e, 0x00);
|
||||
dev = PNP_DEV(0x2e, 0x00);
|
||||
|
||||
pnp_enter_ext_func_mode(dev);
|
||||
pnp_write_register(dev, 0x01, 0x94); // Extended Parport modes
|
||||
|
|
|
@ -233,9 +233,9 @@ const struct pch_gpio_set2 pch_gpio_set2_level = {
|
|||
.gpio41 = GPIO_LEVEL_LOW,
|
||||
.gpio42 = GPIO_LEVEL_LOW,
|
||||
.gpio43 = GPIO_LEVEL_LOW,
|
||||
.gpio44 = GPIO_LEVEL_HIGH, /* CTL2=1 for USB0 SDP */
|
||||
.gpio45 = GPIO_LEVEL_LOW, /* CTL3=0 for USB0 SDP */
|
||||
.gpio46 = GPIO_LEVEL_HIGH, /* CTL2=1 for USB1 SDP */
|
||||
.gpio44 = GPIO_LEVEL_HIGH, /* CTL2 = 1 for USB0 SDP */
|
||||
.gpio45 = GPIO_LEVEL_LOW, /* CTL3 = 0 for USB0 SDP */
|
||||
.gpio46 = GPIO_LEVEL_HIGH, /* CTL2 = 1 for USB1 SDP */
|
||||
.gpio47 = GPIO_LEVEL_HIGH, /* Enable USB0 */
|
||||
.gpio48 = GPIO_LEVEL_LOW, /* Disable Bluetooth */
|
||||
.gpio49 = GPIO_LEVEL_LOW,
|
||||
|
@ -299,7 +299,7 @@ const struct pch_gpio_set3 pch_gpio_set3_level = {
|
|||
.gpio70 = GPIO_LEVEL_HIGH, /* WLAN out of reset */
|
||||
.gpio71 = GPIO_LEVEL_HIGH, /* WLAN power on */
|
||||
.gpio72 = GPIO_LEVEL_LOW,
|
||||
.gpio73 = GPIO_LEVEL_LOW, /* USB1 CTL3=0 for SDP */
|
||||
.gpio73 = GPIO_LEVEL_LOW, /* USB1 CTL3 = 0 for SDP */
|
||||
.gpio74 = GPIO_LEVEL_LOW,
|
||||
.gpio75 = GPIO_LEVEL_LOW,
|
||||
};
|
||||
|
|
|
@ -144,9 +144,9 @@ static void setup_sio_gpios(void)
|
|||
/*
|
||||
* GPIO45 as LED_POWER#
|
||||
*/
|
||||
it8772f_gpio_led(DUMMY_DEV, 4 /* set */, (0x1<<5) /* select */,
|
||||
0x00 /* polarity: non-inverting */, 0x00 /* 0=pulldown */,
|
||||
(0x1<<5) /* output */, (0x1<<5) /* 1=Simple IO function */,
|
||||
it8772f_gpio_led(DUMMY_DEV, 4 /* set */, (0x1 << 5) /* select */,
|
||||
0x00 /* polarity: non-inverting */, 0x00 /* 0 = pulldown */,
|
||||
(0x1 << 5) /* output */, (0x1 << 5) /* 1 = Simple IO function */,
|
||||
SIO_GPIO_BLINK_GPIO45, IT8772F_GPIO_BLINK_FREQUENCY_1_HZ);
|
||||
|
||||
/*
|
||||
|
|
|
@ -36,16 +36,16 @@ void mainboard_smi_sleep(u8 slp_typ)
|
|||
switch (slp_typ) {
|
||||
case ACPI_S3:
|
||||
case ACPI_S4:
|
||||
it8772f_gpio_led(DUMMY_DEV, 4 /* set */, (0x1<<5) /* select */,
|
||||
(0x1<<5) /* polarity */, (0x1<<5) /* 1=pullup */,
|
||||
(0x1<<5) /* output */, 0x00, /* 0=Alternate function */
|
||||
it8772f_gpio_led(DUMMY_DEV, 4 /* set */, (0x1 << 5) /* select */,
|
||||
(0x1 << 5) /* polarity */, (0x1 << 5) /* 1 = pullup */,
|
||||
(0x1 << 5) /* output */, 0x00, /* 0 = Alternate function */
|
||||
SIO_GPIO_BLINK_GPIO45, IT8772F_GPIO_BLINK_FREQUENCY_1_HZ);
|
||||
break;
|
||||
|
||||
case ACPI_S5:
|
||||
it8772f_gpio_led(DUMMY_DEV, 4 /* set */, (0x1<<5) /* select */,
|
||||
0x00 /* polarity: non-inverting */, 0x00 /* 0=pulldown */,
|
||||
(0x1<<5) /* output */, (0x1<<5) /* 1=Simple IO function */,
|
||||
it8772f_gpio_led(DUMMY_DEV, 4 /* set */, (0x1 << 5) /* select */,
|
||||
0x00 /* polarity: non-inverting */, 0x00 /* 0 = pulldown */,
|
||||
(0x1 << 5) /* output */, (0x1 << 5) /* 1 = Simple IO function */,
|
||||
SIO_GPIO_BLINK_GPIO45, IT8772F_GPIO_BLINK_FREQUENCY_1_HZ);
|
||||
break;
|
||||
default:
|
||||
|
|
|
@ -145,7 +145,7 @@ const PCH_AZALIA_VERB_TABLE mAzaliaVerbTable[] = { {
|
|||
0x10EC0262, /* Vendor ID/Device IDA */
|
||||
0x0000, /* SubSystem ID */
|
||||
0xFF, /* Revision IDA */
|
||||
0x01, /* Front panel support (1=yes, 2=no) */
|
||||
0x01, /* Front panel support (1 = yes, 2 = no) */
|
||||
0x000B, /* Number of Rear Jacks = 11 */
|
||||
0x0002 /* Number of Front Jacks = 2 */
|
||||
},
|
||||
|
|
|
@ -57,7 +57,7 @@ void acpi_create_fadt(acpi_fadt_t * fadt, acpi_facs_t * facs, void *dsdt)
|
|||
|
||||
fadt->firmware_ctrl = (u32) facs;
|
||||
fadt->dsdt = (u32) dsdt;
|
||||
/* 3=Workstation,4=Enterprise Server, 7=Performance Server */
|
||||
/* 3 = Workstation, 4 = Enterprise Server, 7 = Performance Server */
|
||||
fadt->preferred_pm_profile = 0x03;
|
||||
fadt->sci_int = 9;
|
||||
/* disable system management mode by setting to 0: */
|
||||
|
@ -86,11 +86,11 @@ void acpi_create_fadt(acpi_fadt_t * fadt, acpi_facs_t * facs, void *dsdt)
|
|||
pm_iowrite(0x2C, ACPI_PMA_CNT_BLK & 0xFF);
|
||||
pm_iowrite(0x2D, ACPI_PMA_CNT_BLK >> 8);
|
||||
|
||||
pm_iowrite(0x0E, 1<<3 | 0<<2); /* AcpiDecodeEnable, When set, SB uses
|
||||
pm_iowrite(0x0E, 1 << 3 | 0 << 2); /* AcpiDecodeEnable, When set, SB uses
|
||||
* the contents of the PM registers at
|
||||
* index 20-2B to decode ACPI I/O address.
|
||||
* AcpiSmiEn & SmiCmdEn*/
|
||||
pm_iowrite(0x10, 1<<1 | 1<<3| 1<<5); /* RTC_En_En, TMR_En_En, GBL_EN_EN */
|
||||
pm_iowrite(0x10, 1 << 1 | 1 << 3| 1 << 5); /* RTC_En_En, TMR_En_En, GBL_EN_EN */
|
||||
outl(0x1, ACPI_PM1_CNT_BLK); /* set SCI_EN */
|
||||
|
||||
fadt->pm1a_evt_blk = ACPI_PM_EVT_BLK;
|
||||
|
|
|
@ -657,7 +657,7 @@ static void update_subsystemid( device_t dev )
|
|||
dev->subsystem_device = 0x4077; // U1P0 = 0x4077
|
||||
}
|
||||
printk(BIOS_INFO, "%s [%x/%x]\n", dev_name(dev), dev->subsystem_vendor, dev->subsystem_device );
|
||||
for( i=0; slot[i].bus < 255; i++) {
|
||||
for( i = 0; slot[i].bus < 255; i++) {
|
||||
device_t d;
|
||||
d = dev_find_slot(slot[i].bus,slot[i].devfn);
|
||||
if( d ) {
|
||||
|
|
|
@ -141,7 +141,7 @@ void cache_as_ram_main(unsigned long bist, unsigned long cpu_init_detectedx)
|
|||
if( (cpuid1.edx & 0x6) == 0x6 ) {
|
||||
|
||||
/* Read FIDVID_STATUS */
|
||||
msr=rdmsr(0xc0010042);
|
||||
msr = rdmsr(0xc0010042);
|
||||
__DEBUG__("begin msr fid, vid: hi=0x%x, lo=0x%x\n", msr.hi, msr.lo);
|
||||
|
||||
enable_fid_change();
|
||||
|
@ -149,7 +149,7 @@ void cache_as_ram_main(unsigned long bist, unsigned long cpu_init_detectedx)
|
|||
init_fidvid_bsp(bsp_apicid);
|
||||
|
||||
/* show final fid and vid */
|
||||
msr=rdmsr(0xc0010042);
|
||||
msr = rdmsr(0xc0010042);
|
||||
__DEBUG__("end msr fid, vid: hi=0x%x, lo=0x%x\n", msr.hi, msr.lo);
|
||||
|
||||
} else {
|
||||
|
|
|
@ -139,50 +139,50 @@ static void *smp_write_config_table(void *v)
|
|||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, bus_ck804_0, ((sbdn +0x0a)<<2)|0, apicid_ck804, 0x15); // 21
|
||||
|
||||
//Slot 1 PCIE x16
|
||||
for(i=0;i<4;i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, bus_ck804_5, (0x00<<2)|i, apicid_ck804, 0x10 + (2+i+4-sbdn%4)%4);
|
||||
for(i = 0; i < 4; i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, bus_ck804_5, (0x00 << 2)|i, apicid_ck804, 0x10 + (2+i+4-sbdn%4)%4);
|
||||
}
|
||||
|
||||
//Onboard Firewire
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, bus_ck804_1, (0x05<<2)|0, apicid_ck804, 0x13); // 19
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, bus_ck804_1, (0x05 << 2)|0, apicid_ck804, 0x13); // 19
|
||||
|
||||
//Slot 2 PCI 32
|
||||
for(i=0;i<4;i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, bus_ck804_1, (0x04<<2)|i, apicid_ck804, 0x10 + (0+i)%4);
|
||||
for(i = 0; i < 4; i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, bus_ck804_1, (0x04 << 2)|i, apicid_ck804, 0x10 + (0+i)%4);
|
||||
}
|
||||
|
||||
if(pci1234[2] & 0xf) {
|
||||
//Onboard ck804b NIC
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, bus_ck804b_0, ((sbdnb+0x0a)<<2)|0, apicid_ck804b, 0x15);//24+4+4+21=53
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, bus_ck804b_0, ((sbdnb+0x0a)<<2)|0, apicid_ck804b, 0x15);//24+4+4+21 = 53
|
||||
|
||||
//Slot 3 PCIE x16
|
||||
for(i=0;i<4;i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, bus_ck804b_5, (0x00<<2)|i, apicid_ck804b, 0x10 + (2+i+4-sbdnb%4)%4);
|
||||
for(i = 0; i < 4; i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, bus_ck804b_5, (0x00 << 2)|i, apicid_ck804b, 0x10 + (2+i+4-sbdnb%4)%4);
|
||||
}
|
||||
}
|
||||
|
||||
//Channel B of 8131
|
||||
|
||||
//Slot 4 PCI-X 100/66
|
||||
for(i=0;i<4;i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, bus_8131_2, (4<<2)|i, apicid_8131_2, (0+i)%4);
|
||||
for(i = 0; i < 4; i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, bus_8131_2, (4 << 2)|i, apicid_8131_2, (0+i)%4);
|
||||
}
|
||||
|
||||
//Slot 5 PCIX 100/66
|
||||
for(i=0;i<4;i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, bus_8131_2, (9<<2)|i, apicid_8131_2, (1+i)%4); // 29
|
||||
for(i = 0; i < 4; i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, bus_8131_2, (9 << 2)|i, apicid_8131_2, (1+i)%4); // 29
|
||||
}
|
||||
|
||||
//OnBoard LSI SCSI
|
||||
for(i=0;i<2;i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, bus_8131_2, (6<<2)|i, apicid_8131_2, (2+i)%4); //30
|
||||
for(i = 0; i < 2; i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, bus_8131_2, (6 << 2)|i, apicid_8131_2, (2+i)%4); //30
|
||||
}
|
||||
|
||||
//Channel A of 8131
|
||||
|
||||
//Slot 6 PCIX 133/100/66
|
||||
for(i=0;i<4;i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, bus_8131_1, (4<<2)|i, apicid_8131_1, (0+i)%4); //24
|
||||
for(i = 0; i < 4; i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, bus_8131_1, (4 << 2)|i, apicid_8131_1, (0+i)%4); //24
|
||||
}
|
||||
|
||||
/*Local Ints: Type Polarity Trigger Bus ID IRQ APIC ID PIN#*/
|
||||
|
|
|
@ -33,9 +33,9 @@ static void sio_gpio_setup(void)
|
|||
unsigned value;
|
||||
|
||||
/*Enable onboard scsi*/
|
||||
lpc47b397_gpio_offset_out(SUPERIO_GPIO_IO_BASE, 0x2c, (1<<7)|(0<<2)|(0<<1)|(0<<0)); // GP21, offset 0x2c, DISABLE_SCSI_L
|
||||
lpc47b397_gpio_offset_out(SUPERIO_GPIO_IO_BASE, 0x2c, (1 << 7)|(0 << 2)|(0 << 1)|(0 << 0)); // GP21, offset 0x2c, DISABLE_SCSI_L
|
||||
value = lpc47b397_gpio_offset_in(SUPERIO_GPIO_IO_BASE, 0x4c);
|
||||
lpc47b397_gpio_offset_out(SUPERIO_GPIO_IO_BASE, 0x4c, (value|(1<<1)));
|
||||
lpc47b397_gpio_offset_out(SUPERIO_GPIO_IO_BASE, 0x4c, (value|(1 << 1)));
|
||||
}
|
||||
#endif
|
||||
|
||||
|
@ -55,12 +55,12 @@ static inline int spd_read_byte(unsigned device, unsigned address)
|
|||
|
||||
//set GPIO to input mode
|
||||
#define CK804_MB_SETUP \
|
||||
RES_PORT_IO_8, SYSCTRL_IO_BASE + 0xc0+ 5, ~(0xff),((0<<4)|(0<<2)|(0<<0)),/* M9,GPIO6, PCIXB2_PRSNT1_L*/ \
|
||||
RES_PORT_IO_8, SYSCTRL_IO_BASE + 0xc0+15, ~(0xff),((0<<4)|(0<<2)|(0<<0)),/* M8,GPIO16, PCIXB2_PRSNT2_L*/ \
|
||||
RES_PORT_IO_8, SYSCTRL_IO_BASE + 0xc0+44, ~(0xff),((0<<4)|(0<<2)|(0<<0)),/* P5,GPIO45, PCIXA_PRSNT1_L*/ \
|
||||
RES_PORT_IO_8, SYSCTRL_IO_BASE + 0xc0+ 7, ~(0xff),((0<<4)|(0<<2)|(0<<0)),/* M5,GPIO8, PCIXA_PRSNT2_L*/ \
|
||||
RES_PORT_IO_8, SYSCTRL_IO_BASE + 0xc0+16, ~(0xff),((0<<4)|(0<<2)|(0<<0)),/* K4,GPIO17, PCIXB_PRSNT1_L*/ \
|
||||
RES_PORT_IO_8, SYSCTRL_IO_BASE + 0xc0+45, ~(0xff),((0<<4)|(0<<2)|(0<<0)),/* P7,GPIO46, PCIXB_PRSNT2_L*/
|
||||
RES_PORT_IO_8, SYSCTRL_IO_BASE + 0xc0+ 5, ~(0xff),((0 << 4)|(0 << 2)|(0 << 0)),/* M9,GPIO6, PCIXB2_PRSNT1_L*/ \
|
||||
RES_PORT_IO_8, SYSCTRL_IO_BASE + 0xc0+15, ~(0xff),((0 << 4)|(0 << 2)|(0 << 0)),/* M8,GPIO16, PCIXB2_PRSNT2_L*/ \
|
||||
RES_PORT_IO_8, SYSCTRL_IO_BASE + 0xc0+44, ~(0xff),((0 << 4)|(0 << 2)|(0 << 0)),/* P5,GPIO45, PCIXA_PRSNT1_L*/ \
|
||||
RES_PORT_IO_8, SYSCTRL_IO_BASE + 0xc0+ 7, ~(0xff),((0 << 4)|(0 << 2)|(0 << 0)),/* M5,GPIO8, PCIXA_PRSNT2_L*/ \
|
||||
RES_PORT_IO_8, SYSCTRL_IO_BASE + 0xc0+16, ~(0xff),((0 << 4)|(0 << 2)|(0 << 0)),/* K4,GPIO17, PCIXB_PRSNT1_L*/ \
|
||||
RES_PORT_IO_8, SYSCTRL_IO_BASE + 0xc0+45, ~(0xff),((0 << 4)|(0 << 2)|(0 << 0)),/* P7,GPIO46, PCIXB_PRSNT2_L*/
|
||||
|
||||
#include "southbridge/nvidia/ck804/early_setup_car.c"
|
||||
#include "cpu/amd/model_fxx/init_cpus.c"
|
||||
|
@ -79,7 +79,7 @@ static void sio_setup(void)
|
|||
pci_write_config8(PCI_DEV(0, CK804_DEVN_BASE+1 , 0), 0x7b, byte);
|
||||
|
||||
dword = pci_read_config32(PCI_DEV(0, CK804_DEVN_BASE+1 , 0), 0xa0);
|
||||
dword |= (1<<29)|(1<<0);
|
||||
dword |= (1 << 29)|(1 << 0);
|
||||
pci_write_config32(PCI_DEV(0, CK804_DEVN_BASE+1 , 0), 0xa0, dword);
|
||||
|
||||
lpc47b397_enable_serial(SUPERIO_GPIO_DEV, SUPERIO_GPIO_IO_BASE);
|
||||
|
|
|
@ -58,8 +58,8 @@ static void *smp_write_config_table(void *v)
|
|||
|
||||
/* Initialize interrupt mapping*/
|
||||
dword = pci_read_config32(dev, 0x74);
|
||||
dword &= ~(1<<15);
|
||||
dword |= 1<<2;
|
||||
dword &= ~(1 << 15);
|
||||
dword |= 1 << 2;
|
||||
pci_write_config32(dev, 0x74, dword);
|
||||
|
||||
dword = 0x43c6c643;
|
||||
|
|
|
@ -78,11 +78,11 @@ static void sio_setup(void)
|
|||
pci_write_config8(PCI_DEV(0, MCP55_DEVN_BASE+1 , 0), 0x7b, byte);
|
||||
|
||||
dword = pci_read_config32(PCI_DEV(0, MCP55_DEVN_BASE+1 , 0), 0xa0);
|
||||
dword |= (1<<0);
|
||||
dword |= (1 << 0);
|
||||
pci_write_config32(PCI_DEV(0, MCP55_DEVN_BASE+1 , 0), 0xa0, dword);
|
||||
|
||||
dword = pci_read_config32(PCI_DEV(0, MCP55_DEVN_BASE+1 , 0), 0xa4);
|
||||
dword |= (1<<16);
|
||||
dword |= (1 << 16);
|
||||
pci_write_config32(PCI_DEV(0, MCP55_DEVN_BASE+1 , 0), 0xa4, dword);
|
||||
}
|
||||
|
||||
|
@ -142,7 +142,7 @@ void cache_as_ram_main(unsigned long bist, unsigned long cpu_init_detectedx)
|
|||
#if CONFIG_SET_FIDVID
|
||||
{
|
||||
msr_t msr;
|
||||
msr=rdmsr(0xc0010042);
|
||||
msr = rdmsr(0xc0010042);
|
||||
printk(BIOS_DEBUG, "begin msr fid, vid %08x%08x\n", msr.hi, msr.lo);
|
||||
}
|
||||
enable_fid_change();
|
||||
|
@ -151,7 +151,7 @@ void cache_as_ram_main(unsigned long bist, unsigned long cpu_init_detectedx)
|
|||
// show final fid and vid
|
||||
{
|
||||
msr_t msr;
|
||||
msr=rdmsr(0xc0010042);
|
||||
msr = rdmsr(0xc0010042);
|
||||
printk(BIOS_DEBUG, "end msr fid, vid %08x%08x\n", msr.hi, msr.lo);
|
||||
}
|
||||
#endif
|
||||
|
|
|
@ -91,25 +91,25 @@ static void *smp_write_config_table(void *v)
|
|||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, bus_mcp55[0], ((sbdn+8)<<2)|0, apicid_mcp55, 0x16); // 22
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, bus_mcp55[0], ((sbdn+9)<<2)|0, apicid_mcp55, 0x15); // 21
|
||||
|
||||
for(j=7; j>=2; j--) {
|
||||
for(j = 7; j >= 2; j--) {
|
||||
if(!bus_mcp55[j]) continue;
|
||||
for(i=0;i<4;i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, bus_mcp55[j], (0x00<<2)|i, apicid_mcp55, 0x10 + (2+j+i+4-sbdn%4)%4);
|
||||
for(i = 0; i < 4; i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, bus_mcp55[j], (0x00 << 2)|i, apicid_mcp55, 0x10 + (2+j+i+4-sbdn%4)%4);
|
||||
}
|
||||
}
|
||||
|
||||
for(i=0;i<4;i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, bus_mcp55[1], (0x04<<2)|i, apicid_mcp55, 0x10 + (0+i)%4);
|
||||
for(i = 0; i < 4; i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, bus_mcp55[1], (0x04 << 2)|i, apicid_mcp55, 0x10 + (0+i)%4);
|
||||
}
|
||||
|
||||
|
||||
if(bus_pcix[0]) {
|
||||
for(i=0;i<2;i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, bus_pcix[2], (4<<2)|i, apicid_mcp55, 0x10 + (0+i+4-sbdn%4)%4); //16, 17
|
||||
for(i = 0; i < 2; i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, bus_pcix[2], (4 << 2)|i, apicid_mcp55, 0x10 + (0+i+4-sbdn%4)%4); //16, 17
|
||||
}
|
||||
|
||||
for(i=0;i<4;i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, bus_pcix[1], (4<<2)|i, apicid_mcp55, 0x10 + (2+i+4-sbdn%4)%4); // 18, 19, 16, 17
|
||||
for(i = 0; i < 4; i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, bus_pcix[1], (4 << 2)|i, apicid_mcp55, 0x10 + (2+i+4-sbdn%4)%4); // 18, 19, 16, 17
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -77,7 +77,7 @@ static void sio_setup(void)
|
|||
uint8_t byte;
|
||||
|
||||
enable_smbus();
|
||||
// smbusx_write_byte(1, (0x58>>1), 0, 0x80); /* select bank0 */
|
||||
// smbusx_write_byte(1, (0x58 >> 1), 0, 0x80); /* select bank0 */
|
||||
smbusx_write_byte(1, (0x58 >> 1), 0xb1, 0xff); /* set FAN ctrl to DC mode */
|
||||
|
||||
byte = pci_read_config8(PCI_DEV(0, MCP55_DEVN_BASE + 1, 0), 0x7b);
|
||||
|
@ -94,8 +94,8 @@ static void sio_setup(void)
|
|||
}
|
||||
|
||||
/* We have no idea where the SMBUS switch is. This doesn't do anything ATM. */
|
||||
#define RC0 (2<<8)
|
||||
#define RC1 (1<<8)
|
||||
#define RC0 (2 << 8)
|
||||
#define RC1 (1 << 8)
|
||||
|
||||
void cache_as_ram_main(unsigned long bist, unsigned long cpu_init_detectedx)
|
||||
{
|
||||
|
|
|
@ -92,25 +92,25 @@ static void *smp_write_config_table(void *v)
|
|||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, bus_mcp55[0], ((sbdn+8)<<2)|0, apicid_mcp55, 0x16); // 22
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, bus_mcp55[0], ((sbdn+9)<<2)|0, apicid_mcp55, 0x15); // 21
|
||||
|
||||
for(j=7; j>=2; j--) {
|
||||
for(j = 7; j >= 2; j--) {
|
||||
if(!bus_mcp55[j]) continue;
|
||||
for(i=0;i<4;i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, bus_mcp55[j], (0x00<<2)|i, apicid_mcp55, 0x10 + (2+j+i+4-sbdn%4)%4);
|
||||
for(i = 0; i < 4; i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, bus_mcp55[j], (0x00 << 2)|i, apicid_mcp55, 0x10 + (2+j+i+4-sbdn%4)%4);
|
||||
}
|
||||
}
|
||||
|
||||
for(i=0;i<4;i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, bus_mcp55[1], (0x04<<2)|i, apicid_mcp55, 0x10 + (0+i)%4);
|
||||
for(i = 0; i < 4; i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, bus_mcp55[1], (0x04 << 2)|i, apicid_mcp55, 0x10 + (0+i)%4);
|
||||
}
|
||||
|
||||
|
||||
if(bus_pcix[0]) {
|
||||
for(i=0;i<2;i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, bus_pcix[2], (4<<2)|i, apicid_mcp55, 0x10 + (0+i+4-sbdn%4)%4); //16, 17
|
||||
for(i = 0; i < 2; i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, bus_pcix[2], (4 << 2)|i, apicid_mcp55, 0x10 + (0+i+4-sbdn%4)%4); //16, 17
|
||||
}
|
||||
|
||||
for(i=0;i<4;i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, bus_pcix[1], (4<<2)|i, apicid_mcp55, 0x10 + (2+i+4-sbdn%4)%4); // 18, 19, 16, 17
|
||||
for(i = 0; i < 4; i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, bus_pcix[1], (4 << 2)|i, apicid_mcp55, 0x10 + (2+i+4-sbdn%4)%4); // 18, 19, 16, 17
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -69,19 +69,19 @@ static void sio_setup(void)
|
|||
uint8_t byte;
|
||||
|
||||
enable_smbus();
|
||||
// smbusx_write_byte(1, (0x58>>1), 0, 0x80); /* select bank0 */
|
||||
smbusx_write_byte(1, (0x58>>1), 0xb1, 0xff); /* set FAN ctrl to DC mode */
|
||||
// smbusx_write_byte(1, (0x58 >> 1), 0, 0x80); /* select bank0 */
|
||||
smbusx_write_byte(1, (0x58 >> 1), 0xb1, 0xff); /* set FAN ctrl to DC mode */
|
||||
|
||||
byte = pci_read_config8(PCI_DEV(0, MCP55_DEVN_BASE+1 , 0), 0x7b);
|
||||
byte |= 0x20;
|
||||
pci_write_config8(PCI_DEV(0, MCP55_DEVN_BASE+1 , 0), 0x7b, byte);
|
||||
|
||||
dword = pci_read_config32(PCI_DEV(0, MCP55_DEVN_BASE+1 , 0), 0xa0);
|
||||
dword |= (1<<0);
|
||||
dword |= (1 << 0);
|
||||
pci_write_config32(PCI_DEV(0, MCP55_DEVN_BASE+1 , 0), 0xa0, dword);
|
||||
|
||||
dword = pci_read_config32(PCI_DEV(0, MCP55_DEVN_BASE+1 , 0), 0xa4);
|
||||
dword |= (1<<16);
|
||||
dword |= (1 << 16);
|
||||
pci_write_config32(PCI_DEV(0, MCP55_DEVN_BASE+1 , 0), 0xa4, dword);
|
||||
}
|
||||
|
||||
|
@ -144,7 +144,7 @@ void cache_as_ram_main(unsigned long bist, unsigned long cpu_init_detectedx)
|
|||
#if CONFIG_SET_FIDVID
|
||||
{
|
||||
msr_t msr;
|
||||
msr=rdmsr(0xc0010042);
|
||||
msr = rdmsr(0xc0010042);
|
||||
printk(BIOS_DEBUG, "begin msr fid, vid %08x, %08x\n", msr.hi, msr.lo);
|
||||
}
|
||||
enable_fid_change();
|
||||
|
@ -153,7 +153,7 @@ void cache_as_ram_main(unsigned long bist, unsigned long cpu_init_detectedx)
|
|||
// show final fid and vid
|
||||
{
|
||||
msr_t msr;
|
||||
msr=rdmsr(0xc0010042);
|
||||
msr = rdmsr(0xc0010042);
|
||||
printk(BIOS_DEBUG, "end msr fid, vid %08x, %08x\n", msr.hi, msr.lo);
|
||||
}
|
||||
#endif
|
||||
|
|
|
@ -69,7 +69,7 @@ void get_bus_conf(void)
|
|||
device_t dev;
|
||||
int i;
|
||||
|
||||
if(get_bus_conf_done==1) return; //do it only once
|
||||
if(get_bus_conf_done == 1) return; //do it only once
|
||||
|
||||
get_bus_conf_done = 1;
|
||||
|
||||
|
@ -79,7 +79,7 @@ void get_bus_conf(void)
|
|||
memset(m, 0, sizeof(struct mb_sysconf_t));
|
||||
|
||||
sysconf.hc_possible_num = ARRAY_SIZE(pci1234x);
|
||||
for(i=0;i<sysconf.hc_possible_num; i++) {
|
||||
for(i = 0; i < sysconf.hc_possible_num; i++) {
|
||||
sysconf.pci1234[i] = pci1234x[i];
|
||||
sysconf.hcdn[i] = hcdnx[i];
|
||||
}
|
||||
|
@ -98,7 +98,7 @@ void get_bus_conf(void)
|
|||
printk(BIOS_DEBUG, "ERROR - could not find PCI 1:%02x.0, using defaults\n", sysconf.sbdn + 0x06);
|
||||
}
|
||||
|
||||
for(i=2; i<8;i++) {
|
||||
for(i = 2; i < 8; i++) {
|
||||
dev = dev_find_slot(m->bus_mcp55[0], PCI_DEVFN(sysconf.sbdn + 0x0a + i - 2 , 0));
|
||||
if (dev) {
|
||||
m->bus_mcp55[i] = pci_read_config8(dev, PCI_SECONDARY_BUS);
|
||||
|
|
|
@ -88,15 +88,15 @@ static void *smp_write_config_table(void *v)
|
|||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, m->bus_mcp55[0], ((sbdn+8)<<2)|0, m->apicid_mcp55, 0x16); // 22
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, m->bus_mcp55[0], ((sbdn+9)<<2)|0, m->apicid_mcp55, 0x15); // 21
|
||||
|
||||
for(j=7; j>=2; j--) {
|
||||
for(j = 7; j >= 2; j--) {
|
||||
if(!m->bus_mcp55[j]) continue;
|
||||
for(i=0;i<4;i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, m->bus_mcp55[j], (0x00<<2)|i, m->apicid_mcp55, 0x10 + (2+j+i+4-sbdn%4)%4);
|
||||
for(i = 0; i < 4; i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, m->bus_mcp55[j], (0x00 << 2)|i, m->apicid_mcp55, 0x10 + (2+j+i+4-sbdn%4)%4);
|
||||
}
|
||||
}
|
||||
|
||||
for(j=0; j<1; j++)
|
||||
for(i=0;i<4;i++) {
|
||||
for(j = 0; j < 1; j++)
|
||||
for(i = 0; i < 4; i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, m->bus_mcp55[1], ((0x04+j)<<2)|i, m->apicid_mcp55, 0x10 + (2+i+j)%4);
|
||||
}
|
||||
|
||||
|
|
|
@ -71,7 +71,7 @@ static void sio_setup(void)
|
|||
uint8_t byte;
|
||||
|
||||
enable_smbus();
|
||||
// smbusx_write_byte(1, (0x58>>1), 0, 0x80); /* select bank0 */
|
||||
// smbusx_write_byte(1, (0x58 >> 1), 0, 0x80); /* select bank0 */
|
||||
/* set FAN ctrl to DC mode */
|
||||
smbusx_write_byte(1, (0x58 >> 1), 0xb1, 0xff);
|
||||
|
||||
|
|
|
@ -53,7 +53,7 @@ static UINT8 select_socket(UINT8 socket_id)
|
|||
gpio56_to_53 = pci_read_config8(sm_dev, PCI_REG_GPIO_56_to_53_CNTRL);
|
||||
value = gpio56_to_53 & (~GPIO_OUT_BIT_GPIO54_to_53_MASK);
|
||||
value |= socket_id;
|
||||
value &= (~GPIO_OUT_ENABLE_BIT_GPIO54_to_53_MASK); // 0=Output Enabled, 1=Tristate
|
||||
value &= (~GPIO_OUT_ENABLE_BIT_GPIO54_to_53_MASK); // 0 = Output Enabled, 1 = Tristate
|
||||
pci_write_config8(sm_dev, PCI_REG_GPIO_56_to_53_CNTRL, value);
|
||||
|
||||
return gpio56_to_53;
|
||||
|
|
|
@ -55,7 +55,7 @@ void acpi_create_fadt(acpi_fadt_t * fadt, acpi_facs_t * facs, void *dsdt)
|
|||
else
|
||||
fadt->dsdt = (uintptr_t)dsdt;
|
||||
|
||||
/* 3=Workstation,4=Enterprise Server, 7=Performance Server */
|
||||
/* 3 = Workstation, 4 = Enterprise Server, 7 = Performance Server */
|
||||
fadt->preferred_pm_profile = 0x03;
|
||||
fadt->sci_int = 9;
|
||||
/* disable system management mode by setting to 0: */
|
||||
|
|
|
@ -70,7 +70,7 @@ static void *smp_write_config_table(void *v)
|
|||
dword = pci_read_config32(dev, 0xAC);
|
||||
dword = dword & ~(7 << 26);
|
||||
dword = dword | (6 << 26); /* 0: INTA, ...., 7: INTH */
|
||||
/* dword |= 1<<22; PIC and APIC co exists */
|
||||
/* dword |= 1 << 22; PIC and APIC co exists */
|
||||
pci_write_config32(dev, 0xAC, dword);
|
||||
#endif
|
||||
|
||||
|
|
|
@ -71,7 +71,7 @@ void get_bus_conf(void)
|
|||
device_t dev;
|
||||
int i;
|
||||
|
||||
if(get_bus_conf_done==1) return; //do it only once
|
||||
if(get_bus_conf_done == 1) return; //do it only once
|
||||
|
||||
get_bus_conf_done = 1;
|
||||
|
||||
|
@ -81,7 +81,7 @@ void get_bus_conf(void)
|
|||
memset(m, 0, sizeof(struct mb_sysconf_t));
|
||||
|
||||
sysconf.hc_possible_num = ARRAY_SIZE(pci1234x);
|
||||
for(i=0;i<sysconf.hc_possible_num; i++) {
|
||||
for(i = 0; i < sysconf.hc_possible_num; i++) {
|
||||
sysconf.pci1234[i] = pci1234x[i];
|
||||
sysconf.hcdn[i] = hcdnx[i];
|
||||
}
|
||||
|
@ -104,7 +104,7 @@ void get_bus_conf(void)
|
|||
printk(BIOS_DEBUG, "ERROR - could not find PCI 1:%02x.0, using defaults\n", sysconf.sbdn + 0x06);
|
||||
}
|
||||
|
||||
for(i=2; i<8;i++) {
|
||||
for(i = 2; i < 8; i++) {
|
||||
dev = dev_find_slot(m->bus_mcp55[0], PCI_DEVFN(sysconf.sbdn + 0x0a + i - 2 , 0));
|
||||
if (dev) {
|
||||
m->bus_mcp55[i] = pci_read_config8(dev, PCI_SECONDARY_BUS);
|
||||
|
|
|
@ -86,15 +86,15 @@ static void *smp_write_config_table(void *v)
|
|||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, m->bus_8132_2, ((3)<<2)|0, m->apicid_mcp55, 0x5); /* 5 eth0, OK*/
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, m->bus_8132_2, ((3)<<2)|1, m->apicid_mcp55, 0xb); /* 11 eth1, OK*/
|
||||
|
||||
for(j=7;j>=2; j--) {
|
||||
for(j = 7;j >= 2; j--) {
|
||||
if(!m->bus_mcp55[j]) continue;
|
||||
for(i=0;i<4;i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, m->bus_mcp55[j], (0x00<<2)|i, m->apicid_mcp55, 0x10 + (2+j+i+4-sbdn%4)%4);
|
||||
for(i = 0; i < 4; i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, m->bus_mcp55[j], (0x00 << 2)|i, m->apicid_mcp55, 0x10 + (2+j+i+4-sbdn%4)%4);
|
||||
}
|
||||
}
|
||||
|
||||
for(j=0; j<1; j++)
|
||||
for(i=0;i<4;i++) {
|
||||
for(j = 0; j < 1; j++)
|
||||
for(i = 0; i < 4; i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, m->bus_mcp55[1], ((0x04+j)<<2)|i, m->apicid_mcp55, 0x10 + (2+i+j)%4);
|
||||
}
|
||||
|
||||
|
|
|
@ -77,19 +77,19 @@ static void sio_setup(void)
|
|||
uint32_t dword;
|
||||
uint8_t byte;
|
||||
enable_smbus();
|
||||
// smbusx_write_byte(1, (0x58>>1), 0, 0x80); /* select bank0 */
|
||||
smbusx_write_byte(1, (0x58>>1), 0xb1, 0xff); /* set FAN ctrl to DC mode */
|
||||
// smbusx_write_byte(1, (0x58 >> 1), 0, 0x80); /* select bank0 */
|
||||
smbusx_write_byte(1, (0x58 >> 1), 0xb1, 0xff); /* set FAN ctrl to DC mode */
|
||||
|
||||
byte = pci_read_config8(PCI_DEV(0, MCP55_DEVN_BASE+1 , 0), 0x7b);
|
||||
byte |= 0x20;
|
||||
pci_write_config8(PCI_DEV(0, MCP55_DEVN_BASE+1 , 0), 0x7b, byte);
|
||||
|
||||
dword = pci_read_config32(PCI_DEV(0, MCP55_DEVN_BASE+1 , 0), 0xa0);
|
||||
dword |= (1<<0);
|
||||
dword |= (1 << 0);
|
||||
pci_write_config32(PCI_DEV(0, MCP55_DEVN_BASE+1 , 0), 0xa0, dword);
|
||||
|
||||
dword = pci_read_config32(PCI_DEV(0, MCP55_DEVN_BASE+1 , 0), 0xa4);
|
||||
dword |= (1<<16);
|
||||
dword |= (1 << 16);
|
||||
pci_write_config32(PCI_DEV(0, MCP55_DEVN_BASE+1 , 0), 0xa4, dword);
|
||||
}
|
||||
|
||||
|
@ -260,7 +260,7 @@ void cache_as_ram_main(unsigned long bist, unsigned long cpu_init_detectedx)
|
|||
post_code(0x3A);
|
||||
|
||||
/* show final fid and vid */
|
||||
msr=rdmsr(0xc0010071);
|
||||
msr = rdmsr(0xc0010071);
|
||||
printk(BIOS_DEBUG, "End FIDVIDMSR 0xc0010071 0x%08x 0x%08x\n", msr.hi, msr.lo);
|
||||
#endif
|
||||
|
||||
|
|
|
@ -55,7 +55,7 @@ void acpi_create_fadt(acpi_fadt_t * fadt, acpi_facs_t * facs, void *dsdt)
|
|||
else
|
||||
fadt->dsdt = (uintptr_t)dsdt;
|
||||
|
||||
/* 3=Workstation,4=Enterprise Server, 7=Performance Server */
|
||||
/* 3 = Workstation, 4 = Enterprise Server, 7 = Performance Server */
|
||||
fadt->preferred_pm_profile = 0x03;
|
||||
fadt->sci_int = 9;
|
||||
/* disable system management mode by setting to 0: */
|
||||
|
|
|
@ -70,7 +70,7 @@ static void *smp_write_config_table(void *v)
|
|||
dword = (u32 *)pci_read_config32(dev, 0xAC);
|
||||
dword = dword & ~(7 << 26);
|
||||
dword = dword | (6 << 26); /* 0: INTA, ...., 7: INTH */
|
||||
/* dword |= 1<<22; PIC and APIC co exists */
|
||||
/* dword |= 1 << 22; PIC and APIC co exists */
|
||||
pci_write_config32(dev, 0xAC, dword);
|
||||
#endif
|
||||
|
||||
|
|
|
@ -29,7 +29,7 @@ unsigned long acpi_fill_madt(unsigned long current)
|
|||
{
|
||||
device_t dev;
|
||||
u32 dword;
|
||||
u32 gsi_base=0;
|
||||
u32 gsi_base = 0;
|
||||
/* create all subtables for processors */
|
||||
current = acpi_create_madt_lapics(current);
|
||||
|
||||
|
|
|
@ -72,7 +72,7 @@ static void *smp_write_config_table(void *v)
|
|||
dword = (u32 *)((pci_read_config32(dev, 0xac) &
|
||||
~(7 << 26)) | (6 << 26));
|
||||
|
||||
/* dword |= 1<<22; PIC and APIC co exists */
|
||||
/* dword |= 1 << 22; PIC and APIC co exists */
|
||||
pci_write_config32(dev, 0xac, (u32)dword);
|
||||
|
||||
/*
|
||||
|
|
|
@ -188,7 +188,7 @@ void cache_as_ram_main(unsigned long bist, unsigned long cpu_init_detectedx)
|
|||
post_code(0x3A);
|
||||
|
||||
/* show final fid and vid */
|
||||
msr=rdmsr(0xc0010071);
|
||||
msr = rdmsr(0xc0010071);
|
||||
printk(BIOS_DEBUG, "End FIDVIDMSR 0xc0010071 0x%08x 0x%08x\n", msr.hi, msr.lo);
|
||||
#endif
|
||||
|
||||
|
|
|
@ -56,7 +56,7 @@ void acpi_create_fadt(acpi_fadt_t * fadt, acpi_facs_t * facs, void *dsdt)
|
|||
|
||||
fadt->firmware_ctrl = (u32) facs;
|
||||
fadt->dsdt = (u32) dsdt;
|
||||
/* 3=Workstation,4=Enterprise Server, 7=Performance Server */
|
||||
/* 3 = Workstation, 4 = Enterprise Server, 7 = Performance Server */
|
||||
fadt->preferred_pm_profile = 0x03;
|
||||
fadt->sci_int = 9;
|
||||
/* disable system management mode by setting to 0: */
|
||||
|
@ -85,11 +85,11 @@ void acpi_create_fadt(acpi_fadt_t * fadt, acpi_facs_t * facs, void *dsdt)
|
|||
pm_iowrite(0x2C, ACPI_PMA_CNT_BLK & 0xFF);
|
||||
pm_iowrite(0x2D, ACPI_PMA_CNT_BLK >> 8);
|
||||
|
||||
pm_iowrite(0x0E, 1<<3 | 0<<2); /* AcpiDecodeEnable, When set, SB uses
|
||||
pm_iowrite(0x0E, 1 << 3 | 0 << 2); /* AcpiDecodeEnable, When set, SB uses
|
||||
* the contents of the PM registers at
|
||||
* index 20-2B to decode ACPI I/O address.
|
||||
* AcpiSmiEn & SmiCmdEn*/
|
||||
pm_iowrite(0x10, 1<<1 | 1<<3| 1<<5); /* RTC_En_En, TMR_En_En, GBL_EN_EN */
|
||||
pm_iowrite(0x10, 1 << 1 | 1 << 3| 1 << 5); /* RTC_En_En, TMR_En_En, GBL_EN_EN */
|
||||
outl(0x1, ACPI_PM1_CNT_BLK); /* set SCI_EN */
|
||||
|
||||
fadt->pm1a_evt_blk = ACPI_PM_EVT_BLK;
|
||||
|
|
|
@ -69,7 +69,7 @@ static void *smp_write_config_table(void *v)
|
|||
dword = pci_read_config32(dev, 0xac);
|
||||
dword &= ~(7 << 26);
|
||||
dword |= 6 << 26; /* 0: INTA, ...., 7: INTH */
|
||||
/* dword |= 1<<22; PIC and APIC co exists */
|
||||
/* dword |= 1 << 22; PIC and APIC co exists */
|
||||
pci_write_config32(dev, 0xac, dword);
|
||||
|
||||
/*
|
||||
|
|
|
@ -116,7 +116,7 @@ void cache_as_ram_main(unsigned long bist, unsigned long cpu_init_detectedx)
|
|||
cpuid1 = cpuid(0x80000007);
|
||||
if ((cpuid1.edx & 0x6) == 0x6) {
|
||||
/* Read FIDVID_STATUS */
|
||||
msr=rdmsr(0xc0010042);
|
||||
msr = rdmsr(0xc0010042);
|
||||
printk(BIOS_DEBUG, "begin msr fid, vid: hi=0x%x, lo=0x%x\n", msr.hi, msr.lo);
|
||||
|
||||
enable_fid_change();
|
||||
|
@ -124,7 +124,7 @@ void cache_as_ram_main(unsigned long bist, unsigned long cpu_init_detectedx)
|
|||
init_fidvid_bsp(bsp_apicid);
|
||||
|
||||
/* show final fid and vid */
|
||||
msr=rdmsr(0xc0010042);
|
||||
msr = rdmsr(0xc0010042);
|
||||
printk(BIOS_DEBUG, "end msr fid, vid: hi=0x%x, lo=0x%x\n", msr.hi, msr.lo);
|
||||
} else {
|
||||
printk(BIOS_DEBUG, "Changing FIDVID not supported\n");
|
||||
|
|
|
@ -36,7 +36,7 @@
|
|||
void technexion_post_code_init(void)
|
||||
{
|
||||
uint8_t reg8_data;
|
||||
device_t dev=0;
|
||||
device_t dev = 0;
|
||||
|
||||
// SMBus Module and ACPI Block (Device 20, Function 0)
|
||||
dev = pci_locate_device(PCI_ID(PCI_VENDOR_ID_ATI, PCI_DEVICE_ID_ATI_SB600_SM), 0);
|
||||
|
@ -44,80 +44,80 @@ void technexion_post_code_init(void)
|
|||
// LED[bit0]:GPIO0
|
||||
// This is reference SB600 RRG 4.1.1 GPIO
|
||||
reg8_data = pmio_read(0x60);
|
||||
reg8_data |= (1<<7); // 1: GPIO if not used by SATA
|
||||
reg8_data |= (1 << 7); // 1: GPIO if not used by SATA
|
||||
pmio_write(0x60, reg8_data);
|
||||
|
||||
reg8_data = pci_read_config8(dev, 0x80);
|
||||
reg8_data = ((reg8_data | (1<<0)) & ~(1<<4));
|
||||
reg8_data = ((reg8_data | (1 << 0)) & ~(1 << 4));
|
||||
pci_write_config8(dev, 0x80, reg8_data);
|
||||
|
||||
// LED[bit1]:GPIO1
|
||||
// This is reference SB600 RRG 4.1.1 GPIO
|
||||
reg8_data = pci_read_config8(dev, 0x80);
|
||||
reg8_data = ((reg8_data | (1<<1)) & ~(1<<5));
|
||||
reg8_data = ((reg8_data | (1 << 1)) & ~(1 << 5));
|
||||
pci_write_config8(dev, 0x80, reg8_data);
|
||||
|
||||
// LED[bit2]:GPIO4
|
||||
// This is reference SB600 RRG 4.1.1 GPIO
|
||||
reg8_data = pmio_read(0x5e);
|
||||
reg8_data &= ~(1<<7); // 0: GPIO if not used by SATA
|
||||
reg8_data &= ~(1 << 7); // 0: GPIO if not used by SATA
|
||||
pmio_write(0x5e, reg8_data);
|
||||
|
||||
reg8_data = pci_read_config8(dev, 0xa8);
|
||||
reg8_data |= (1<<0);
|
||||
reg8_data |= (1 << 0);
|
||||
pci_write_config8(dev, 0xa8, reg8_data);
|
||||
|
||||
reg8_data = pci_read_config8(dev, 0xa9);
|
||||
reg8_data &= ~(1<<0);
|
||||
reg8_data &= ~(1 << 0);
|
||||
pci_write_config8(dev, 0xa9, reg8_data);
|
||||
|
||||
// LED[bit3]:GPIO6
|
||||
// This is reference SB600 RRG 4.1.1 GPIO
|
||||
reg8_data = pmio_read(0x60);
|
||||
reg8_data |= (1<<7); // 1: GPIO if not used by SATA
|
||||
reg8_data |= (1 << 7); // 1: GPIO if not used by SATA
|
||||
pmio_write(0x60, reg8_data);
|
||||
|
||||
reg8_data = pci_read_config8(dev, 0xa8);
|
||||
reg8_data |= (1<<2);
|
||||
reg8_data |= (1 << 2);
|
||||
pci_write_config8(dev, 0xa8, reg8_data);
|
||||
|
||||
reg8_data = pci_read_config8(dev, 0xa9);
|
||||
reg8_data &= ~(1<<2);
|
||||
reg8_data &= ~(1 << 2);
|
||||
pci_write_config8(dev, 0xa9, reg8_data);
|
||||
// LED[bit4]:GPIO7
|
||||
// This is reference SB600 RRG 4.1.1 GPIO
|
||||
reg8_data = pci_read_config8(dev, 0xa8);
|
||||
reg8_data |= (1<<3);
|
||||
reg8_data |= (1 << 3);
|
||||
pci_write_config8(dev, 0xa8, reg8_data);
|
||||
|
||||
reg8_data = pci_read_config8(dev, 0xa9);
|
||||
reg8_data &= ~(1<<3);
|
||||
reg8_data &= ~(1 << 3);
|
||||
pci_write_config8(dev, 0xa9, reg8_data);
|
||||
|
||||
// LED[bit5]:GPIO8
|
||||
// This is reference SB600 RRG 4.1.1 GPIO
|
||||
reg8_data = pci_read_config8(dev, 0xa8);
|
||||
reg8_data |= (1<<4);
|
||||
reg8_data |= (1 << 4);
|
||||
pci_write_config8(dev, 0xa8, reg8_data);
|
||||
|
||||
reg8_data = pci_read_config8(dev, 0xa9);
|
||||
reg8_data &= ~(1<<4);
|
||||
reg8_data &= ~(1 << 4);
|
||||
pci_write_config8(dev, 0xa9, reg8_data);
|
||||
|
||||
// LED[bit6]:GPIO10
|
||||
// This is reference SB600 RRG 4.1.1 GPIO
|
||||
reg8_data = pci_read_config8(dev, 0xab);
|
||||
reg8_data = ((reg8_data | (1<<0)) & ~(1<<1));
|
||||
reg8_data = ((reg8_data | (1 << 0)) & ~(1 << 1));
|
||||
pci_write_config8(dev, 0xab, reg8_data);
|
||||
|
||||
// LED[bit7]:GPIO66
|
||||
// This is reference SB600 RRG 4.1.1 GPIO
|
||||
reg8_data = pmio_read(0x68);
|
||||
reg8_data &= ~(1<<5); // 0: GPIO
|
||||
reg8_data &= ~(1 << 5); // 0: GPIO
|
||||
pmio_write(0x68, reg8_data);
|
||||
|
||||
reg8_data = pci_read_config8(dev, 0x7e);
|
||||
reg8_data = ((reg8_data | (1<<1)) & ~(1<<5));
|
||||
reg8_data = ((reg8_data | (1 << 1)) & ~(1 << 5));
|
||||
pci_write_config8(dev, 0x7e, reg8_data);
|
||||
|
||||
}
|
||||
|
@ -129,7 +129,7 @@ void technexion_post_code_init(void)
|
|||
void technexion_post_code(uint8_t udata8)
|
||||
{
|
||||
uint8_t u8_data;
|
||||
device_t dev=0;
|
||||
device_t dev = 0;
|
||||
|
||||
// SMBus Module and ACPI Block (Device 20, Function 0)
|
||||
#ifdef __PRE_RAM__
|
||||
|
@ -143,80 +143,80 @@ void technexion_post_code(uint8_t udata8)
|
|||
// LED[bit0]:GPIO0
|
||||
u8_data = pci_read_config8(dev, 0x80);
|
||||
if (udata8 & 0x1) {
|
||||
u8_data |= (1<<0);
|
||||
u8_data |= (1 << 0);
|
||||
}
|
||||
else {
|
||||
u8_data &= ~(1<<0);
|
||||
u8_data &= ~(1 << 0);
|
||||
}
|
||||
pci_write_config8(dev, 0x80, u8_data);
|
||||
|
||||
// LED[bit1]:GPIO1
|
||||
u8_data = pci_read_config8(dev, 0x80);
|
||||
if (udata8 & 0x2) {
|
||||
u8_data |= (1<<1);
|
||||
u8_data |= (1 << 1);
|
||||
}
|
||||
else {
|
||||
u8_data &= ~(1<<1);
|
||||
u8_data &= ~(1 << 1);
|
||||
}
|
||||
pci_write_config8(dev, 0x80, u8_data);
|
||||
|
||||
// LED[bit2]:GPIO4
|
||||
u8_data = pci_read_config8(dev, 0xa8);
|
||||
if (udata8 & 0x4) {
|
||||
u8_data |= (1<<0);
|
||||
u8_data |= (1 << 0);
|
||||
}
|
||||
else {
|
||||
u8_data &= ~(1<<0);
|
||||
u8_data &= ~(1 << 0);
|
||||
}
|
||||
pci_write_config8(dev, 0xa8, u8_data);
|
||||
|
||||
// LED[bit3]:GPIO6
|
||||
u8_data = pci_read_config8(dev, 0xa8);
|
||||
if (udata8 & 0x8) {
|
||||
u8_data |= (1<<2);
|
||||
u8_data |= (1 << 2);
|
||||
}
|
||||
else {
|
||||
u8_data &= ~(1<<2);
|
||||
u8_data &= ~(1 << 2);
|
||||
}
|
||||
pci_write_config8(dev, 0xa8, u8_data);
|
||||
|
||||
// LED[bit4]:GPIO7
|
||||
u8_data = pci_read_config8(dev, 0xa8);
|
||||
if (udata8 & 0x10) {
|
||||
u8_data |= (1<<3);
|
||||
u8_data |= (1 << 3);
|
||||
}
|
||||
else {
|
||||
u8_data &= ~(1<<3);
|
||||
u8_data &= ~(1 << 3);
|
||||
}
|
||||
pci_write_config8(dev, 0xa8, u8_data);
|
||||
|
||||
// LED[bit5]:GPIO8
|
||||
u8_data = pci_read_config8(dev, 0xa8);
|
||||
if (udata8 & 0x20) {
|
||||
u8_data |= (1<<4);
|
||||
u8_data |= (1 << 4);
|
||||
}
|
||||
else {
|
||||
u8_data &= ~(1<<4);
|
||||
u8_data &= ~(1 << 4);
|
||||
}
|
||||
pci_write_config8(dev, 0xa8, u8_data);
|
||||
|
||||
// LED[bit6]:GPIO10
|
||||
u8_data = pci_read_config8(dev, 0xab);
|
||||
if (udata8 & 0x40) {
|
||||
u8_data |= (1<<0);
|
||||
u8_data |= (1 << 0);
|
||||
}
|
||||
else {
|
||||
u8_data &= ~(1<<0);
|
||||
u8_data &= ~(1 << 0);
|
||||
}
|
||||
pci_write_config8(dev, 0xab, u8_data);
|
||||
|
||||
// LED[bit7]:GPIO66
|
||||
u8_data = pci_read_config8(dev, 0x7e);
|
||||
if (udata8 & 0x80) {
|
||||
u8_data |= (1<<1);
|
||||
u8_data |= (1 << 1);
|
||||
}
|
||||
else {
|
||||
u8_data &= ~(1<<1);
|
||||
u8_data &= ~(1 << 1);
|
||||
}
|
||||
pci_write_config8(dev, 0x7e, u8_data);
|
||||
|
||||
|
|
|
@ -59,7 +59,7 @@ static void enable_onboard_nic(void)
|
|||
byte |= ( 1 << 7);
|
||||
pci_write_config8(sm_dev, 0x9a, byte);
|
||||
|
||||
byte=pm_ioread(0x59);
|
||||
byte = pm_ioread(0x59);
|
||||
byte &= ~( 1<< 5);
|
||||
pm_iowrite(0x59,byte);
|
||||
|
||||
|
|
|
@ -69,7 +69,7 @@ static void *smp_write_config_table(void *v)
|
|||
dword = pci_read_config32(dev, 0xac);
|
||||
dword &= ~(7 << 26);
|
||||
dword |= 6 << 26; /* 0: INTA, ...., 7: INTH */
|
||||
/* dword |= 1<<22; PIC and APIC co exists */
|
||||
/* dword |= 1 << 22; PIC and APIC co exists */
|
||||
pci_write_config32(dev, 0xac, dword);
|
||||
|
||||
/*
|
||||
|
|
|
@ -111,7 +111,7 @@ void cache_as_ram_main(unsigned long bist, unsigned long cpu_init_detectedx)
|
|||
cpuid1 = cpuid(0x80000007);
|
||||
if ((cpuid1.edx & 0x6) == 0x6 ) {
|
||||
/* Read FIDVID_STATUS */
|
||||
msr=rdmsr(0xc0010042);
|
||||
msr = rdmsr(0xc0010042);
|
||||
printk(BIOS_DEBUG, "begin msr fid, vid: hi=0x%x, lo=0x%x\n", msr.hi, msr.lo);
|
||||
|
||||
enable_fid_change();
|
||||
|
@ -119,7 +119,7 @@ void cache_as_ram_main(unsigned long bist, unsigned long cpu_init_detectedx)
|
|||
init_fidvid_bsp(bsp_apicid);
|
||||
|
||||
/* show final fid and vid */
|
||||
msr=rdmsr(0xc0010042);
|
||||
msr = rdmsr(0xc0010042);
|
||||
printk(BIOS_DEBUG, "end msr fid, vid: hi=0x%x, lo=0x%x\n", msr.hi, msr.lo);
|
||||
} else {
|
||||
printk(BIOS_DEBUG, "Changing FIDVID not supported\n");
|
||||
|
|
|
@ -21,7 +21,7 @@ static const struct irq_routing_table intel_irq_routing_table = {
|
|||
PIRQ_VERSION, /* u16 version */
|
||||
32+16*CONFIG_IRQ_SLOT_COUNT, /* there can be total CONFIG_IRQ_SLOT_COUNT devices on the bus */
|
||||
0x00, /* Where the interrupt router lies (bus) */
|
||||
(0x1f<<3)|0x0, /* Where the interrupt router lies (dev) */
|
||||
(0x1f << 3)|0x0, /* Where the interrupt router lies (dev) */
|
||||
0, /* IRQs devoted exclusively to PCI usage */
|
||||
0x8086, /* Vendor */
|
||||
0x24c0, /* Device */
|
||||
|
@ -29,14 +29,14 @@ static const struct irq_routing_table intel_irq_routing_table = {
|
|||
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, /* u8 rfu[11] */
|
||||
0x07, /* u8 checksum , this hase to set to some value that would give 0 after the sum of all bytes for this structure (including checksum) */
|
||||
{
|
||||
/* bus, dev|fn, {link, bitmap}, {link, bitmap}, {link, bitmap}, {link, bitmap}, slot, rfu */
|
||||
{0x00,(0x02<<3)|0x0, {{0x60, 0x0ef8}, {0x00, 0x0000}, {0x00, 0x0000}, {0x00, 0x00000}}, 0x0, 0x0}, /* [A] IGD VGA */
|
||||
{0x00,(0x1d<<3)|0x0, {{0x60, 0x0ef8}, {0x63, 0x0ef8}, {0x62, 0x0ef8}, {0x6b, 0x00ef8}}, 0x0, 0x0}, /* [A] USB1, [B] USB2, [C] USB3, [D] EHCI */
|
||||
{0x00,(0x1f<<3)|0x0, {{0x62, 0x0ef8}, {0x61, 0x0ef8}, {0x00, 0x0000}, {0x00, 0x00000}}, 0x0, 0x0}, /* [A] IDE, [B] SMBUS, [B] AUDIO, [B] MODEM */
|
||||
{0x01,(0x08<<3)|0x0, {{0x68, 0x0ef8}, {0x00, 0x0000}, {0x00, 0x0000}, {0x00, 0x00000}}, 0x0, 0x0}, /* [A] ETHERNET */
|
||||
{0x01,(0x00<<3)|0x0, {{0x60, 0x0ef8}, {0x61, 0x0ef8}, {0x62, 0x0ef8}, {0x63, 0x00ef8}}, 0x1, 0x0}, /* PCI SLOT 1 */
|
||||
{0x01,(0x01<<3)|0x0, {{0x63, 0x0ef8}, {0x60, 0x0ef8}, {0x61, 0x0ef8}, {0x62, 0x00ef8}}, 0x2, 0x0}, /* PCI SLOT 2 */
|
||||
{0x01,(0x02<<3)|0x0, {{0x62, 0x0ef8}, {0x63, 0x0ef8}, {0x60, 0x0ef8}, {0x61, 0x00ef8}}, 0x3, 0x0}, /* PCI SLOT 3 */
|
||||
/* bus, dev|fn, {link, bitmap}, {link, bitmap}, {link, bitmap}, {link, bitmap}, slot, rfu */
|
||||
{0x00,(0x02 << 3)|0x0, {{0x60, 0x0ef8}, {0x00, 0x0000}, {0x00, 0x0000}, {0x00, 0x00000}}, 0x0, 0x0}, /* [A] IGD VGA */
|
||||
{0x00,(0x1d << 3)|0x0, {{0x60, 0x0ef8}, {0x63, 0x0ef8}, {0x62, 0x0ef8}, {0x6b, 0x00ef8}}, 0x0, 0x0}, /* [A] USB1, [B] USB2, [C] USB3, [D] EHCI */
|
||||
{0x00,(0x1f << 3)|0x0, {{0x62, 0x0ef8}, {0x61, 0x0ef8}, {0x00, 0x0000}, {0x00, 0x00000}}, 0x0, 0x0}, /* [A] IDE, [B] SMBUS, [B] AUDIO, [B] MODEM */
|
||||
{0x01,(0x08 << 3)|0x0, {{0x68, 0x0ef8}, {0x00, 0x0000}, {0x00, 0x0000}, {0x00, 0x00000}}, 0x0, 0x0}, /* [A] ETHERNET */
|
||||
{0x01,(0x00 << 3)|0x0, {{0x60, 0x0ef8}, {0x61, 0x0ef8}, {0x62, 0x0ef8}, {0x63, 0x00ef8}}, 0x1, 0x0}, /* PCI SLOT 1 */
|
||||
{0x01,(0x01 << 3)|0x0, {{0x63, 0x0ef8}, {0x60, 0x0ef8}, {0x61, 0x0ef8}, {0x62, 0x00ef8}}, 0x2, 0x0}, /* PCI SLOT 2 */
|
||||
{0x01,(0x02 << 3)|0x0, {{0x62, 0x0ef8}, {0x63, 0x0ef8}, {0x60, 0x0ef8}, {0x61, 0x00ef8}}, 0x3, 0x0}, /* PCI SLOT 3 */
|
||||
}
|
||||
};
|
||||
|
||||
|
|
|
@ -67,7 +67,7 @@ static void flash_gpios(void)
|
|||
if ((manufacturer_id == 0x20) &&
|
||||
((device_id == 0x2c) || (device_id == 0x2d))) {
|
||||
printk(BIOS_DEBUG, "Detected ST M50FW0%c0 flash:\n",
|
||||
(device_id==0x2c)?'4':'8');
|
||||
(device_id == 0x2c)?'4':'8');
|
||||
u8 fgpi = read8((u8 *)0xffbc0100);
|
||||
printk(BIOS_DEBUG, " FGPI0 [%c] FGPI1 [%c] FGPI2 [%c] FGPI3 [%c] FGPI4 [%c]\n",
|
||||
(fgpi & (1 << 0)) ? 'X' : ' ',
|
||||
|
|
|
@ -67,7 +67,7 @@ void get_bus_conf(void)
|
|||
device_t dev;
|
||||
int i;
|
||||
|
||||
if(get_bus_conf_done==1) return; //do it only once
|
||||
if(get_bus_conf_done == 1) return; //do it only once
|
||||
|
||||
get_bus_conf_done = 1;
|
||||
|
||||
|
@ -77,7 +77,7 @@ void get_bus_conf(void)
|
|||
memset(m, 0, sizeof(struct mb_sysconf_t));
|
||||
|
||||
sysconf.hc_possible_num = ARRAY_SIZE(pci1234x);
|
||||
for(i=0;i<sysconf.hc_possible_num; i++) {
|
||||
for(i = 0; i < sysconf.hc_possible_num; i++) {
|
||||
sysconf.pci1234[i] = pci1234x[i];
|
||||
sysconf.hcdn[i] = hcdnx[i];
|
||||
}
|
||||
|
@ -96,7 +96,7 @@ void get_bus_conf(void)
|
|||
printk(BIOS_DEBUG, "ERROR - could not find PCI 1:%02x.0, using defaults\n", sysconf.sbdn + 0x06);
|
||||
}
|
||||
|
||||
for(i=2; i<8;i++) {
|
||||
for(i = 2; i < 8; i++) {
|
||||
dev = dev_find_slot(m->bus_mcp55[0], PCI_DEVFN(sysconf.sbdn + 0x0a + i - 2 , 0));
|
||||
if (dev) {
|
||||
m->bus_mcp55[i] = pci_read_config8(dev, PCI_SECONDARY_BUS);
|
||||
|
|
|
@ -86,15 +86,15 @@ static void *smp_write_config_table(void *v)
|
|||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, m->bus_mcp55[0], ((sbdn+8)<<2)|0, m->apicid_mcp55, 0x16); // 22
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, m->bus_mcp55[0], ((sbdn+9)<<2)|0, m->apicid_mcp55, 0x15); // 21
|
||||
|
||||
for(j=7; j>=2; j--) {
|
||||
for(j = 7; j >= 2; j--) {
|
||||
if(!m->bus_mcp55[j]) continue;
|
||||
for(i=0;i<4;i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, m->bus_mcp55[j], (0x00<<2)|i, m->apicid_mcp55, 0x10 + (2+j+i+4-sbdn%4)%4);
|
||||
for(i = 0; i < 4; i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, m->bus_mcp55[j], (0x00 << 2)|i, m->apicid_mcp55, 0x10 + (2+j+i+4-sbdn%4)%4);
|
||||
}
|
||||
}
|
||||
|
||||
for(j=0; j<1; j++)
|
||||
for(i=0;i<4;i++) {
|
||||
for(j = 0; j < 1; j++)
|
||||
for(i = 0; i < 4; i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, m->bus_mcp55[1], ((0x04+j)<<2)|i, m->apicid_mcp55, 0x10 + (2+i+j)%4);
|
||||
}
|
||||
|
||||
|
|
|
@ -82,11 +82,11 @@ static void sio_setup(void)
|
|||
|
||||
dword = pci_read_config32(PCI_DEV(0, MCP55_DEVN_BASE+1 , 0), 0xa0);
|
||||
/*serial 0 */
|
||||
dword |= (1<<0);
|
||||
dword |= (1 << 0);
|
||||
pci_write_config32(PCI_DEV(0, MCP55_DEVN_BASE+1 , 0), 0xa0, dword);
|
||||
|
||||
dword = pci_read_config32(PCI_DEV(0, MCP55_DEVN_BASE+1 , 0), 0xa4);
|
||||
dword |= (1<<16);
|
||||
dword |= (1 << 16);
|
||||
pci_write_config32(PCI_DEV(0, MCP55_DEVN_BASE+1 , 0), 0xa4, dword);
|
||||
}
|
||||
|
||||
|
@ -147,7 +147,7 @@ void cache_as_ram_main(unsigned long bist, unsigned long cpu_init_detectedx)
|
|||
#if CONFIG_SET_FIDVID
|
||||
{
|
||||
msr_t msr;
|
||||
msr=rdmsr(0xc0010042);
|
||||
msr = rdmsr(0xc0010042);
|
||||
printk(BIOS_DEBUG, "begin msr fid, vid %08x%08x\n", msr.hi, msr.lo);
|
||||
}
|
||||
enable_fid_change();
|
||||
|
@ -156,7 +156,7 @@ void cache_as_ram_main(unsigned long bist, unsigned long cpu_init_detectedx)
|
|||
// show final fid and vid
|
||||
{
|
||||
msr_t msr;
|
||||
msr=rdmsr(0xc0010042);
|
||||
msr = rdmsr(0xc0010042);
|
||||
printk(BIOS_DEBUG, "end msr fid, vid %08x%08x\n", msr.hi, msr.lo);
|
||||
}
|
||||
#endif
|
||||
|
|
|
@ -68,7 +68,7 @@ void get_bus_conf(void)
|
|||
device_t dev;
|
||||
int i;
|
||||
|
||||
if(get_bus_conf_done==1) return; //do it only once
|
||||
if(get_bus_conf_done == 1) return; //do it only once
|
||||
|
||||
get_bus_conf_done = 1;
|
||||
|
||||
|
@ -78,7 +78,7 @@ void get_bus_conf(void)
|
|||
memset(m, 0, sizeof(struct mb_sysconf_t));
|
||||
|
||||
sysconf.hc_possible_num = ARRAY_SIZE(pci1234x);
|
||||
for(i=0;i<sysconf.hc_possible_num; i++) {
|
||||
for(i = 0; i < sysconf.hc_possible_num; i++) {
|
||||
sysconf.pci1234[i] = pci1234x[i];
|
||||
sysconf.hcdn[i] = hcdnx[i];
|
||||
}
|
||||
|
@ -97,7 +97,7 @@ void get_bus_conf(void)
|
|||
printk(BIOS_DEBUG, "ERROR - could not find PCI 1:%02x.0, using defaults\n", sysconf.sbdn + 0x06);
|
||||
}
|
||||
|
||||
for(i=2; i<8;i++) {
|
||||
for(i = 2; i < 8; i++) {
|
||||
dev = dev_find_slot(m->bus_mcp55[0], PCI_DEVFN(sysconf.sbdn + 0x0a + i - 2 , 0));
|
||||
if (dev) {
|
||||
m->bus_mcp55[i] = pci_read_config8(dev, PCI_SECONDARY_BUS);
|
||||
|
|
|
@ -86,15 +86,15 @@ static void *smp_write_config_table(void *v)
|
|||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, m->bus_mcp55[0], ((sbdn+8)<<2)|0, m->apicid_mcp55, 0x16); // 22
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, m->bus_mcp55[0], ((sbdn+9)<<2)|0, m->apicid_mcp55, 0x15); // 21
|
||||
|
||||
for(j=7; j>=2; j--) {
|
||||
for(j = 7; j >= 2; j--) {
|
||||
if(!m->bus_mcp55[j]) continue;
|
||||
for(i=0;i<4;i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, m->bus_mcp55[j], (0x00<<2)|i, m->apicid_mcp55, 0x10 + (2+j+i+4-sbdn%4)%4);
|
||||
for(i = 0; i < 4; i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, m->bus_mcp55[j], (0x00 << 2)|i, m->apicid_mcp55, 0x10 + (2+j+i+4-sbdn%4)%4);
|
||||
}
|
||||
}
|
||||
|
||||
for(j=0; j<1; j++)
|
||||
for(i=0;i<4;i++) {
|
||||
for(j = 0; j < 1; j++)
|
||||
for(i = 0; i < 4; i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, m->bus_mcp55[1], ((0x04+j)<<2)|i, m->apicid_mcp55, 0x10 + (2+i+j)%4);
|
||||
}
|
||||
|
||||
|
|
|
@ -84,11 +84,11 @@ static void sio_setup(void)
|
|||
|
||||
dword = pci_read_config32(PCI_DEV(0, MCP55_DEVN_BASE+1 , 0), 0xa0);
|
||||
/*serial 0 */
|
||||
dword |= (1<<0);
|
||||
dword |= (1 << 0);
|
||||
pci_write_config32(PCI_DEV(0, MCP55_DEVN_BASE+1 , 0), 0xa0, dword);
|
||||
|
||||
dword = pci_read_config32(PCI_DEV(0, MCP55_DEVN_BASE+1 , 0), 0xa4);
|
||||
dword |= (1<<16);
|
||||
dword |= (1 << 16);
|
||||
pci_write_config32(PCI_DEV(0, MCP55_DEVN_BASE+1 , 0), 0xa4, dword);
|
||||
}
|
||||
|
||||
|
@ -195,7 +195,7 @@ void cache_as_ram_main(unsigned long bist, unsigned long cpu_init_detectedx)
|
|||
post_code(0x3A);
|
||||
|
||||
/* show final fid and vid */
|
||||
msr=rdmsr(0xc0010071);
|
||||
msr = rdmsr(0xc0010071);
|
||||
printk(BIOS_DEBUG, "End FIDVIDMSR 0xc0010071 0x%08x 0x%08x\n", msr.hi, msr.lo);
|
||||
#endif
|
||||
|
||||
|
|
|
@ -55,7 +55,7 @@ void acpi_create_fadt(acpi_fadt_t * fadt, acpi_facs_t * facs, void *dsdt)
|
|||
else
|
||||
fadt->dsdt = (uintptr_t)dsdt;
|
||||
|
||||
/* 3=Workstation,4=Enterprise Server, 7=Performance Server */
|
||||
/* 3 = Workstation, 4 = Enterprise Server, 7 = Performance Server */
|
||||
fadt->preferred_pm_profile = 0x03;
|
||||
fadt->sci_int = 9;
|
||||
/* disable system management mode by setting to 0: */
|
||||
|
|
|
@ -70,7 +70,7 @@ static void *smp_write_config_table(void *v)
|
|||
dword = pci_read_config32(dev, 0xAC);
|
||||
dword = dword & ~(7 << 26);
|
||||
dword = dword | (6 << 26); /* 0: INTA, ...., 7: INTH */
|
||||
/* dword |= 1<<22; PIC and APIC co exists */
|
||||
/* dword |= 1 << 22; PIC and APIC co exists */
|
||||
pci_write_config32(dev, 0xAC, dword);
|
||||
#endif
|
||||
|
||||
|
|
|
@ -30,16 +30,16 @@ static const struct irq_routing_table intel_irq_routing_table = {
|
|||
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, /* u8 rfu[11] */
|
||||
0x66, /* Checksum */
|
||||
{
|
||||
/* bus, dev|fn, {link, bitmap}, {link, bitmap}, {link, bitmap}, {link, bitmap}, slot, rfu */
|
||||
{0x00,(0x14<<3)|0x0, {{0x02, 0xdeb8}, {0x03, 0xdeb8}, {0x05, 0xdeb8}, {0x01, 0x0deb8}}, 0x1, 0x0},
|
||||
{0x00,(0x0d<<3)|0x0, {{0x02, 0xdeb8}, {0x03, 0xdeb8}, {0x05, 0xdeb8}, {0x01, 0x0deb8}}, 0x2, 0x0},
|
||||
{0x00,(0x0e<<3)|0x0, {{0x03, 0xdeb8}, {0x05, 0xdeb8}, {0x01, 0xdeb8}, {0x02, 0x0deb8}}, 0x3, 0x0},
|
||||
{0x00,(0x13<<3)|0x0, {{0x01, 0xdeb8}, {0x02, 0xdeb8}, {0x03, 0xdeb8}, {0x05, 0x0deb8}}, 0x4, 0x0},
|
||||
{0x00,(0x11<<3)|0x0, {{0x00, 0xdeb8}, {0x00, 0xdeb8}, {0x03, 0xdeb8}, {0x05, 0x0deb8}}, 0x0, 0x0},
|
||||
{0x00,(0x0f<<3)|0x0, {{0x01, 0xdeb8}, {0x02, 0xdeb8}, {0x03, 0xdeb8}, {0x05, 0x0deb8}}, 0x0, 0x0},
|
||||
{0x00,(0x01<<3)|0x0, {{0x01, 0xdeb8}, {0x02, 0xdeb8}, {0x03, 0xdeb8}, {0x05, 0x0deb8}}, 0x0, 0x0},
|
||||
{0x00,(0x10<<3)|0x0, {{0x01, 0xdeb8}, {0x02, 0xdeb8}, {0x03, 0xdeb8}, {0x05, 0x0deb8}}, 0x0, 0x0},
|
||||
{0x00,(0x12<<3)|0x0, {{0x01, 0xdeb8}, {0x00, 0xdeb8}, {0x00, 0xdeb8}, {0x00, 0x0deb8}}, 0x0, 0x0},
|
||||
/* bus, dev|fn, {link, bitmap}, {link, bitmap}, {link, bitmap}, {link, bitmap}, slot, rfu */
|
||||
{0x00,(0x14 << 3)|0x0, {{0x02, 0xdeb8}, {0x03, 0xdeb8}, {0x05, 0xdeb8}, {0x01, 0x0deb8}}, 0x1, 0x0},
|
||||
{0x00,(0x0d << 3)|0x0, {{0x02, 0xdeb8}, {0x03, 0xdeb8}, {0x05, 0xdeb8}, {0x01, 0x0deb8}}, 0x2, 0x0},
|
||||
{0x00,(0x0e << 3)|0x0, {{0x03, 0xdeb8}, {0x05, 0xdeb8}, {0x01, 0xdeb8}, {0x02, 0x0deb8}}, 0x3, 0x0},
|
||||
{0x00,(0x13 << 3)|0x0, {{0x01, 0xdeb8}, {0x02, 0xdeb8}, {0x03, 0xdeb8}, {0x05, 0x0deb8}}, 0x4, 0x0},
|
||||
{0x00,(0x11 << 3)|0x0, {{0x00, 0xdeb8}, {0x00, 0xdeb8}, {0x03, 0xdeb8}, {0x05, 0x0deb8}}, 0x0, 0x0},
|
||||
{0x00,(0x0f << 3)|0x0, {{0x01, 0xdeb8}, {0x02, 0xdeb8}, {0x03, 0xdeb8}, {0x05, 0x0deb8}}, 0x0, 0x0},
|
||||
{0x00,(0x01 << 3)|0x0, {{0x01, 0xdeb8}, {0x02, 0xdeb8}, {0x03, 0xdeb8}, {0x05, 0x0deb8}}, 0x0, 0x0},
|
||||
{0x00,(0x10 << 3)|0x0, {{0x01, 0xdeb8}, {0x02, 0xdeb8}, {0x03, 0xdeb8}, {0x05, 0x0deb8}}, 0x0, 0x0},
|
||||
{0x00,(0x12 << 3)|0x0, {{0x01, 0xdeb8}, {0x00, 0xdeb8}, {0x00, 0xdeb8}, {0x00, 0x0deb8}}, 0x0, 0x0},
|
||||
}
|
||||
};
|
||||
|
||||
|
|
|
@ -46,7 +46,7 @@ static void enable_mainboard_devices(void)
|
|||
if (dev == PCI_DEV_INVALID)
|
||||
die("Southbridge not found!!!\n");
|
||||
|
||||
/* bit=0 means enable function (per CX700 datasheet)
|
||||
/* bit = 0 means enable function (per CX700 datasheet)
|
||||
* 5 16.1 USB 2
|
||||
* 4 16.0 USB 1
|
||||
* 3 15.0 SATA and PATA
|
||||
|
@ -55,7 +55,7 @@ static void enable_mainboard_devices(void)
|
|||
*/
|
||||
pci_write_config8(dev, 0x50, 0x80);
|
||||
|
||||
/* bit=1 means enable internal function (per CX700 datasheet)
|
||||
/* bit = 1 means enable internal function (per CX700 datasheet)
|
||||
* 3 Internal RTC
|
||||
* 2 Internal PS2 Mouse
|
||||
* 1 Internal KBC Configuration
|
||||
|
|
|
@ -29,17 +29,17 @@ static const struct irq_routing_table intel_irq_routing_table = {
|
|||
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, /* u8 rfu[11] */
|
||||
0x3e, /* Checksum */
|
||||
{
|
||||
/* bus, dev|fn, {link, bitmap}, {link, bitmap}, {link, bitmap}, {link, bitmap}, slot, rfu */
|
||||
{0x00,(0x08<<3)|0x0, {{0x01, 0xdef8}, {0x02, 0xdef8}, {0x03, 0xdef8}, {0x05, 0x0def8}}, 0x1, 0x0},
|
||||
{0x00,(0x09<<3)|0x0, {{0x02, 0xdef8}, {0x03, 0xdef8}, {0x05, 0xdef8}, {0x01, 0x0def8}}, 0x2, 0x0},
|
||||
{0x00,(0x0a<<3)|0x0, {{0x03, 0xdef8}, {0x05, 0xdef8}, {0x01, 0xdef8}, {0x02, 0x0def8}}, 0x3, 0x0},
|
||||
{0x00,(0x0b<<3)|0x0, {{0x05, 0xdef8}, {0x01, 0xdef8}, {0x02, 0xdef8}, {0x03, 0x0def8}}, 0x4, 0x0},
|
||||
{0x00,(0x0c<<3)|0x0, {{0x01, 0xdef8}, {0x02, 0xdef8}, {0x03, 0xdef8}, {0x05, 0x0def8}}, 0x5, 0x0},
|
||||
{0x00,(0x11<<3)|0x0, {{0x00, 0xdef8}, {0x00, 0xdef8}, {0x03, 0xdef8}, {0x05, 0x0def8}}, 0x0, 0x0},
|
||||
{0x00,(0x0f<<3)|0x0, {{0x01, 0xdef8}, {0x02, 0xdef8}, {0x03, 0xdef8}, {0x05, 0x0def8}}, 0x0, 0x0},
|
||||
{0x00,(0x01<<3)|0x0, {{0x01, 0xdef8}, {0x02, 0xdef8}, {0x03, 0xdef8}, {0x05, 0x0def8}}, 0x0, 0x0},
|
||||
{0x00,(0x10<<3)|0x0, {{0x01, 0xdef8}, {0x02, 0xdef8}, {0x03, 0xdef8}, {0x05, 0x0def8}}, 0x0, 0x0},
|
||||
{0x00,(0x12<<3)|0x0, {{0x01, 0xdef8}, {0x00, 0xdef8}, {0x00, 0xdef8}, {0x00, 0x0def8}}, 0x0, 0x0},
|
||||
/* bus, dev|fn, {link, bitmap}, {link, bitmap}, {link, bitmap}, {link, bitmap}, slot, rfu */
|
||||
{0x00,(0x08 << 3)|0x0, {{0x01, 0xdef8}, {0x02, 0xdef8}, {0x03, 0xdef8}, {0x05, 0x0def8}}, 0x1, 0x0},
|
||||
{0x00,(0x09 << 3)|0x0, {{0x02, 0xdef8}, {0x03, 0xdef8}, {0x05, 0xdef8}, {0x01, 0x0def8}}, 0x2, 0x0},
|
||||
{0x00,(0x0a << 3)|0x0, {{0x03, 0xdef8}, {0x05, 0xdef8}, {0x01, 0xdef8}, {0x02, 0x0def8}}, 0x3, 0x0},
|
||||
{0x00,(0x0b << 3)|0x0, {{0x05, 0xdef8}, {0x01, 0xdef8}, {0x02, 0xdef8}, {0x03, 0x0def8}}, 0x4, 0x0},
|
||||
{0x00,(0x0c << 3)|0x0, {{0x01, 0xdef8}, {0x02, 0xdef8}, {0x03, 0xdef8}, {0x05, 0x0def8}}, 0x5, 0x0},
|
||||
{0x00,(0x11 << 3)|0x0, {{0x00, 0xdef8}, {0x00, 0xdef8}, {0x03, 0xdef8}, {0x05, 0x0def8}}, 0x0, 0x0},
|
||||
{0x00,(0x0f << 3)|0x0, {{0x01, 0xdef8}, {0x02, 0xdef8}, {0x03, 0xdef8}, {0x05, 0x0def8}}, 0x0, 0x0},
|
||||
{0x00,(0x01 << 3)|0x0, {{0x01, 0xdef8}, {0x02, 0xdef8}, {0x03, 0xdef8}, {0x05, 0x0def8}}, 0x0, 0x0},
|
||||
{0x00,(0x10 << 3)|0x0, {{0x01, 0xdef8}, {0x02, 0xdef8}, {0x03, 0xdef8}, {0x05, 0x0def8}}, 0x0, 0x0},
|
||||
{0x00,(0x12 << 3)|0x0, {{0x01, 0xdef8}, {0x00, 0xdef8}, {0x00, 0xdef8}, {0x00, 0x0def8}}, 0x0, 0x0},
|
||||
}
|
||||
};
|
||||
|
||||
|
|
|
@ -77,17 +77,17 @@ static void *smp_write_config_table(void *v)
|
|||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, bus_ck804_0, ((sbdn +8)<<2)|0, apicid_ck804, 0x16); // 22
|
||||
|
||||
//Slot PCIE x16
|
||||
for(i=0;i<4;i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, bus_ck804_5, (0x00<<2)|i, apicid_ck804, 0x10 + (2+i+4-sbdn%4)%4);
|
||||
for(i = 0; i < 4; i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, bus_ck804_5, (0x00 << 2)|i, apicid_ck804, 0x10 + (2+i+4-sbdn%4)%4);
|
||||
}
|
||||
|
||||
//Slot PCIE x4
|
||||
for(i=0;i<4;i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, bus_ck804_4, (0x00<<2)|i, apicid_ck804, 0x10 + (1+i+4-sbdn%4)%4);
|
||||
for(i = 0; i < 4; i++) {
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, bus_ck804_4, (0x00 << 2)|i, apicid_ck804, 0x10 + (1+i+4-sbdn%4)%4);
|
||||
}
|
||||
|
||||
//Onboard SM720 VGA
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, bus_ck804_1, (6<<2)|0, apicid_ck804, 0x13); // 19
|
||||
smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, bus_ck804_1, (6 << 2)|0, apicid_ck804, 0x13); // 19
|
||||
|
||||
/*Local Ints: Type Polarity Trigger Bus ID IRQ APIC ID PIN#*/
|
||||
mptable_lintsrc(mc, bus_isa);
|
||||
|
|
|
@ -57,7 +57,7 @@ static void sio_setup(void)
|
|||
/* LPC Positive Decode 0 */
|
||||
dword = pci_read_config32(PCI_DEV(0, CK804_DEVN_BASE+1 , 0), 0xa0);
|
||||
/* Serial 0, Serial 1 */
|
||||
dword |= (1<<0) | (1<<1);
|
||||
dword |= (1 << 0) | (1 << 1);
|
||||
pci_write_config32(PCI_DEV(0, CK804_DEVN_BASE+1 , 0), 0xa0, dword);
|
||||
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue