if(!gbDebug_SerialSetup) {
outb(SERIAL_PORT + 1, 0x00); // Disable all interrupts
outb(SERIAL_PORT + 3, 0x80); // Enable DLAB (set baud rate divisor)
- outb(SERIAL_PORT + 0, 0x0C); // Set divisor to 12 (lo byte) 9600 baud
- outb(SERIAL_PORT + 1, 0x00); // (hi byte)
+ outb(SERIAL_PORT + 0, 0x01); // Set divisor to 1 (lo byte) - 115200 baud
+ outb(SERIAL_PORT + 1, 0x00); // (hi byte)
outb(SERIAL_PORT + 3, 0x03); // 8 bits, no parity, one stop bit
outb(SERIAL_PORT + 2, 0xC7); // Enable FIFO with 14-byte threshold and clear it
outb(SERIAL_PORT + 4, 0x0B); // IRQs enabled, RTS/DSR set
*/\r
int PCI_Install(char **Arguments)\r
{\r
- int i;\r
+ int i, ret, bus;\r
void *tmpPtr;\r
\r
// Build Portmap\r
gaPCI_PortBitmap[MAX_RESERVED_PORT / 32] = 1 << i;\r
\r
// Scan Bus (Bus 0, Don't fill gPCI_Devices)\r
- i = PCI_ScanBus(0, 0);\r
- if(i != MODULE_ERR_OK) return i;\r
+ for( bus = 0; bus < giPCI_BusCount; bus ++ )\r
+ {\r
+ ret = PCI_ScanBus(bus, 0);\r
+ if(ret != MODULE_ERR_OK) return i;\r
+ }\r
\r
if(giPCI_DeviceCount == 0) {\r
Log_Notice("PCI", "No devices were found");\r
\r
// Reset counts\r
giPCI_DeviceCount = 0;\r
- giPCI_BusCount = 0;\r
+ giPCI_BusCount = 1;\r
memset(gaPCI_BusBitmap, 0, sizeof(gaPCI_BusBitmap));\r
// Rescan, filling the PCI device array\r
- PCI_ScanBus(0, 1);\r
+ for( bus = 0; bus < giPCI_BusCount; bus ++ )\r
+ {\r
+ PCI_ScanBus(bus, 1);\r
+ }\r
\r
// Complete Driver Structure\r
gPCI_DriverStruct.RootNode.Size = giPCI_DeviceCount;\r