AT91RM9200 CF Ambicom WL1100C issue

Mathieu Deschamps mathieu.deschamps at com2gether.net
Mon Feb 6 11:33:59 EST 2006


Hi ,

I'am in getting my Wifi card to work on 2.6.14 with pcmcia-cs 3.2.7. Theses 
16-bits cards uses orinoco_cs to work, but I'am stuck on a prior issue.
I wonder if somebody ever make it worked...

I load properly pcmcia_core,pcmcia,at91_cf,orinoco and orinoco_cs, with
my wifi card in. I have hotplug installed and plug/unplug CF is detected by my
at91_cf socket driver.  

In short that's famous:
	kern.debug kernel: ds: invalid CIS or invalid resources
leading to :  
	cardmgr[1866]: could not adjust resource: IO ports 0xc00-0xcff
	cardmgr[1866]: could not adjust resource: IO ports 0xc00-0xcff
	cardmgr[1866]: could not adjust resource: IO ports 0x100-0x4ff
	cardmgr[1866]: could not adjust resource: memory 0x50800000-0x7fffffff
	cardmgr[1866]: could not adjust resource: IO ports 0x1000-0x17ff
	cardmgr[1866]: could not adjust resource: IO ports 0xa00-0xaff
	cardmgr[1866]: socket 0: Anonymous Memory
	cardmgr[1866]: executing: 'modprobe memory_cs'

I got my wifi card recognized as an anonymous Memory ! below some other 
inherent displays, left blank or default :

#cardctl ident 0
  no product info available
# cardctl info
PRODID_1=""
PRODID_2=""
PRODID_3=""
PRODID_4=""
MANFID=0000,0000		(no manufacuter id, that's bad)
FUNCID=255			(it should be 6 for network I believe)
# cardctl config
Socket 0:
  Vcc 3.3V  Vpp1 3.3V  Vpp2 3.3V

# cat /etc/network/pcmcia
# Defaults for pcmcia (sourced by /etc/init.d/S30pcmcia.sh)
PCIC=at91_cf
PCIC_OPTS=
CORE_OPTS=pc_debug=2
DS_OPTS=
CARDMGR_OPTS=-vd
SCHEME=


Just basic things are done. It looks like a bad /etc/pcmcia/config.opts but 
I can't find what. Actually I've specified theses settings :

=========================
include port 0x100-0x4ff, port 0xc00-0xcff, port 0xc00-0xcff
include memory 0x50000000-0x7fffffff

# High port numbers do not always work...
include port 0x1000-0x17ff

# Extra port range for IBM Token Ring
include port 0xa00-0xaff

# Resources we should not use, even if they appear to be available
# Irq exclusions
exclude irq 1
exclude irq 4
exclude irq 7

#----------------------------------------------------------------------
# Options for WaveLAN/IEEE driver (ad-hoc mode)...
module "orinoco_cs" opts "port_type=3 channel=1 station_name=Sa-1"
===================================

I don't know what to do more to track down the problem, I've collected
as much info I could (please cf below). I'am now at thinking it could be 
needing a CIS override, but I dunno if this would change the situation.

Please give me some pointers asap, thanks.


Best Regards,

Mathieu Deschamps

 


================== FuLL debug /var/log/messages ===========
Feb  6 16:23:48 zephyr-B kern.debug kernel: at91_cf: At91_cf starting
Feb  6 16:23:48 zephyr-B kern.debug kernel: at91_cf: Going to set_drvdata !
Feb  6 16:23:48 zephyr-B kern.debug kernel: at91_cf: Probe starting
Feb  6 16:23:48 zephyr-B kern.debug kernel: at91_cf: Requesting IRQ
Feb  6 16:23:48 zephyr-B kern.debug kernel: at91_cf: Remapping : 
socket.io_offset with  50800000
Feb  6 16:23:48 zephyr-B kern.info kernel: at91_cf: irqs det #109, io #58
Feb  6 16:23:48 zephyr-B kern.debug kernel: at91_cf: Registering socket
Feb  6 16:23:48 zephyr-B kern.debug kernel: cs: : 
pcmcia_register_socket(0xbf031e34)
Feb  6 16:23:48 zephyr-B kern.debug kernel: at91_cf: Vcc 0, io_irq 0, flags 
0000 csc 0080
Feb  6 16:23:48 zephyr-B kern.debug kernel: at91_cf: Vcc 33, io_irq 0, flags 
0000 csc 0080
Feb  6 16:23:48 zephyr-B kern.debug kernel: at91_cf: Vcc 33, io_irq 0, flags 
0240 csc 0080
Feb  6 16:23:48 zephyr-B kern.debug kernel: at91_cf: Vcc 33, io_irq 0, flags 
0200 csc 0080
Feb  6 16:23:49 zephyr-B kern.debug kernel: cs: pcmcia_socket0: 
send_event(event 4, pri 0, callback 0xbf02fc2c)
Feb  6 16:23:49 zephyr-B kern.debug kernel: ds: ds_event(0x000004, 0, 
0xc03ccc00)
Feb  6 16:23:49 zephyr-B kern.debug kernel: ds: invalid CIS or invalid 
resources (#tuples=0,chains?=0)
Feb  6 16:23:49 zephyr-B kern.debug kernel: orinoco 0.15rc2 (David Gibson 
<hermes at gibson.dropbear.id.au>, Pavel Roskin <proski at gnu.org>, et al)
Feb  6 16:23:50 zephyr-B kern.debug kernel: orinoco_cs 0.15rc2 (David Gibson 
<hermes at gibson.dropbear.id.au>, Pavel Roskin <proski at gnu.org>, et al)
Feb  6 16:23:52 zephyr-B kern.debug kernel: ds: ds_open(socket 0)
Feb  6 16:23:52 zephyr-B kern.info kernel: pcmcia: Detected deprecated PCMCIA 
ioctl usage.
Feb  6 16:23:52 zephyr-B kern.info kernel: pcmcia: This interface will soon be 
removed from the kernel; please expect breakage unless you upgrade to new 
tools.
Feb  6 16:23:52 zephyr-B kern.info kernel: pcmcia: see 
http://www.kernel.org/pub/linux/utils/kernel/pcmcia/pcmcia.html for details.
Feb  6 16:23:52 zephyr-B kern.debug kernel: ds: ds_open(socket 1)
Feb  6 16:23:52 zephyr-B kern.debug kernel: ds: ds_open(socket 1)
Feb  6 16:23:52 zephyr-B kern.info cardmgr[1866]: watching 1 socket
Feb  6 16:23:52 zephyr-B kern.debug kernel: ds: ds_ioctl(socket 0, 0xc0186402, 
0x38588)
Feb  6 16:23:52 zephyr-B kern.debug kernel: ds: ds_ioctl: ret = 21
Feb  6 16:23:52 zephyr-B kern.warn cardmgr[1866]: could not adjust resource: 
IO ports 0xc00-0xcff: Function not implemented
Feb  6 16:23:52 zephyr-B kern.debug kernel: ds: ds_ioctl(socket 0, 0xc0186402, 
0x38568)
Feb  6 16:23:52 zephyr-B kern.debug kernel: ds: ds_ioctl: ret = 21
Feb  6 16:23:52 zephyr-B kern.warn cardmgr[1866]: could not adjust resource: 
IO ports 0xc00-0xcff: Function not implemented
Feb  6 16:23:52 zephyr-B kern.debug kernel: ds: ds_ioctl(socket 0, 0xc0186402, 
0x38478)
Feb  6 16:23:52 zephyr-B kern.debug kernel: ds: ds_ioctl: ret = 21
Feb  6 16:23:52 zephyr-B kern.warn cardmgr[1866]: could not adjust resource: 
IO ports 0x100-0x4ff: Function not implemented
Feb  6 16:23:52 zephyr-B kern.debug kernel: ds: ds_ioctl(socket 0, 0xc0186402, 
0x385a8)
Feb  6 16:23:52 zephyr-B kern.debug kernel: ds: ds_ioctl: ret = 21
Feb  6 16:23:52 zephyr-B kern.warn cardmgr[1866]: could not adjust resource: 
memory 0x50800000-0x7fffffff: Function not implemented
Feb  6 16:23:52 zephyr-B kern.debug kernel: ds: ds_ioctl(socket 0, 0xc0186402, 
0x385c8)
Feb  6 16:23:52 zephyr-B kern.debug kernel: ds: ds_ioctl: ret = 21
Feb  6 16:23:52 zephyr-B kern.warn cardmgr[1866]: could not adjust resource: 
IO ports 0x1000-0x17ff: Function not implemented
Feb  6 16:23:52 zephyr-B kern.debug kernel: ds: ds_ioctl(socket 0, 0xc0186402, 
0x385e8)
Feb  6 16:23:52 zephyr-B kern.debug kernel: ds: ds_ioctl: ret = 21
Feb  6 16:23:52 zephyr-B kern.warn cardmgr[1866]: could not adjust resource: 
IO ports 0xa00-0xaff: Function not implemented
Feb  6 16:23:52 zephyr-B kern.debug kernel: ds: ds_ioctl(socket 0, 0xc0186402, 
0x38608)
Feb  6 16:23:52 zephyr-B kern.debug kernel: ds: ds_ioctl(socket 0, 0xc0186402, 
0x38628)
Feb  6 16:23:52 zephyr-B kern.debug kernel: ds: ds_ioctl(socket 0, 0xc0186402, 
0x38648)
Feb  6 16:23:52 zephyr-B kern.info cardmgr[1867]: starting, version is 3.2.7
Feb  6 16:23:52 zephyr-B kern.debug kernel: ds: ds_poll(socket 0)
Feb  6 16:23:52 zephyr-B kern.debug kernel: ds: ds_read(socket 0)
Feb  6 16:23:52 zephyr-B kern.info cardmgr[1867]: initializing socket 0
Feb  6 16:23:52 zephyr-B kern.debug kernel: ds: ds_ioctl(socket 0, 0x8004640b, 
0xbea2d494)
Feb  6 16:23:52 zephyr-B kern.debug kernel: ds: ds_ioctl(socket 0, 0xc00c6409, 
0xbea2da5c)
Feb  6 16:23:52 zephyr-B kern.info cardmgr[1867]: socket 0: Anonymous Memory
Feb  6 16:23:52 zephyr-B kern.info cardmgr[1867]: executing: 'modprobe 
memory_cs'
Feb  6 16:23:52 zephyr-B kern.debug kernel: ds: ds_ioctl(socket 0, 0xc0206410, 
0xbea2da5c)
Feb  6 16:23:52 zephyr-B kern.warn kernel: 2.6. kernels use pcmciamtd instead 
of memory_cs.c and do not require special
Feb  6 16:23:52 zephyr-B kern.warn kernel: MTD handling any more.
Feb  6 16:23:52 zephyr-B kern.debug kernel: ds: ds_ioctl(socket 0, 0xc0206410, 
0xbea2da5c)
Feb  6 16:23:52 zephyr-B kern.info cardmgr[1867]: + FATAL: Module memory_cs 
not found.
Feb  6 16:23:52 zephyr-B kern.notice cardmgr[1867]: modprobe exited with 
status 1
Feb  6 16:23:52 zephyr-B kern.notice cardmgr[1867]: module 
/lib/modules/2.6.14/pcmcia/memory_cs.o not available
Feb  6 16:23:52 zephyr-B kern.err cardmgr[1867]: bind 'memory_cs' to socket 0 
failed: Invalid argument
Feb  6 16:23:52 zephyr-B kern.debug kernel: ds: ds_ioctl(socket 0, 0xc050643c, 
0x386c8)
Feb  6 16:23:52 zephyr-B kern.debug kernel: ds: bind_request(0, 'memory_cs')
Feb  6 16:23:52 zephyr-B kern.debug kernel: ds: ds_poll(socket 0)
==========

# cat /sys/class/pcmcia_socket/pcmcia_socket0/
/sys/class/pcmcia_socket/pcmcia_socket0/available_resources_setup_done
/sys/class/pcmcia_socket/pcmcia_socket0/card_eject
/sys/class/pcmcia_socket/pcmcia_socket0/card_insert
/sys/class/pcmcia_socket/pcmcia_socket0/card_irq_mask
/sys/class/pcmcia_socket/pcmcia_socket0/card_type
/sys/class/pcmcia_socket/pcmcia_socket0/card_vcc
/sys/class/pcmcia_socket/pcmcia_socket0/card_voltage
/sys/class/pcmcia_socket/pcmcia_socket0/card_vpp
/sys/class/pcmcia_socket/pcmcia_socket0/cis
/sys/class/pcmcia_socket/pcmcia_socket0/device/
# cat /sys/class/pcmcia_socket/pcmcia_socket0/available_resources_setup_done
yes
# cat /sys/class/pcmcia_socket/pcmcia_socket0/cis
cat: Read error: No data available
# cat /proc/bus/pccard/drivers
orinoco_cs               1 0

=========
static int pcmcia_card_add(struct pcmcia_socket *s)
{
	[...]
        ret = pccard_validate_cis(s, BIND_FN_ALL, &cisinfo);
        if (ret || !cisinfo.Chains) {
                ds_dbg(0, "invalid CIS or invalid resources 
(#tuples=%x,chains?=%x)\n",ret,cisinfo.Chains);
                return -ENODEV;

==========




More information about the linux-pcmcia mailing list