From: M. R. B. <mr...@us...> - 2001-03-15 05:40:52
|
Update of /cvsroot/linuxdc/linux In directory usw-pr-cvs1:/tmp/cvs-serv19846 Modified Files: TODO.dc ChangeLog.dc Log Message: Minor cosmetic changes to PCI and BBA Index: TODO.dc =================================================================== RCS file: /cvsroot/linuxdc/linux/TODO.dc,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -r1.1 -r1.2 *** TODO.dc 2001/03/13 10:28:47 1.1 --- TODO.dc 2001/03/15 05:42:55 1.2 *************** *** 1,4 **** --- 1,20 ---- LinuxDC list of things TODO + 2001-03-14: + + - New problem with PCI: Ethernet program loaders such as dcload-ip initalize + the GAPS subsystem to a known state, therefore when the kernel is uploaded + via the BBA it "technically" needs no further GAPS initialization for + the 8139C driver to load sucessfully. However, the latest snapshot of + pci_gaps.c didn't do any init of the PCI bus whatsoever, and attempts + to load the kernel via serial cable or a boot CD (where GAPS hasn't been + initialized yet) will not load the BBA properly. The problem is that + interrupts aren't being sent from GAPS to the SH4's IRQ 11, so the BBA is + able to transmit, but unable to receive. I've have since added Dan Potter's + BBA initialization routine to pci_gaps, thinking that I missed an step + somewhere, but interrupts still aren't being detected by the system. + + 2001-03-13: + - Talk to NIIBE Yutaka <gn...@m1...> about merging our changes into the LinuxSH kernel. This would have the cool side effect of our code going *************** *** 15,18 **** --- 31,42 ---- tested. But overall, the cause of the screwed-up frames needs to be found and fixed. + + [FIXED] The RxConfig Ring Buffer size was statically defined to 32K, even + though I had added a conditional to make it 16K for the DC (the GAPS PCI + interface only has 32K _total_ PCI DMA). Because the 8139C thought this + buffer was 32K it was causing buffer overruns (resulting in broken, + mishapen RX frames everywhere) and networking performance was abysmal. + After adding the correct value to the rtl8139_rx_config constant, there are + no further problems with network performance. - Hmm, the FB driver is SLOW!! I should've known, given all the warnings on Index: ChangeLog.dc =================================================================== RCS file: /cvsroot/linuxdc/linux/ChangeLog.dc,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -r1.8 -r1.9 *** ChangeLog.dc 2001/03/14 21:37:19 1.8 --- ChangeLog.dc 2001/03/15 05:42:55 1.9 *************** *** 1,4 **** --- 1,14 ---- 2001-03-14 M. R. Brown <mr...@li...> + * drivers/pci/pci.ids: Added the device id for the Dreamcast + Broadband Adapter. + * include/linux/pci_ids.h: Added definitions for Sega's vendor id and + the BBA's device id. + * drivers/net/8139too.c: Change the name of the BBA to Dreamcast... + rather than Sega. + + * TODO.dc: Mention the current PCI bug, and the fix for the 8139C Rx + ring buffer size bug. + * drivers/net/8139too.c [rtl8139_rx_config]: Added a shift for RX_BUF_LEN_IDX to make sure the 16k buffer was being selected (this |