On Sat, 19 Jul 2003, Bruce Evans wrote: Hi, > > firmware_version always is 0xff. > > This usually means that the maddr is wrong or that the hardware is not > there for some other reason. A normal hex dump of cyclades isa memory > looks something like this > (output from "dd if=/dev/mem bs=1 iseek=0xd4000 count=0x2000 | hd"): thanks. useful hint. going to see what I can do with this information. > Values at even offsets are always repeated at the next (odd) offset. > > CD1400_GFRCR is at offset 0x80 (contents 0x46 in the above). > > > If I give another maddr in hints file than dip switches are set to > > kernel aborts somwhere in sioprobe(dev) and will reboot so I assume > > maddr really is set correct (also verified with cyclades manual > > y_30.pdf again). > > The abort is a bit unusual since the cyclades probe is not very invasive. yeah. aehm and if we are with it. Is it really correct that 0xc0000 and 0xd4000 have the same dip settings ? This is the case according to ftp://ftp.cyclades.de/pub/cyclades/cyclom-y/doc/y_30.pdf (english) Though I also tried other addresses as said I hink this might be an error in the table ? > > There is a "Rev 5" oder 5.0 on the card. > > I think mine is much older (model 8Yb). Everything interesting I can find on the card: CYCLOM-8Yo Rev 5.00 (c) 1995 Cyclades Corporation 25 Mhz FOX 2x CL-CD1400-10PC-G, 48360-208BC, 9535-B CY7C371, -66JC 9537, CYP 119265,+, U178Y100(*) and on the back: MTI-Y, 94V-0, 0196 and a barcode with CYC0013184 > Did you say that it worked under old versions of FreeBSD? no, I got the card from someone who no longer had a use for it. Don't know which OS he had been running. I only have one 4-STABLE maschine which is up 24-7-365 and another 5.0 notebook. So not much chance to test it in another machine with an older FreeBSD version. OK some more investigation done: a) silly me also tried addresses that where in the middle of orm0: <Option ROMs> at iomem 0xc8000-0xcbfff,0xc0000-0xc7fff on isa0 these where the panics on startup. Cannot reproduce them with addresses outside of this range. Must have missed this the first time I checked free resources :( b) set maddr and dips to 0xd8000 and now getting (see marked areas): e0-0# dd if=/dev/mem bs=1 iseek=0xd8000 count=0x2000 | hd 00000000 00 00 00 00 00 00 00 00 00 00 81 81 00 00 00 00 |................| 00000010 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| * 00000080 00 00 00 00 61 61 61 61 61 61 00 00 41 41 41 41 |....aaaaaa..AAAA| 00000090 40 40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |_at__at_..............| 000000a0 61 61 00 00 61 61 61 61 61 61 81 81 41 41 40 40 |aa..aaaaaa..AA_at__at_| 000000b0 40 40 00 00 40 40 00 00 00 00 00 00 00 00 40 40 |_at__at_.._at__at_........_at__at_| 000000c0 40 40 40 40 00 00 00 00 ff ff ff ff ff ff 00 00 |_at__at__at__at_............| 000000d0 c0 c0 08 08 10 10 18 18 a8 a8 a8 a8 a0 a0 a8 a8 |................| 000000e0 54 54 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |TT..............| 000000f0 00 00 00 00 08 08 08 08 08 08 08 08 00 00 00 00 |................| 00000100 00 00 00 00 00 00 00 00 00 00 81 81 00 00 00 00 |................| 00000110 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| * 00000180 00 00 00 00 61 61 61 61 61 61 00 00 41 41 41 41 |....aaaaaa..AAAA| 00000190 40 40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |_at__at_..............| 000001a0 61 61 00 00 61 61 61 61 61 61 81 81 41 41 40 40 |aa..aaaaaa..AA_at__at_| 000001b0 40 40 00 00 40 40 00 00 00 00 00 00 00 00 40 40 |_at__at_.._at__at_........_at__at_| 000001c0 40 40 40 40 00 00 00 00 ff ff ff ff ff ff 00 00 |_at__at__at__at_............| 000001d0 c0 c0 08 08 10 10 18 18 a8 a8 a8 a8 a0 a0 a8 a8 |................| 000001e0 54 54 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |TT..............| 000001f0 00 00 00 00 08 08 08 08 08 08 08 08 00 00 00 00 |................| 00000200 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| * ::--> 00000400 00 00 00 00 00 00 00 00 22 22 00 00 00 00 00 00 |........""......| 00000410 00 00 00 00 00 00 00 00 00 00 26 26 00 00 00 00 |..........&&....| 00000420 00 00 34 34 00 00 00 00 00 00 00 00 00 00 a0 a0 |..44............| 00000430 00 00 26 26 00 00 00 00 00 00 00 00 00 00 00 00 |..&&............| 00000440 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| * 00000480 46 46 00 00 00 00 00 00 00 00 00 00 00 00 47 47 |FF............GG| ::<-- 00000490 00 00 00 00 00 00 00 00 00 00 00 00 83 83 00 00 |................| 000004a0 34 34 22 22 00 00 00 00 00 00 00 00 00 00 00 00 |44""............| 000004b0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 000004c0 26 00 00 26 00 26 46 00 0e 0e 42 42 00 00 00 00 |&..&.&F...BB....| 000004d0 c0 c0 0b 0b 10 10 18 18 a8 a0 a0 a0 a0 a0 a8 a8 |................| 000004e0 54 54 00 00 41 41 06 3e 04 84 08 08 01 01 89 81 |TT..AA.>........| 000004f0 41 41 41 41 00 00 38 18 01 19 02 22 ff ff bd bc |AAAA..8...."....| ::--> 00000500 00 00 00 00 00 00 00 00 22 22 00 00 00 00 00 00 |........""......| 00000510 00 00 00 00 00 00 00 00 00 00 26 26 00 00 00 00 |..........&&....| 00000520 00 00 34 34 00 00 00 00 00 00 00 00 00 00 a0 a0 |..44............| 00000530 00 00 26 26 00 00 00 00 00 00 00 00 00 00 00 00 |..&&............| 00000540 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| * 00000580 46 46 00 00 00 00 00 00 00 00 00 00 00 00 47 47 |FF............GG| ::<-- 00000590 00 00 00 00 00 00 00 00 00 00 00 00 82 82 00 00 |................| 000005a0 34 34 22 22 00 00 00 00 00 00 00 00 00 00 00 00 |44""............| 000005b0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 000005c0 00 00 00 00 00 00 00 00 10 10 44 44 00 00 00 00 |..........DD....| 000005d0 c0 c0 09 09 10 10 18 18 a0 a0 a0 a0 a0 a0 a8 a8 |................| 000005e0 54 54 00 00 41 41 35 2c 04 24 08 08 81 a1 81 81 |TT..AA5,.$......| 000005f0 41 41 41 41 18 98 08 18 01 01 0a 02 ff ff 6d 6d |AAAA..........mm| 00000600 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| * 00001c00 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 |................| 8192+0 records in 8192+0 records out * 8192 bytes transferred in 0.169570 secs (48310 bytes/sec) 00001d00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| * 00001e00 79 79 79 79 79 79 79 79 79 79 79 79 79 79 79 79 |yyyyyyyyyyyyyyyy| * 00001f00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| * 00002000 So the first signature seems to be at cy_chip_offset 0x400 but as if ((firmware_version & 0xf0) == 0x40) { doesn't match the first 200 we also break out of the outer loop and will not try offset 0x400 : /* * Anything in the 0x40-0x4F range is fine. * If one CD1400 is bad then we don't support higher * numbered good ones on this board. */ TRACE if ((firmware_version & 0xf0) != 0x40) { TRACE break; } so I tried setting hint.cy.0.maddr to 0xd8400 and (including some debugging lines - stripped most) got: ... pmtimer0 on isa0 return (cyu) = 1 cy0 at iomem 0xd8400-0xda3ff irq 11 on isa0 return (cyu) = 1 cy0: driver is using old-style compatibility shims ... Looks like I got at least four of the eight ports now: bz_at_e0-0:~> ls -l /dev/ttyc0* crw------- 1 root wheel 48, 0 Jul 19 09:08 /dev/ttyc00 crw------- 1 root wheel 48, 1 Jul 19 09:08 /dev/ttyc01 crw------- 1 root wheel 48, 2 Jul 19 09:08 /dev/ttyc02 crw------- 1 root wheel 48, 3 Jul 19 09:08 /dev/ttyc03 So any more ideas ? Any ideas on how to get the second four ? Looks like I need to change the static int cy_chip_offset[] = { 0x0000, 0x0400, 0x0800, 0x0c00, 0x0200, 0x0600, 0x0a00, 0x0e00, }; to have a 0x0100 at second but I do not like patching drivers if I can avoid. -- Greetings Bjoern A. Zeeb bzeeb at Zabbadoz dot NeT 56 69 73 69 74 http://www.zabbadoz.net/Received on Sat Jul 19 2003 - 00:26:16 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:37:15 UTC