linux-wireless.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* p54spi (STLC4560) with Marvel XScale CPU (kernel 2.6.25.4)
@ 2010-09-22  9:44 Alex Mihaylov
  2010-09-22 10:38 ` Max Filippov
  0 siblings, 1 reply; 15+ messages in thread
From: Alex Mihaylov @ 2010-09-22  9:44 UTC (permalink / raw)
  To: linux-wireless

Hello!

I have Toradex Colibri module ( PXA270 and PXA320 based -
http://www.toradex.com/Products/Colibri_Modules ) and want connect
them to Sagrad SG901-1028 module (
http://www.sagrad.com/index.php?option=com_content&view=article&id=55&Itemid=66
) based on STLC450 chip.

Now I add next code to plaform file (kernel 2.6.35.4):

static mfp_cfg_t colibri_pxa320_ssp_pin_config[] __initdata = {
    GPIO83_SSP1_SCLK,
    GPIO85_SSP1_TXD,
    GPIO86_SSP1_RXD,
    GPIO84_GPIO,
    GPIO94_GPIO | MFP_LPM_EDGE_RISE, // IRQ
    GPIO95_GPIO,                     // SLEEP
};

static struct pxa2xx_spi_master colibri_pxa320_spi_master = {
    .clock_enable = CKEN_SSP1,
    .num_chipselect = 1,
    .enable_dma = 0,
};

static struct pxa2xx_spi_chip sagrad_spi_tuning = {
    .gpio_cs    = 84,
};

static struct spi_board_info colibri_pxa320_spi_chips[] = {
    { // Sagrad SG901-1028 or SG901-1039 - module p54spi, but... Joke
from Nokia =)
        .modalias       = "cx3110x",
        .max_speed_hz   = 13000000,
        .mode           = SPI_MODE_0,
        .bus_num        = 1,
        .chip_select    = 0,
        .controller_data = &sagrad_spi_tuning,
    },
};

static inline void colibri_pxa320_init_spi ( void ) {
    pxa3xx_mfp_config( ARRAY_AND_SIZE( colibri_pxa320_ssp_pin_config ) );
    pxa2xx_set_spi_info(1,&colibri_pxa320_spi_master);
    spi_register_board_info( ARRAY_AND_SIZE( colibri_pxa320_spi_chips ) );
}

and pach p54spi.c for proper SPI speed (XScale have maximum SPI rate
13Mhz) with addition module parameter:

static long p54spi_max_rate = 24000000;
module_param(p54spi_max_rate, long, 0444);
MODULE_PARM_DESC(p54spi_max_rate, "maximum spi bus frequency");

and replace string with
       spi->max_speed_hz = 24000000;
to
       spi->max_speed_hz = p54spi_max_rate;

Also i got firmware  2.13.0.0.a.13.14.arm from linux-wireles. After
loading module with proper command line, I see message

cx3110x spi1.0: firmware boot failed

and no other error/warning message presents. SPI signals like good.


phy0: p54 detected a LM20 firmware
p54: rx_mtu reduced from 3240 to 2376
phy0: FW rev 2.13.0.0.a.13.14 - Softmac protocol 5.6
phy0: cryptographic accelerator WEP:YES, TKIP:YES, CCMP:YES
cx3110x spi1.0: loading user eeprom...
phy0: hwaddr 00:02:ee:c0:ff:ee, MAC:isl3820 RF:Longbc
x3110x spi1.0: firmware boot failed

What's trouble? Incorrect firmware? Unsupported (so slow) SPI rate?

I try load another firmware from 2.13... series - result: firmware
boot failed. I also try load firmware cutted from Sagrad source
(version 2.19....) result is same: firmware boot failed.

What is my next step for this idea?

-- 
Sincerely,
Alex A. Mihaylov
AKA MinimumLaw

^ permalink raw reply	[flat|nested] 15+ messages in thread

end of thread, other threads:[~2010-09-22 19:59 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-09-22  9:44 p54spi (STLC4560) with Marvel XScale CPU (kernel 2.6.25.4) Alex Mihaylov
2010-09-22 10:38 ` Max Filippov
2010-09-22 11:25   ` Alex Mihaylov
2010-09-22 11:36     ` Christian Lamparter
2010-09-22 12:01       ` Alex Mihaylov
2010-09-22 12:24         ` Christian Lamparter
2010-09-22 12:33           ` Alex Mihaylov
2010-09-22 12:58             ` Christian Lamparter
2010-09-22 13:41               ` Max Filippov
2010-09-22 13:48                 ` Christian Lamparter
2010-09-22 14:57             ` Max Filippov
     [not found]               ` <AANLkTinaaAp8XXbqEmA-BCEbSQ8oMV5M-BNSs2iKmyNk@mail.gmail.com>
2010-09-22 16:10                 ` Alex Mihaylov
2010-09-22 16:43                   ` Max Filippov
2010-09-22 17:33                     ` Alex Mihaylov
2010-09-22 19:59                       ` Max Filippov

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).