From owner-freebsd-current Mon Jan 20 21:43:48 2003 Delivered-To: freebsd-current@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id B015537B405 for ; Mon, 20 Jan 2003 21:43:43 -0800 (PST) Received: from mta6.snfc21.pbi.net (mta6.snfc21.pbi.net [206.13.28.240]) by mx1.FreeBSD.org (Postfix) with ESMTP id 11ECF43F43 for ; Mon, 20 Jan 2003 21:43:43 -0800 (PST) (envelope-from mbsd@pacbell.net) Received: from atlas ([64.165.199.132]) by mta6.snfc21.pbi.net (iPlanet Messaging Server 5.1 HotFix 1.6 (built Oct 18 2002)) with ESMTP id <0H9100CZ0UKQCN@mta6.snfc21.pbi.net> for current@freebsd.org; Mon, 20 Jan 2003 21:43:40 -0800 (PST) Date: Mon, 20 Jan 2003 21:43:38 -0800 (PST) From: =?ISO-8859-1?Q?Mikko_Ty=F6l=E4j=E4rvi?= Subject: Re: if_sis.c 1.61 breaks support for SiS630 chipset (fwd) X-X-Sender: mikko@atlas.home To: current@freebsd.org Message-id: <20030120214226.Y70415-100000@atlas.home> MIME-version: 1.0 Content-type: TEXT/PLAIN; charset=ISO-8859-1 Content-transfer-encoding: 8BIT Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG Hmm... my MUA dropped Cc: current somewhere along the line. /Mikko On Mon, 20 Jan 2003, Martin Blapp wrote: > > Hi, > > And you just added this part ? Maybe we can then just check the > revision and do the old read part for rev > rev 0x90. You should > not use then the bitbang method then. If I get it right you do both > in your patch, the first fails silently, the second works. Right ? > > Martin I believe the chip does support the bitbang method, but for some reason fails to work as the code expects in at least one place. Not being overly familiar with neither the chip nor MII, I simply added the smallest amount of code from the last working revision in order to get my laptop back on line. It is a workaround, not a solution. Regards, /Mikko > > Martin Blapp, > ------------------------------------------------------------------ > ImproWare AG, UNIXSP & ISP, Zurlindenstrasse 29, 4133 Pratteln, CH > Phone: +41 61 826 93 00 Fax: +41 61 826 93 01 > PGP: > PGP Fingerprint: B434 53FC C87C FE7B 0A18 B84C 8686 EF22 D300 551E > ------------------------------------------------------------------ > > On Mon, 20 Jan 2003, Mikko Työläjärvi wrote: > > > > > Hello, > > > > On Mon, 20 Jan 2003, Martin Blapp wrote: > > > > > > > > hi, > > > > > > > Can you post me a "pciconf -lv" I need the revision number of your > > > > integrated nic. > > > > Full pciconf output included for your reading pleasure :-) > > > > > Sorry, over read it. > > > > > > Can you post me the whole patch which you've made to get it > > > working again ? > > > > Sure. Seems like it is just the read code that does not work with my > > chipset. This is simply the chunk of code that was replaced in rev > > 1.61, but wrapped inside an if-statement. Dunno if the condition is > > correct: I only have one sis-equipped computer to test with. > > > > Regards, > > /Mikko > > > > --- if_sis.c.1.62 Sun Jan 19 14:35:57 2003 > > +++ if_sis.c Sun Jan 19 15:14:54 2003 > > @@ -735,6 +735,39 @@ > > sc->sis_rev < SIS_REV_635 && phy != 0) > > return(0); > > > > +#if 1 > > + /* > > + * Hack: The new code below does not work with my sis630S. > > + * Revive wokring code from r1.60 > > + */ > > + > > + if (sc->sis_type == SIS_TYPE_900 && sc->sis_rev <= SIS_REV_630S) { > > + int i, val = 0; > > + > > + CSR_WRITE_4(sc, SIS_PHYCTL, > > + (phy << 11) | (reg << 6) | SIS_PHYOP_READ); > > + SIS_SETBIT(sc, SIS_PHYCTL, SIS_PHYCTL_ACCESS); > > + > > + for (i = 0; i < SIS_TIMEOUT; i++) { > > + if (!(CSR_READ_4(sc, SIS_PHYCTL) & SIS_PHYCTL_ACCESS)) > > + break; > > + } > > + > > + if (i == SIS_TIMEOUT) { > > + printf("sis%d: PHY failed to come ready\n", > > + sc->sis_unit); > > + return(0); > > + } > > + > > + val = (CSR_READ_4(sc, SIS_PHYCTL) >> 16) & 0xFFFF; > > + > > + if (val == 0xFFFF) > > + return(0); > > + > > + return(val); > > + } > > +#endif > > + > > bzero((char *)&frame, sizeof(frame)); > > > > frame.mii_phyaddr = phy; > > > > sotec% pciconf -lv > > hostb0@pci0:0:0: class=0x060000 card=0x00000000 chip=0x06301039 rev=0x31 hdr=0x00 > > vendor = 'Silicon Integrated Systems (SiS)' > > device = 'SiS630 Host-to-PCI Bridge' > > class = bridge > > subclass = HOST-PCI > > atapci0@pci0:0:1: class=0x010180 card=0x120114ff chip=0x55131039 rev=0xd0 hdr=0x00 > > vendor = 'Silicon Integrated Systems (SiS)' > > device = 'SiS5513 EIDE Controller (A,B step)' > > class = mass storage > > subclass = ATA > > isab0@pci0:1:0: class=0x060100 card=0x00000000 chip=0x00081039 rev=0x00 hdr=0x00 > > vendor = 'Silicon Integrated Systems (SiS)' > > device = 'SiS85C503/5513 PCI to ISA Bridge (LPC Bridge)' > > class = bridge > > subclass = PCI-ISA > > sis0@pci0:1:1: class=0x020000 card=0x020114ff chip=0x09001039 rev=0x82 hdr=0x00 > > vendor = 'Silicon Integrated Systems (SiS)' > > device = 'SiS900 Fast Ethernet/Home Networking Ctrlr' > > class = network > > subclass = ethernet > > ohci0@pci0:1:2: class=0x0c0310 card=0x70011039 chip=0x70011039 rev=0x07 hdr=0x00 > > vendor = 'Silicon Integrated Systems (SiS)' > > device = 'SiS5597/8 Universal Serial Bus Controller' > > class = serial bus > > subclass = USB > > ohci1@pci0:1:3: class=0x0c0310 card=0x70001039 chip=0x70011039 rev=0x07 hdr=0x00 > > vendor = 'Silicon Integrated Systems (SiS)' > > device = 'SiS5597/8 Universal Serial Bus Controller' > > class = serial bus > > subclass = USB > > pcm0@pci0:1:4: class=0x040100 card=0x040114ff chip=0x70181039 rev=0x02 hdr=0x00 > > vendor = 'Silicon Integrated Systems (SiS)' > > device = 'SiS7018 PCI Audio Accelerator' > > class = multimedia > > subclass = audio > > none0@pci0:1:6: class=0x070300 card=0x100514ff chip=0x70131039 rev=0xa0 hdr=0x00 > > vendor = 'Silicon Integrated Systems (SiS)' > > device = 'SiS7013 56k Modem' > > class = simple comms > > pcib1@pci0:2:0: class=0x060400 card=0x00000000 chip=0x00011039 rev=0x00 hdr=0x01 > > vendor = 'Silicon Integrated Systems (SiS)' > > device = 'SiS 530 Virtual PCI-to-PCI bridge (AGP)' > > class = bridge > > subclass = PCI-PCI > > cbb0@pci0:3:0: class=0x060700 card=0x060114ff chip=0x69721217 rev=0x00 hdr=0x02 > > vendor = 'O2 Micro Inc' > > device = 'OZ6912 CardBus Controller' > > class = bridge > > subclass = PCI-CardBus > > none1@pci1:0:0: class=0x030000 card=0x030314ff chip=0x63001039 rev=0x31 hdr=0x00 > > vendor = 'Silicon Integrated Systems (SiS)' > > device = 'SiS630 GUI Accelerator+3D' > > class = display > > subclass = VGA > > > To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message