AW: Pcmcia: 16 bit card does not work in 2.6.18+ kernel

Pius.Braun at t-systems.com Pius.Braun at t-systems.com
Tue Jul 28 10:03:05 EDT 2009


Hello Tony, 

Thx for the hint.
Startup by hand did not improve the result.

But:

Under kernel 2.6.18 the "cbdumb" shows, that "Card control" is 0x00. With kernel 2.6.9 on the same machine the value is 0x01 and it works.
The data manual of the PCI1420 describes:
Interrupt flag. Bit 0 is the interrupt flag for 16-bit I/O PC Cards and for CardBus cards. Bit 0 is set when a
functional interrupt is signaled from a PC Card interface and is socket dependent (that is, not global). Write
back a 1 to clear this bit.
              0 = No PC Card functional interrupt detected (default).
              1 = PC Card functional interrupt detected.
So it seams the there is a problem with the IRQ. 
Can anybody confirm this estimation?
And how can I make it run?

02:0f.0 CardBus bridge: Texas Instruments PCI1420
  -- generic cardbus config registers
  Vendor ID                      [00] : 0x104c
  Device ID                      [02] : 0xac51
  PCI command                    [04] : 0x0007
  Base address                   [10] : 0xe0300000
  Memory Base 0                  [1c] : 0x40000000
  Memory Limit 0                 [20] : 0x41fff000
  Memory Base 1                  [24] : 0xe2000000
  Memory Limit 1                 [28] : 0xe3fff000
  IO Base 0                      [2c] : 0x00003000
  IO Limit 0                     [30] : 0x000030fc
  IO Base 1                      [34] : 0x00003400
  IO Limit 1                     [38] : 0x000034fc
  Bridge control                 [3e] : 0x0540
  Subsystem vendor ID            [40] : 0xe4bf
  Subsystem device ID            [42] : 0x2000
  Legacy mode base               [44] : 0x0001
  -- TI specific config registers
  System control                 [80] : 0x2844d020
  IRQ Mux                        [8c] : 0x0fc01d02
  Retry                          [90] : 0xc0
  Card control                   [91] : 0x00		<<<<<<<<<< should be 0x01
  Device control                 [92] : 0x66
  Diagnostic                     [93] : 0x61
  -- cardbus registers
  CB_SOCKET_EVENT                [00] : 0x00000000
  CB_SOCKET_MASK                 [04] : 0x00000006
  CB_SOCKET_STATE                [08] : 0x30000859
  CB_SOCKET_FORCE                [0c] : 0x00000000
  CB_SOCKET_CONTROL              [10] : 0x00000030
  CB_SOCKET_POWER                [20] : 0x00000000
  -- exca registers
  I365_IDENT                     [00] : 0x84
  I365_STATUS                    [01] : 0x6f
  I365_POWER                     [02] : 0x98
  I365_INTCTL                    [03] : 0x70
  I365_CSC                       [04] : 0x00
  I365_CSCINT                    [05] : 0x08
  I365_ADDRWIN                   [06] : 0x41
  I365_IOCTL                     [07] : 0x01
  I365_GENCTL                    [16] : 0x0080
  I365_GBLCTL                    [1e] : 0x0000
  I365_IO0_START                 [08] : 0x3100
  I365_IO0_STOP                  [0a] : 0x31ff
  I365_IO1_START                 [0c] : 0x0000
  I365_IO1_STOP                  [0e] : 0x0001
  I365_MEM0_START                [10] : 0x08d0
  I365_MEM0_STOP                 [12] : 0x88d0
  I365_MEM0_OFF                  [14] : 0x7730
  I365_MEM0_PAGE                 [40] : 0xe0
  I365_MEM1_START                [18] : 0x0000
  I365_MEM1_STOP                 [1a] : 0x0000
  I365_MEM1_OFF                  [1c] : 0x0000
  I365_MEM1_PAGE                 [41] : 0x00
  I365_MEM2_START                [20] : 0x0000
  I365_MEM2_STOP                 [22] : 0x0000
  I365_MEM2_OFF                  [24] : 0x0000
  I365_MEM2_PAGE                 [42] : 0x00
  I365_MEM3_START                [28] : 0x0000
  I365_MEM3_STOP                 [2a] : 0x0000
  I365_MEM3_OFF                  [2c] : 0x0000
  I365_MEM3_PAGE                 [43] : 0x00
  I365_MEM4_START                [30] : 0x0000
  I365_MEM4_STOP                 [32] : 0x0000
  I365_MEM4_OFF                  [34] : 0x0000
  I365_MEM4_PAGE                 [44] : 0x00



Any idea, how to set "Card Control" to "1".




-----Ursprüngliche Nachricht-----
Von: Tony Olech [mailto:tony.olech at elandigitalsystems.com] 
Gesendet: Montag, 27. Juli 2009 13:45
An: Braun, Pius
Cc: linux-pcmcia at lists.infradead.org; mail at brodo.de; Wenzel, Marco; Thiel, Karl
Betreff: Re: Pcmcia: 16 bit card does not work in 2.6.18+ kernel

Slackware has a similar looking problem in that pcmcia-socket-startup is installed in the wrong place. Try executing pcmcia-socket-startup by hand.

Tony Olech

On Mon, 2009-07-27 at 13:33 +0200, Pius.Braun at t-systems.com wrote:
> Hello community @linux-pcmcia mailing list,
> 
> We have a CompactPCI system with
> - PC running Linux
> - PCMCIA Card Holder with Texas Instruments PCI 1420 Controller
> 
> On Kernel 2.6.9, any PCMCIA Card worked well. 
> Now on 2.6.18 (even 2.6.28) no 16 Bit PCMCIA Card is working in the 
> slot.
> 32-bit cards work well. 
> On a notebook computer with 2.6.18 kernel, it works well.
> 
> It looks like it would get no interrupt, port or shared memory. 
> What we definitely see is, that the driver cannot access any IO-ports.
> 
> We tried some things: 
> - the problem appears with Redhat EL 5, Debian Etch, Vanilla Kernel 
> xxx, Ubuntu (2.6.28)
> - checking different start parameters for the kernel made no changes
> - Dominik Brodowski had a short look but not enough time to support 
> further
> - made some diagnostic ouput (attachment)
> 
> <<etch.tar>>
> Any ideas to me an CC recipient are welcome.
> 
> Regards&
> freundliche Grüße
> 
> Pius Braun
> T-Systems
> Systems Integration
> Sales Manager Embedded Systems
> Address: Magirusstraße 39/1, D-89077 Ulm
> +49 731 9344 4112 (Phone)
> +49 171 28 78 918 (Mobile)
> E-Mail: pius.braun at t-systems.com
> Internet: www.t-systems.com
> T-Systems GEI GmbH
> Aufsichtsrat: Klaus Werner (Vorsitzender)
> Geschäftsführung: Dr. Ferri Abolhassan (Vorsitzender), Rita Lietzke, 
> Ulrich Meister, Marc Stehle
> Handelsregister: Amtsgericht Aachen HRB 7106, Ust.-Id Nr. DE 811 137 
> 130
> 
> 
> _______________________________________________
> Linux PCMCIA reimplementation list
> http://lists.infradead.org/mailman/listinfo/linux-pcmcia




More information about the linux-pcmcia mailing list