Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 20 Oct 98 17:01:42 -0400
From:      Michael Scott Boers <mboers@datacompusa.com>
To:        "freebsd-hackers" <freebsd-hackers@FreeBSD.ORG>
Subject:   Problem with Cyclades Cyclom-8YeP on 2.2.7 and 3.0-RELEASE
Message-ID:  <199810202101.RAA02050@datacompusa.com>

next in thread | raw e-mail | index | archive | help
I have previously submitted this question to freebsd-questions and 
freebsd-hardware with no response.  I hope some kind soul on this may be 
able to help me.

I am having trouble getting a Cyclades Cyclom-8YeP (PCI, 8 port) 
multiport serial card to work with my FreeBSD 2.2.7 machine.  I would 
appreciate any help anyone can give me towards solving this problem.  If 
anyone out there is using a Cyclom-8YeP card with 2.2.7, please let me 
know.  Should I just give up and get the isa version instead?  

PROBLEM SUMMARY:

During bootup, the kernel finds the card but reports no ports found.

(Exerpt from boot sequence with the -v added)

cy0 <Cyclades Cyclom-Y Serial Adapter> rev 1 int a irq 10 on pci0:9:0
        mapreg[10] type=0 addr=ffadff80 size=0080.
        mapreg[14] type=1 addr=00007c80 size=0080.
        mapreg[18] type=1 addr=000dc000 size=3f80.
cy_pci.c cy_attach config_id.cfg1 = 80004800 /*Added to peak at the 
values*/
cy_pci.c cy_attach unit = 0                  /*Added to peak at the 
values*/
cy_pci.c cy_attach ioport = 7c80             /*Added to peak at the 
values*/
cy_pci.c cy_attach paddr = dc000             /*Added to peak at the 
values*/
cy_pci.c cy_attach vaddr = f4d3b000          /*Added to peak at the 
values*/
cy0: no ports found!

So as you can see, the pci probe finds the card, but the attach sequence 
fails.  I have already updated the i386/isa/cy.c and i386/isa/cyreg.h 
with the new version (1.41.3.1) from Cyclades.  This has not helped.

WHAT I HAVE TRIED:

CYCTEST.EXE (from Cyclades) reports everything is fine.
Output from CYCTEST:
    Device:         64
    BusNumber:      0
    Vendor ID:      120Eh
    Device ID:      0100h
    Class Code:     078000h
    Revision ID:    01h
    Interrupt Line: 9
    Runtime Regs Addr: 00007C81h
    Base Address Reg:  000DC002h
    Firmware ID:    13
    FirmWare Rev:   3
    Number of Ports:8
    ID Number:      9DA74502
    EEPROM Version: 3

    CD1400 #0:      48h
    CD1400 #1:      48h
    CD1400 #2:      00h
    CD1400 #3:      00h
    CD1400 #4:      00h
    CD1400 #5:      00h
    CD1400 #6:      00h
    CD1400 #7:      00h

Changing the base address with CYCTEST (from Y < 1MB to Y > 1MB) doesn't 
help.

Swaping the card with my Intel Pro 100 (which changes the assign IRQ) 
doesn't help.

When I look at the values in memory (using ddb or gdb -k) the entire 16kb 
allocated by cy_pci.c at 0xf4d3b000 reports back 0xffffffff.  My 
understanding of how this card works suggests that while the upper three 
bytes of each work should be 0xffffff the lower byte should hold 
meaningful data.  For example, the base address + 0x0100 should be 
0xffffff48 because 0x48 is the version number of the cd1400 on the card.

I installed 3.0-RELEASE on this machine as a last ditch effort to get the 
card to work.  Same results as 2.2.7

POSSIBLE CLUE:
Normally I have set the shadow memory for 0xdc000 to be disabled.  
However, when I set it to cached, the kernel finds the card.  ddb abd gdb 
report back reasonable values when peaking at the 16kb allocated by the 
card.  The card doesn't work worth beans in this mode because all of the 
memory is write protected due to shadowing being enabled, but AT LEAST IT 
IS SOMETHING!  Setting shadowing to enable does not work either.

--
Michael Boers
Datacomp


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199810202101.RAA02050>