First post, by gnif
Hi All,
I have a SIS496 chipset system with a SMC EtherPower II 10/100 PCI SMC9432TX NIC. I have been trying on and off for the last few years to get this device to function when the packet driver is loaded in the UMB when using URAM+UMB.
The problem is well documented that when UMB is used, it breaks DMA Bus Mastering which results in devices like this NIC from failing to function (The packet driver loads, but it wont transmit or receive any data).
Well today I finally solved it!
See: https://bitsavers.org/components/sis/SiS_85C4 … -497_199507.pdf
Page 122 in the PDF, or 120 as numbered.
Specifically register 0x44-0x45 - Shadow Configure
Bit 10 - PCI, ISA Master Access Shadow RAM Area Enable
On my system this is initialised to zero on cold boot. This is preventing the PCI and ISA devices from being able to DMA with their TSR drivers.
Turning this bit on with the MCSIS469 tool before loading the packet driver fixes the issue.
mcsis496 w44h 10=1
Packet driver loaded high after flipping the bit
Ping working
Proof it's loaded high using URAM+UMB (You can see himem is also loaded high)
I do have `LOWDMA` loaded there but that's just to workaround the smartdrv FDD, it's not playing a role here.
I have also not tested yet if tools like smartdrv will function properly now when accessing the FDD
There is also a nice performance boost (+10fps in doom timedemo for me) to be had by enabling caching of the shadow ram regions (some experimentation here is still needed, this might cause undesirable behaviour):
mcsis496 w46h 8=1 9=1 10=1 11=1 12=1 13=1 14=1 15=1 16=1