Date: Thu, 4 Dec 1997 13:09:51 -0800 From: "Glenn Dicus" <gdicus@nomadix.com> To: "Mobile FreeBSD" <mobile@freebsd.org> Subject: PCMCIA and ElanSC400 Message-ID: <199712042107.NAA20323@mail.nomadix.com>
next in thread | raw e-mail | index | archive | help
: > I'm keeping this cc'd to the list; there's every chance that this
: > information is useful to other people as well.
: >
: > > Sorry, you have to excuse me. I have been trying to get the PC Card
on the
: > > ElanSC400 Evaluation Board for 3 weeks 24-7 with no luck what so
ever. The
: > > problems have been to many to name.
:
: In the future, try emailing the mobile list. We're here to help, or at
: least bitch about the hardware. :)
:
: > > However, my present situation is that
: > > FreeBSD does not recognize the second slot when a card is inserted.
:
: Sounds like a VLSI board. They do things a non-standard way, and
: it's possible the VLSI work-around code doesn't work on all the
: hardware.
Actually it's an AMD ElanSC400 Evaluation Board. The ElanSC400
microcontroller has the following integrated capabilities:
486 CPU Core
82365 register set compatible Dual PC Card (PCMCIA Vers2.1) which
is compliant with ExCA.
DRAM controller
ISA-VL Bus Controller
LCD Graphics Controller
Dual Interrupt Controllers 8259
Dual DMA Controllers 8237
EPP Parallel Port
Serial UART 16550
IrDA Port
Matrix Keyboard
On the evaluation board are all the interfacing which include two ISA slots
and two PC Card slots. Becuase some of the functionality of the
microcontroller is multiplexed only a subset of functions can be used at
the same time. For evaluation purposes AMD include the Super I/O chip so
that the microcontroller could be evaluated as a whole.
: > The
: > > cards that I have tried have been Eagle Technology's NE2000, Fujitsu
: > > MBH10302, 3Com 3C3589C/D.
:
: The 3COM card should *always* work. If it doesn't, then you've got
: setup/hardware problems.
: > > Also, a reoccurring problem has been pccardc's inability to read the
CIS,
: > > returning "no entry in database for "null" ("null")".
: >
: > It sounds like this is indicative of a pretty major problem; if pccardc
: > can't read the CIS information, pccardd (which uses the same code) is
: > not going to be able to determine what the card is.
The cards are detected and identified using Windows 95.
: Right, something is *really* bogus. Did this ever work? What kind of
: changes are you making to the FreeBSD kernel code? Did you make any
: changes? We'd like to help, but need more information than you're
: giving us.
In order to use an ISA slot, with an interrupt, I had to configure the CSC
register for the ElanSC400 to map PIRQ4 to IRQ9. I did this in
"init_main.c". Also, ElanSC400's PC Card controller has two modes of
operation (standard and enhanced).
In standard mode:
There are a total of six memory windows. Two are fixed (one for each
socket) and the remaining four can "float"(can be configured for Socket A
or B on a window-by-window basis
Nominal 8 MHz cycle speed only
No DMA initiators
In enhanced mode:
There are a total of ten memory windows. Five are fixed for each socket
Nominal 8 MHz cycle speed or nominal 33 MHz
PC Cards can be configured as DMA initiators in this mode
So, I had to set some bits in a register to enable enhanced mode. My
thinking here was that FreeBSD was expecting fully capable slots when the
OS found a slot. I put the inline assembly in "pcic_configure()"
Still, however, FreeBSD does not detect slot 1 and a resource allocation
failure occurs for slot 0.
thanks
glenn
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199712042107.NAA20323>
