hi all:
i want to use pcmcia network card in my system (wince 5.0). i added the
pcmcia driver from platform buider->catalog. build the NK and download the
image in my hardware.but when i insert the pcmcia card, wince 5.0 system
told me 'can not find the driver' and require me input the driver path. so i
want to ask you do i need some things to do for pcmcia card .if i need to
write a new driver for my pcmcia card.if i must to do this can you give me
some advices.

thanks

Re: pcmcia card in wince 5.0 problem by Remi

Remi
Thu Jan 05 11:39:33 CST 2006

See right above!

"xinchen" <xinchen97@21cn.com> a écrit dans le message de news:
%23kz1ILhEGHA.1180@TK2MSFTNGP09.phx.gbl...
> hi all:
> i want to use pcmcia network card in my system (wince 5.0). i added the
> pcmcia driver from platform buider->catalog. build the NK and download the
> image in my hardware.but when i insert the pcmcia card, wince 5.0 system
> told me 'can not find the driver' and require me input the driver path. so
> i want to ask you do i need some things to do for pcmcia card .if i need
> to write a new driver for my pcmcia card.if i must to do this can you give
> me some advices.
>
> thanks
>



Re: pcmcia card in wince 5.0 problem by David

David
Thu Jan 05 13:56:21 CST 2006

What kinds of PCMCIA card it is? If it is vender specific or Windows CE does
not have driver to support this PCMCIA card, you need write your own PC Card
Driver.

David Liao

"xinchen" <xinchen97@21cn.com> wrote in message
news:%23kz1ILhEGHA.1180@TK2MSFTNGP09.phx.gbl...
> hi all:
> i want to use pcmcia network card in my system (wince 5.0). i added the
> pcmcia driver from platform buider->catalog. build the NK and download the
> image in my hardware.but when i insert the pcmcia card, wince 5.0 system
> told me 'can not find the driver' and require me input the driver path. so
> i want to ask you do i need some things to do for pcmcia card .if i need
> to write a new driver for my pcmcia card.if i must to do this can you give
> me some advices.
>
> thanks
>



Re: pcmcia card in wince 5.0 problem by david

david
Fri Jan 06 05:33:34 CST 2006

Do you know where I can get a PCI PCCARD bridge card supported by WinCE
5.0?

I have tried several, and none of them works properly.

regards

David


Re: pcmcia card in wince 5.0 problem by Rémi

Rémi
Fri Jan 06 09:08:45 CST 2006

See answer in the above thread.

Remi



Re: pcmcia card in wince 5.0 problem by David

David
Fri Jan 06 12:49:45 CST 2006

Windows CE claim support or TI 1225 14XX 15XX pc card bridge.

David Liao

"david" <dajun.chen@gmail.com> wrote in message
news:1136547213.981913.177320@g47g2000cwa.googlegroups.com...
> Do you know where I can get a PCI PCCARD bridge card supported by WinCE
> 5.0?
>
> I have tried several, and none of them works properly.
>
> regards
>
> David
>



Re: pcmcia card in wince 5.0 problem by david

david
Sun Jan 08 06:26:41 CST 2006

Sure. I thought the same (since WinCE 5.0 claims supporting TI family).
Unfortunately, it is not the case. At least not all Device IDs of TI
devices listed in the TI????.reg file.

After the DID added to the list, the card is recorgnised. But, no
action observed when a PCMCIA card inserted. It seems to me that no
interrupt was triggered by card insertion, as the TIPCcard driver's IST
failed in receiving (waiting) the waited event (which is set by ISR, I
guess).

David


Re: pcmcia card in wince 5.0 problem by Remi

Remi
Mon Jan 09 04:14:18 CST 2006

David, maybe some debug output could help us to see what happens!
Enable debug zones for pcmcia.dll and other pcc_xxx.dll, insert a PCMCIA
card and look at the output.
You should at least see a change in the output of
CPCCardBusBridge::ThreadRun (in TIPCCARD\pdsocket.cpp), normally refreshed
every 3 seconds.

Remi

> After the DID added to the list, the card is recorgnised. But, no
> action observed when a PCMCIA card inserted. It seems to me that no
> interrupt was triggered by card insertion, as the TIPCcard driver's IST
> failed in receiving (waiting) the waited event (which is set by ISR, I
> guess).
>
> David
>



Re: pcmcia card in wince 5.0 problem by David

David
Mon Jan 09 12:38:12 CST 2006

Are you using CEPC? Is this every old CEPC?
On some old CEPC, BIOS couldn't understand CardBus Bridge at all. They
ignore this device. So, it does not enable Interrupt routing to this PC Card
Bus or configure it wrong.

You may have good luck with newer CEPC.

David Liao.

"david" <dajun.chen@gmail.com> wrote in message
news:1136674670.130610.32800@z14g2000cwz.googlegroups.com...
> Sure. I thought the same (since WinCE 5.0 claims supporting TI family).
> Unfortunately, it is not the case. At least not all Device IDs of TI
> devices listed in the TI????.reg file.
>
> After the DID added to the list, the card is recorgnised. But, no
> action observed when a PCMCIA card inserted. It seems to me that no
> interrupt was triggered by card insertion, as the TIPCcard driver's IST
> failed in receiving (waiting) the waited event (which is set by ISR, I
> guess).
>
> David
>



Re: pcmcia card in wince 5.0 problem by david

david
Tue Jan 10 08:26:52 CST 2006

Hi Remi and David,

Here is the relevant debug trace cought after a pcmcia card inderted to
the pccard socket:

PID:83f99a32 TID:83eecbd6 0x83ee9998: ISA PCCARD: ThreadRun
Intr(nSocket=0) status bCardStatusChange = 0x8, BSocketState = 0xc
PID:83f99a32 TID:83eecbd6 0x83ee9998: CARDBUS: CPcmciaCardSocket
(Socket=204 Index=2) Created
PID:83f99a32 TID:83eecbd6 0x83ee9998: PCCARD: PCMCIA (dwWinIndex=0)
memory window created
PID:83f99a32 TID:83eecbd6 0x83ee9998: PCCARD: PCMCIA (dwWinIndex=1)
memory window created
PID:83f99a32 TID:83eecbd6 0x83ee9998: PCCARD: PCMCIA (dwWinIndex=2)
memory window created
PID:83f99a32 TID:83eecbd6 0x83ee9998: PCCARD: PCMCIA (dwWinIndex=3)
memory window created
PID:83f99a32 TID:83eecbd6 0x83ee9998: PCCARD: PCMCIA (dwWinIndex=4)
memory window created
PID:83f99a32 TID:83eecbd6 0x83ee9998: PCCARD: PCMCIA (dwWinIndex=0)
memory window created
PID:83f99a32 TID:83eecbd6 0x83ee9998: PCCARD: PCMCIA (dwWinIndex=1)
memory window created
PID:83f99a32 TID:83eecbd6 0x83ee9998: PDCardResetSocket: CARD IN SOCKET
NOT RDY AFTER 2000ms
PID:83f99a32 TID:83eecbd6 0x83ee9998:
CPCPcmciaCard::GetConfigureRegisterBase: Can't get PCMCIA register
address. return FAILS
PID:83f99a32 TID:83eecbd6 0x83ee9998: ISA PCCARD: ThreadRun
Intr(nSocket=0) status bCardStatusChange = 0x4, BSocketState = 0xc
PID:83f99a32 TID:83eecbd6 0x83ee9998: ISA PCCARD: ThreadRun
Intr(nSocket=0) status bCardStatusChange = 0x8, BSocketState = 0x0

The CEPC used was a Toshiba Satlellite Pro laptop PC, about a year old.
I checked that the pccard bridge worked fine under XP. The laptop uses
a TI pccard controller, but its device ID is not included in the
original wince 5.0 "pcc_tipccard.reg".

Better than controllers from other verdors, actions were observed after
pccard inserted. But problem is still there.

David

It is


Re: pcmcia card in wince 5.0 problem by Remi

Remi
Tue Jan 10 10:40:49 CST 2006

David,

> The laptop uses a TI pccard controller, but its device ID is not
> included in the original wince 5.0 "pcc_tipccard.reg".


From the trace you show, you are using I82365 not TIPCCARD!!!

If you fix this and have more problems, you should provide a little more
trace (enable every Debug Zone in pcmcia.dll and pcc_tipccard.dll), and
possibly timing indications too.

Remi



Re: pcmcia card in wince 5.0 problem by david

david
Tue Jan 10 11:18:44 CST 2006

Hi Remi,

Thanks for you reply. Here are more debug traces after pcmcia card
inserted with all zones (either 82536, ti,pci and other may relevant):

PID:a3f99b22 TID:83e85b1e 0x83e82800: CardBus: Socket 2 IST
(SockEvent=0,SocketMask=f,ExCA 0=84, 1=0 2=0,3=10,5=c)
PID:a3f99b22 TID:83e85b1e 0x83e82800: CardBus: Socket 2 IST
(SockEvent=0,SocketMask=f,ExCA 0=84, 1=0 2=0,3=10,5=c)
PID:a3f99b22 TID:83e85b1e 0x83e82800: CardBus: Socket 2 IST
(SockEvent=0,SocketMask=f,ExCA 0=84, 1=0 2=0,3=10,5=c)
PID:a3f99b22 TID:83e85b1e 0x83e82800: CardBus: Socket 2 IST
(SockEvent=0,SocketMask=f,ExCA 0=84, 1=0 2=0,3=10,5=c)
PID:a3f99b22 TID:83e85b1e 0x83e82800: CardBus: Socket 2 IST
(SockEvent=0,SocketMask=f,ExCA 0=84, 1=0 2=0,3=10,5=c)
PID:a3f99b22 TID:a3eebfb2 0x83ee8800: ISA PCCARD: ThreadRun
Intr(nSocket=0) status bCardStatusChange = 0x8, BSocketState = 0xc
PID:a3f99b22 TID:a3eebfb2 0x83ee8800: CARDBUS: CPcmciaCardSocket
(Socket=204 Index=2) Created
PID:a3f99b22 TID:a3eebfb2 0x83ee8800: +CPCMSocket::CPCMSocket
PID:a3f99b22 TID:a3eebfb2 0x83ee8800: -CPCMSocket::CPCMSocket
PID:a3f99b22 TID:a3eebfb2 0x83ee8800: PCCARD: PCMCIA (dwWinIndex=0)
memory window created
PID:a3f99b22 TID:a3eebfb2 0x83ee8800: PCCARD: PCMCIA (dwWinIndex=1)
memory window created
PID:a3f99b22 TID:a3eebfb2 0x83ee8800: PCCARD: PCMCIA (dwWinIndex=2)
memory window created
PID:a3f99b22 TID:a3eebfb2 0x83ee8800: PCCARD: PCMCIA (dwWinIndex=3)
memory window created
PID:a3f99b22 TID:a3eebfb2 0x83ee8800: PCCARD: PCMCIA (dwWinIndex=4)
memory window created
PID:a3f99b22 TID:a3eebfb2 0x83ee8800: PCCARD: PCMCIA (dwWinIndex=0)
memory window created
PID:a3f99b22 TID:a3eebfb2 0x83ee8800: PCCARD: PCMCIA (dwWinIndex=1)
memory window created
PID:a3f99b22 TID:a3eebfb2 0x83ee8800: +CPCMSocket::GetSocket()
PID:a3f99b22 TID:a3eebfb2 0x83ee8800: -CPCMSocket::GetSocket():
dwEventMask: 81b1 dwEventChanged: 0 dwEventStatus: b0
PID:a3f99b22 TID:a3eebfb2 0x83ee8800: CardBus.DLL : CallBackFrom Socket
with eventchange=0x80 eventstatus=0xb0,dwInterfaceType=0x1
PID:a3f99b22 TID:a3eebfb2 0x83ee8800: +CPCMSocket::GetSocket()
PID:a3f99b22 TID:a3eebfb2 0x83ee8800: -CPCMSocket::GetSocket():
dwEventMask: 81b1 dwEventChanged: 0 dwEventStatus: b0
PID:a3f99b22 TID:a3eebfb2 0x83ee8800: CPCPcmciaCard::Init Function=0
bRoot=1

The CE hang after and powers to the pcmcia card were not switch on (I
got leds to check the power states).

Regards

David


Re: pcmcia card in wince 5.0 problem by Remi

Remi
Tue Jan 10 12:42:31 CST 2006

David,
I am afraid you did not understand what I tried to tell you: if your adapter
is based on TI chip, you should add the "TI PC Card" Catalog feature to your
OS Design and *only* this PCCARD feature. You should not add the "I82365"
feature at all.

Provided they have been initialized "enough" by the tipccard driver or the
BIOS (PCI initializations), Texas Instrument chips can also be operated the
old way, i.e. like Intel 82365 chips. That's probably what happens in your
design and the same chip is operated by two drivers in the save time, which
is certainly a source of misfunctionment.

Remi



Re: pcmcia card in wince 5.0 problem by David

David
Tue Jan 10 13:23:03 CST 2006

Make sure do not set BSP_PCCARD_I82365
You should have setting like this
set BSP_PCCARD_I82365=
set BSP_PCCARD_TIPCCARD=1
before making image.

Have you try PCI PC Card (not the one built in) on this machine?

"david" <dajun.chen@gmail.com> wrote in message
news:1136903212.320805.4340@f14g2000cwb.googlegroups.com...
> Hi Remi and David,
>
> Here is the relevant debug trace cought after a pcmcia card inderted to
> the pccard socket:
>
> PID:83f99a32 TID:83eecbd6 0x83ee9998: ISA PCCARD: ThreadRun
> Intr(nSocket=0) status bCardStatusChange = 0x8, BSocketState = 0xc
> PID:83f99a32 TID:83eecbd6 0x83ee9998: CARDBUS: CPcmciaCardSocket
> (Socket=204 Index=2) Created
> PID:83f99a32 TID:83eecbd6 0x83ee9998: PCCARD: PCMCIA (dwWinIndex=0)
> memory window created
> PID:83f99a32 TID:83eecbd6 0x83ee9998: PCCARD: PCMCIA (dwWinIndex=1)
> memory window created
> PID:83f99a32 TID:83eecbd6 0x83ee9998: PCCARD: PCMCIA (dwWinIndex=2)
> memory window created
> PID:83f99a32 TID:83eecbd6 0x83ee9998: PCCARD: PCMCIA (dwWinIndex=3)
> memory window created
> PID:83f99a32 TID:83eecbd6 0x83ee9998: PCCARD: PCMCIA (dwWinIndex=4)
> memory window created
> PID:83f99a32 TID:83eecbd6 0x83ee9998: PCCARD: PCMCIA (dwWinIndex=0)
> memory window created
> PID:83f99a32 TID:83eecbd6 0x83ee9998: PCCARD: PCMCIA (dwWinIndex=1)
> memory window created
> PID:83f99a32 TID:83eecbd6 0x83ee9998: PDCardResetSocket: CARD IN SOCKET
> NOT RDY AFTER 2000ms
> PID:83f99a32 TID:83eecbd6 0x83ee9998:
> CPCPcmciaCard::GetConfigureRegisterBase: Can't get PCMCIA register
> address. return FAILS
> PID:83f99a32 TID:83eecbd6 0x83ee9998: ISA PCCARD: ThreadRun
> Intr(nSocket=0) status bCardStatusChange = 0x4, BSocketState = 0xc
> PID:83f99a32 TID:83eecbd6 0x83ee9998: ISA PCCARD: ThreadRun
> Intr(nSocket=0) status bCardStatusChange = 0x8, BSocketState = 0x0
>
> The CEPC used was a Toshiba Satlellite Pro laptop PC, about a year old.
> I checked that the pccard bridge worked fine under XP. The laptop uses
> a TI pccard controller, but its device ID is not included in the
> original wince 5.0 "pcc_tipccard.reg".
>
> Better than controllers from other verdors, actions were observed after
> pccard inserted. But problem is still there.
>
> David
>
> It is
>



Re: pcmcia card in wince 5.0 problem by david

david
Wed Jan 11 06:11:17 CST 2006

Remi,

Thanks. I82365 was added because TIPCCARD only did not work, also the
TIPCCARD registered (in registry)

PID:83f98d7a TID:83fa1caa 0x83fca800: >>> Loading module
pcc_tipccard.dll at address 0x02510000-0x02523000 (RW data at
0x01EB5000-0x01EB577C)
Loaded symbols for
'C:\WINCE500\PBWORKSPACES\TICEPC\RELDIR\CEPC_X86_DEBUG\PCC_TIPCCARD.DLL'
PID:83f98d7a TID:83fa1caa 0x83fca800: PCMCIA!DeviceConfig+(2)
PID:83f98d7a TID:83fa1caa 0x83fca800: <<< Unloading module
pcc_tipccard.dll at address 0x02510000-0x02523000 (RW data at
0x01EB5000-0x01EB577C)
Unloaded symbols for
'C:\WINCE500\PBWORKSPACES\TICEPC\RELDIR\CEPC_X86_DEBUG\PCC_TIPCCARD.DLL'
PID:83f98d7a TID:83fa1caa 0x83fca800: >>> Loading module
pcc_tipccard.dll at address 0x02510000-0x02523000 (RW data at
0x01EB5000-0x01EB577C)
Loaded symbols for
'C:\WINCE500\PBWORKSPACES\TICEPC\RELDIR\CEPC_X86_DEBUG\PCC_TIPCCARD.DLL'
PID:83f98d7a TID:83fa1caa 0x83fca800: PCMCIA!DeviceConfig+(3)
PID:83f98d7a TID:83fa1caa 0x83fca800: <<< Unloading module
pcc_tipccard.dll at address 0x02510000-0x02523000 (RW data at
0x01EB5000-0x01EB577C)
Unloaded symbols for
'C:\WINCE500\PBWORKSPACES\TICEPC\RELDIR\CEPC_X86_DEBUG\PCC_TIPCCARD.DLL'
PID:83f98d7a TID:83fa1caa 0x83fca800: DEVICE!RegReadActivationValues
RegQueryValueEx(Drivers\BuiltIn\PCI\Instance\PCC_TIPCCARD1\Prefix)
returned 2
PID:83f98d7a TID:83fa1caa 0x83fca800: DEVICE!RegReadActivationValues
RegQueryValueEx(Drivers\BuiltIn\PCI\Instance\PCC_TIPCCARD1\BusPrefix)
returned 2
PID:83f98d7a TID:83fa1caa 0x83fca800: >>> Loading module
pcc_tipccard.dll at address 0x02510000-0x02523000 (RW data at
0x01EB5000-0x01EB577C)
Loaded symbols for
'C:\WINCE500\PBWORKSPACES\TICEPC\RELDIR\CEPC_X86_DEBUG\PCC_TIPCCARD.DLL'
PID:83f98d7a TID:83fa1caa 0x83fca800: Updated eptr->e32_vsize to =
00002000
PID:83f98d7a TID:83fa1caa 0x83fca800: >>> Loading module giisr.dll at
address 0x802F6000-0x802F8000 (RW data at 0x81DB6000-0x81DB6504)
Loaded symbols for
'C:\WINCE500\PBWORKSPACES\TICEPC\RELDIR\CEPC_X86_DEBUG\GIISR.DLL'

As suggested by David Liao, I change NoConfig in platform.reg before
build as:

[HKEY_LOCAL_MACHINE\Drivers\PCCARD\PCMCIA\TEMPLATE\PCMCIA]
"Dll"="pcmcia.dll"
"NoConfig"=dword:0
"IClass"=multi_sz:"{6BEAB08A-8914-42fd-B33F-61968B9AAB32}=PCMCIA
Card Services"

After pcmcia card inserted, the CEPC hang without any debug trace seen
(all pccard related debug zones, starting with "pc" were checked)
except the following:

PID:83f98d7a TID:3e8a0d2 0x83e9d938: CardBus: Socket 0 IST
(SockEvent=6,SocketMask=f,ExCA 0=84, 1=c 2=0,3=10,5=0)
PID:83f98d7a TID:3e8a0d2 0x83e9d938: CardBus: Socket 0 IST
(SockEvent=6,SocketMask=f,ExCA 0=84, 1=c 2=0,3=10,5=0)
PID:83f98d7a TID:3e8a0d2 0x83e9d938: CardBus: Socket 0 IST
(SockEvent=6,SocketMask=f,ExCA 0=84, 1=c 2=0,3=10,5=0)
PID:83f98d7a TID:3e8a0d2 0x83e9d938: CardBus: Socket 0 IST
(SockEvent=6,SocketMask=f,ExCA 0=84, 1=c 2=0,3=10,5=0)
PID:83f98d7a TID:3e8a0d2 0x83e9d938: CardBus: Socket 0 IST
(SockEvent=6,SocketMask=f,ExCA 0=84, 1=c 2=0,3=10,5=0)
PID:83f98d7a TID:3e8a0d2 0x83e9d938: CardBus: Socket 0 IST
(SockEvent=6,SocketMask=f,ExCA 0=84, 1=c 2=0,3=10,5=0)

The above was cought without 82365 enabled.

David:

How where could I check and modify the settings as you suggested?

I was mis led by the CE5.0 as the interlock beteween i82365 and TI card
drivers was removed in CE5.0.

By the way, is there a way in removing items from "OSDesignView" in
CE5.0? I used to do it easily in CE4.2 by simply right-click and
delete.

Regards

the other David


Re: pcmcia card in wince 5.0 problem by david

david
Wed Jan 11 11:03:31 CST 2006

Further to my early message:

It is clear that the interrupt registers of ti-pccard was not setup
properly to catch any card status change (insertion?). I made scan to
ti pccard driver, and found nothing. I guess CE 5.0 assumes its others
job, eg. BIOS. Is it true?. If it is the case, where is the best place
insert setting up code? in CPCMSocket::CPCMSocket(...)?

Regards

the other David


Re: pcmcia card in wince 5.0 problem by David

David
Wed Jan 11 13:41:32 CST 2006

Actually, the PC Card Bridge does catch the the insertion.
PID:83f98d7a TID:3e8a0d2 0x83e9d938: CardBus: Socket 0 IST
(SockEvent=6,SocketMask=f,ExCA 0=84, 1=c 2=0,3=10,5=0)
SockEvent=6 is SPS_CCD1_ | SPS_CCD2_
the interrupt mask is 0xf.. So, interrupt should fired. But, I don't know
why interrupt does not routed from this card to PC PIC. This routing is set
up by BIOS.

Did you try the another type of PC?

If you can turn on debug all zone on PCIBUS during boot, it may help to
identified the problem.

David Liao.

"david" <dajun.chen@gmail.com> wrote in message
news:1136999010.981698.90420@g47g2000cwa.googlegroups.com...
> Further to my early message:
>
> It is clear that the interrupt registers of ti-pccard was not setup
> properly to catch any card status change (insertion?). I made scan to
> ti pccard driver, and found nothing. I guess CE 5.0 assumes its others
> job, eg. BIOS. Is it true?. If it is the case, where is the best place
> insert setting up code? in CPCMSocket::CPCMSocket(...)?
>
> Regards
>
> the other David
>



Re: pcmcia card in wince 5.0 problem by Remi

Remi
Thu Jan 12 02:36:05 CST 2006

I think you should try to debug the initialization of TIPCCARD.
I suggest that you set a breakpoint at CPCCardBusBridge::InitCardBusBridge
(in PCCARD\TIPCCARD\pdsocket.cpp) in order to catch initialization of your
adapter (you should break at image load time) and step to see what's wrong.
Carefully check everything you can (dwi, dpi, etc.) and specially focus on
GetIsrInfo and InstallIsr. Then tell us (how many windows, what is the
interrupt number, etc.)

Remi



Re: pcmcia card in wince 5.0 problem by david

david
Thu Jan 12 02:52:57 CST 2006

Several PCs (desks top with non-ti pccard controller board and laptops
with ti or non-ti controller boards) have be tested. Only a part of
them booted with its pccard controllers recorgnised (after device id
added to the tipcc...reg file). However, no one does anyting in
response to pcmcia card insertion, except the toshiba laptop which hung
upon card insertion (no mouse, but pcmcia ist debug trace went on) .
The toshiba's ti controller was not originally in the .reg file,
although CE5.0 claims supporting TI family.

Would you recommend me any PC+PCCARD controller board or laptops?

By the way, how can I turn on debug all zone on PCIBUS during boot as
you suggested.

Regards

David


Re: pcmcia card in wince 5.0 problem by david

david
Thu Jan 12 11:13:49 CST 2006

Thanks.

To enable status change interrupt, the following code added to
CPCCardBusBridge::InstallIsr(..):

//Setup ExCA Interrupt and General-Control Register to Enable
Status Change routed to PCI for PCMCIA..
WriteExCARegister( 3, ( ReadExCARegister( 3 ) & 0xe0 ) | 0x10 );
//----------------------------------------------------------------------------------------------------------------------------------------------------
//Setup ExCA Card Status-Change Register to enable change detection
on either /CD1 and /CD2.
WriteExCARegister( 5, ReadExCARegister( 5 ) | 0x08 );
//Setup ExCA Global Control Register to enable 82365 compatible
interrupts.
WriteExCARegister( 0x1e, ReadExCARegister( 0x1e ) | 0x1e );
//-----------------------------------------------------------------------------------------------------------------------------------------------------
// Default bridge setup. Do not route the function (Card) interrupt

SetBridgeControl( 0x80, FALSE );

Unfortunately, no interrupt was observed after pcmcia card inserted.
Here are relevent debug traces:

Loaded symbols for
'C:\WINCE500\PBWORKSPACES\TICEPC\RELDIR\CEPC_X86_DEBUG\PCC_TIPCCARD.DLL'
PID:43f98a4a TID:43fa1a0a 0x83fca800: TI : DLL_PROCESS_ATTACH
PID:43f98a4a TID:43fa1a0a 0x83fca800: Updated eptr->e32_vsize to =
00002000
PID:43f98a4a TID:43fa1a0a 0x83fca800: >>> Loading module giisr.dll at
address 0x802F6000-0x802F8000 (RW data at 0x81DB6000-0x81DB6504)
Loaded symbols for
'C:\WINCE500\PBWORKSPACES\TICEPC\RELDIR\CEPC_X86_DEBUG\GIISR.DLL'
PID:43f98a4a TID:43fa1a0a 0x83fca800: CardBus: ConfigPort - Installed
ISR Handler
PID:43f98a4a TID:43fa1a0a 0x83fca800: CardBus:InstallIsr
(irq=ffffffff),SysIntr=(0)
PID:43f98a4a TID:43fa1a0a 0x83fca800: PCMCIA:IsValidExCASig Valid
CHIP_REVISION detected = 0x84
PID:43f98a4a TID:43fa1a0a 0x83fca800: Bus/Device/Function = 2/6/0
PID:43f98a4a TID:43fa1a0a 0x83fca800: ---------------------PCI /
CardBus Bridge-------------------------------------------
PID:43f98a4a TID:43fa1a0a 0x83fca800: VendorID = 0x104C, DeviceID =
0xAC50, Command = 0x0167, Status = 0x0210
PID:43f98a4a TID:43fa1a0a 0x83fca800: RevisionID = 0x02, ProgIf =
0x00, SubClass = 0x07, BaseClass = 0x06
PID:43f98a4a TID:43fa1a0a 0x83fca800: CacheLineSize = 0x00,
LatencyTimer = 0x40, HeaderType = 0x02, BIST = 0x00
PID:43f98a4a TID:43fa1a0a 0x83fca800: BaseAddress (CardBus
Socket/ExCA Base Address Register) = 0xD0001000
PID:43f98a4a TID:43fa1a0a 0x83fca800: CapabilitiesPtr = 0xA0,
Reserved2 = 0x00, SecondaryStatus = 0xFFFF
PID:43f98a4a TID:43fa1a0a 0x83fca800: PrimaryBusNumber = 2,
CardbusBusNumber = 3
PID:43f98a4a TID:43fa1a0a 0x83fca800: SubordinateBusNumber = 3,
CardbusLatencyTimer = 64
PID:43f98a4a TID:43fa1a0a 0x83fca800: MemoryBase0 = 0xFFFFF000,
MemoryLimit0 = 0x00000000
PID:43f98a4a TID:43fa1a0a 0x83fca800: MemoryBase1 = 0xFFFFF000,
MemoryLimit1 = 0x00000000
PID:43f98a4a TID:43fa1a0a 0x83fca800: IOBase0_LO = 0xFFFC, IOBase0_HI
= 0xFFFF
PID:43f98a4a TID:43fa1a0a 0x83fca800: IOLimit0_LO = 0x0000,
IOLimit0_HI = 0x0000
PID:43f98a4a TID:43fa1a0a 0x83fca800: IOBase1_LO = 0xFFFC, IOBase1_HI
= 0xFFFF
PID:43f98a4a TID:43fa1a0a 0x83fca800: IOLimit1_LO = 0x0000,
IOLimit1_HI = 0x0000
PID:43f98a4a TID:43fa1a0a 0x83fca800: InterruptLine = 0xFF,
InterruptPin = 0x01, BridgeControl = 0x00C0
PID:43f98a4a TID:43fa1a0a 0x83fca800: SubVendorID = 0x1179,
SubSystemID = 0xFF10
PID:43f98a4a TID:43fa1a0a 0x83fca800: LegactyBaseAddress = 0x000003E1
PID:43f98a4a TID:43fa1a0a 0x83fca800: SystemControl = 0x08449060
PID:43f98a4a TID:43fa1a0a 0x83fca800: DeviceControl = 0x46
PID:43f98a4a TID:43fa1a0a 0x83fca800: Diagnostic = 0x60
PID:43f98a4a TID:43fa1a0a 0x83fca800:
-------------------------------------------------------------------------------


PID:43f98a4a TID:e3e8df96 0x83ea5800: CardBus: Socket 0 IST
(SockEvent=0,SocketMask=f,ExCA 0=84, 1=0 2=0,3=10,5=8,1e=e)
PID:43f98a4a TID:e3e8df96 0x83ea5800: CardBus: Socket 0 IST
(SockEvent=0,SocketMask=f,ExCA 0=84, 1=0 2=0,3=10,5=8,1e=e)
PID:43f98a4a TID:e3e8df96 0x83ea5800: CardBus: Socket 0 IST
(SockEvent=0,SocketMask=f,ExCA 0=84, 1=0 2=0,3=10,5=8,1e=e)
PID:43f98a4a TID:e3e8df96 0x83ea5800: CardBus: Socket 0 IST
(SockEvent=0,SocketMask=f,ExCA 0=84, 1=0 2=0,3=10,5=8,1e=e)

Where is the entry point if a card status change interrupt fired?

David


Re: pcmcia card in wince 5.0 problem by David

David
Thu Jan 12 13:07:30 CST 2006

Did you claim non of PC work with external PCI TI14XX or PCI TI15XX ?

You do have following environments variable set, did you?

set BSP_PCCARD_I82365=
set BSP_NOPCCARD=
set BSP_PCCARD_TIPCCARD=1

The recognition of PC Card bridge is by VID/PID in registry. You can
manually change platform.reg to at those VID/PID in. But, the big question
will be does those card is compatible with TI Card or not? You have to take
look at onboard chip to figure it out.

David Liao.

"david" <dajun.chen@gmail.com> wrote in message
news:1137055977.933580.322600@g49g2000cwa.googlegroups.com...
> Several PCs (desks top with non-ti pccard controller board and laptops
> with ti or non-ti controller boards) have be tested. Only a part of
> them booted with its pccard controllers recorgnised (after device id
> added to the tipcc...reg file). However, no one does anyting in
> response to pcmcia card insertion, except the toshiba laptop which hung
> upon card insertion (no mouse, but pcmcia ist debug trace went on) .
> The toshiba's ti controller was not originally in the .reg file,
> although CE5.0 claims supporting TI family.
>
> Would you recommend me any PC+PCCARD controller board or laptops?
>
> By the way, how can I turn on debug all zone on PCIBUS during boot as
> you suggested.
>
> Regards
>
> David
>



Re: pcmcia card in wince 5.0 problem by David

David
Thu Jan 12 13:10:08 CST 2006

I don't think you can enable the client driver before pc card is configured
to IO Card(Power on is memory only card).
The card detection routine is located at file
public\common\oak\drivers\pccard\TIPCCard\PDSocket.cpp
the function named as CPCCardBusBridge::ThreadRun

David Liao.

"david" <dajun.chen@gmail.com> wrote in message
news:1137086029.848567.77120@g43g2000cwa.googlegroups.com...
> Thanks.
>
> To enable status change interrupt, the following code added to
> CPCCardBusBridge::InstallIsr(..):
>
> //Setup ExCA Interrupt and General-Control Register to Enable
> Status Change routed to PCI for PCMCIA..
> WriteExCARegister( 3, ( ReadExCARegister( 3 ) & 0xe0 ) | 0x10 );
> //----------------------------------------------------------------------------------------------------------------------------------------------------
> //Setup ExCA Card Status-Change Register to enable change detection
> on either /CD1 and /CD2.
> WriteExCARegister( 5, ReadExCARegister( 5 ) | 0x08 );
> //Setup ExCA Global Control Register to enable 82365 compatible
> interrupts.
> WriteExCARegister( 0x1e, ReadExCARegister( 0x1e ) | 0x1e );
> //-----------------------------------------------------------------------------------------------------------------------------------------------------
> // Default bridge setup. Do not route the function (Card) interrupt
>
> SetBridgeControl( 0x80, FALSE );
>
> Unfortunately, no interrupt was observed after pcmcia card inserted.
> Here are relevent debug traces:
>
> Loaded symbols for
> 'C:\WINCE500\PBWORKSPACES\TICEPC\RELDIR\CEPC_X86_DEBUG\PCC_TIPCCARD.DLL'
> PID:43f98a4a TID:43fa1a0a 0x83fca800: TI : DLL_PROCESS_ATTACH
> PID:43f98a4a TID:43fa1a0a 0x83fca800: Updated eptr->e32_vsize to =
> 00002000
> PID:43f98a4a TID:43fa1a0a 0x83fca800: >>> Loading module giisr.dll at
> address 0x802F6000-0x802F8000 (RW data at 0x81DB6000-0x81DB6504)
> Loaded symbols for
> 'C:\WINCE500\PBWORKSPACES\TICEPC\RELDIR\CEPC_X86_DEBUG\GIISR.DLL'
> PID:43f98a4a TID:43fa1a0a 0x83fca800: CardBus: ConfigPort - Installed
> ISR Handler
> PID:43f98a4a TID:43fa1a0a 0x83fca800: CardBus:InstallIsr
> (irq=ffffffff),SysIntr=(0)
> PID:43f98a4a TID:43fa1a0a 0x83fca800: PCMCIA:IsValidExCASig Valid
> CHIP_REVISION detected = 0x84
> PID:43f98a4a TID:43fa1a0a 0x83fca800: Bus/Device/Function = 2/6/0
> PID:43f98a4a TID:43fa1a0a 0x83fca800: ---------------------PCI /
> CardBus Bridge-------------------------------------------
> PID:43f98a4a TID:43fa1a0a 0x83fca800: VendorID = 0x104C, DeviceID =
> 0xAC50, Command = 0x0167, Status = 0x0210
> PID:43f98a4a TID:43fa1a0a 0x83fca800: RevisionID = 0x02, ProgIf =
> 0x00, SubClass = 0x07, BaseClass = 0x06
> PID:43f98a4a TID:43fa1a0a 0x83fca800: CacheLineSize = 0x00,
> LatencyTimer = 0x40, HeaderType = 0x02, BIST = 0x00
> PID:43f98a4a TID:43fa1a0a 0x83fca800: BaseAddress (CardBus
> Socket/ExCA Base Address Register) = 0xD0001000
> PID:43f98a4a TID:43fa1a0a 0x83fca800: CapabilitiesPtr = 0xA0,
> Reserved2 = 0x00, SecondaryStatus = 0xFFFF
> PID:43f98a4a TID:43fa1a0a 0x83fca800: PrimaryBusNumber = 2,
> CardbusBusNumber = 3
> PID:43f98a4a TID:43fa1a0a 0x83fca800: SubordinateBusNumber = 3,
> CardbusLatencyTimer = 64
> PID:43f98a4a TID:43fa1a0a 0x83fca800: MemoryBase0 = 0xFFFFF000,
> MemoryLimit0 = 0x00000000
> PID:43f98a4a TID:43fa1a0a 0x83fca800: MemoryBase1 = 0xFFFFF000,
> MemoryLimit1 = 0x00000000
> PID:43f98a4a TID:43fa1a0a 0x83fca800: IOBase0_LO = 0xFFFC, IOBase0_HI
> = 0xFFFF
> PID:43f98a4a TID:43fa1a0a 0x83fca800: IOLimit0_LO = 0x0000,
> IOLimit0_HI = 0x0000
> PID:43f98a4a TID:43fa1a0a 0x83fca800: IOBase1_LO = 0xFFFC, IOBase1_HI
> = 0xFFFF
> PID:43f98a4a TID:43fa1a0a 0x83fca800: IOLimit1_LO = 0x0000,
> IOLimit1_HI = 0x0000
> PID:43f98a4a TID:43fa1a0a 0x83fca800: InterruptLine = 0xFF,
> InterruptPin = 0x01, BridgeControl = 0x00C0
> PID:43f98a4a TID:43fa1a0a 0x83fca800: SubVendorID = 0x1179,
> SubSystemID = 0xFF10
> PID:43f98a4a TID:43fa1a0a 0x83fca800: LegactyBaseAddress = 0x000003E1
> PID:43f98a4a TID:43fa1a0a 0x83fca800: SystemControl = 0x08449060
> PID:43f98a4a TID:43fa1a0a 0x83fca800: DeviceControl = 0x46
> PID:43f98a4a TID:43fa1a0a 0x83fca800: Diagnostic = 0x60
> PID:43f98a4a TID:43fa1a0a 0x83fca800:
> -------------------------------------------------------------------------------
>
>
> PID:43f98a4a TID:e3e8df96 0x83ea5800: CardBus: Socket 0 IST
> (SockEvent=0,SocketMask=f,ExCA 0=84, 1=0 2=0,3=10,5=8,1e=e)
> PID:43f98a4a TID:e3e8df96 0x83ea5800: CardBus: Socket 0 IST
> (SockEvent=0,SocketMask=f,ExCA 0=84, 1=0 2=0,3=10,5=8,1e=e)
> PID:43f98a4a TID:e3e8df96 0x83ea5800: CardBus: Socket 0 IST
> (SockEvent=0,SocketMask=f,ExCA 0=84, 1=0 2=0,3=10,5=8,1e=e)
> PID:43f98a4a TID:e3e8df96 0x83ea5800: CardBus: Socket 0 IST
> (SockEvent=0,SocketMask=f,ExCA 0=84, 1=0 2=0,3=10,5=8,1e=e)
>
> Where is the entry point if a card status change interrupt fired?
>
> David
>



Re: pcmcia card in wince 5.0 problem by david

david
Mon Jan 16 02:19:25 CST 2006

I've not even seen the power to the pcmcia card was ever switched on. I
guess an interrupt should be triggered soon after the card inserted. If
yes, where is the extry point in the pccard driver's ISR (or IST)? I
want to insert a break point there and then follow the card
initialization process.

david


Re: pcmcia card in wince 5.0 problem by David

David
Mon Jan 16 12:45:51 CST 2006

Yes. I answered in previous email.
the IST is locate at public\common\oak\drivers\pccard\TIPCCard\PDSocket.cpp
the function named as CPCCardBusBridge::ThreadRun if you are using TIPCCARD

David Liao
"david" <dajun.chen@gmail.com> wrote in message
news:1137399565.481459.63530@g14g2000cwa.googlegroups.com...
> I've not even seen the power to the pcmcia card was ever switched on. I
> guess an interrupt should be triggered soon after the card inserted. If
> yes, where is the extry point in the pccard driver's ISR (or IST)? I
> want to insert a break point there and then follow the card
> initialization process.
>
> david
>



Re: pcmcia card in wince 5.0 problem by david

david
Tue Jan 17 10:42:31 CST 2006

I've set a break point in the function to watch if any event received,
howver never successful.

Regards

David


Re: pcmcia card in wince 5.0 problem by david

david
Thu Jan 19 14:44:31 CST 2006

After change to an HP pc, things get lots more promising.

thanks anyway

david