Hi there!
I stil fighting with my system.... now I beleive that having sis900
ethernet on my board (ECS K7SEM) may be not a good idea
This motherboard has a realtek controler onboard and Sis730 chipset, wich
comes with sis900 inside. So , really I have 2 lan controlers:
00:01.1 Ethernet controller: Silicon Integrated Systems [SiS] SiS900 10/100
Ethernet (rev 82)
Flags: medium devsel, IRQ 10
I/O ports at 2400 [size=256]
Memory at 88000000 (32-bit, non-prefetchable) [size=4K]
Expansion ROM at <unassigned> [disabled] [size=128K]
Capabilities: [40] Power Management version 2
00:0d.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139 (rev
10)
Subsystem: Realtek Semiconductor Co., Ltd. RT8139
Flags: bus master, medium devsel, latency 64, IRQ 11
I/O ports at 2800 [size=256]
Memory at 88004000 (32-bit, non-prefetchable) [size=256]
Expansion ROM at <unassigned> [disabled] [size=64K]
Capabilities: [50] Power Management version 2
The original BIOS flash disables somehow the sis900 , so I don't see it in
the lspci......
In src/northsouthbridge/sis/730/southbridge.c on line 262 i found this code:
pcidev = pci_find_device(PCI_VENDOR_ID_SI, 0x0900, (void *)NULL);
if (pcidev != NULL) {
u32 bar0 = 0xb001;
// set the BAR 0 to 0xb000. Safe, high value, known good.
// pci config set doesn't work for reasons we don't
understand.
pci_write_config_dword(pcidev, PCI_BASE_ADDRESS_0, bar0);
I replaced it by:
pcidev = pci_find_device(PCI_VENDOR_ID_SI, 0x0900, (void *)NULL);
// if (pcidev != NULL) {
if (0) {
u32 bar0 = 0xb001;
// set the BAR 0 to 0xb000. Safe, high value, known good.
// pci config set doesn't work for reasons we don't
understand.
pci_write_config_dword(pcidev, PCI_BASE_ADDRESS_0, bar0);
but the controler wasn't disabled.... how do I disable it?
Nikolai