Search Linux Wireless

Re: p54spi (STLC4560) with Marvel XScale CPU (kernel 2.6.25.4)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



> This code from Sagrad:
>
>        SPI_IRQ(DISABLE);
>
>        // Turn the device Off and then On again.
>        SPIDRV_Pwr(FALSE);
>        SPIDRV_Pwr(TRUE);
>
>        // 1. Power up
>        // 2. Wait 240 ms.
>        Delay(480);
>
> [skiped]

If you look closer into the skipped part you'll see

	// 13. Enable host interrupts (EHostIntEnable1 = KIrqReady |
KIrqWrReady | KHwUpdate | KSwUpdate)
	TempReg = (SPI_HOST_INT_READY | SPI_HOST_INT_UPDATE |
SPI_HOST_INT_SW_UPDATE| SPI_HOST_INT_WR_READY);
	SPIDRVWriteReg32(SPI_ADRS_HOST_INT_EN, TempReg);

which actually enables interrupts, exactly as SPI_IRQ(ENABLE); does.

>
>       // 14. Wait for the READY interrupt (100 ms timeout).
>        // Loop while waiting for SPI device to respond with
> interrupt, max timeout is WIFI_BOOT_TIMEOUT
>        for ( i = 0 ; i < WIFI_BOOT_TIMEOUT ; i++)
>        {
>                TempReg = SPIDRVReadReg32(SPI_ADRS_HOST_INTERRUPTS);
>                if( TempReg && SPI_HOST_INT_READY)
>                {
>                        // 15. Acknowledge the READY interrupt.
>                        SPIDRVWriteReg32(SPI_ADRS_HOST_INT_ACK,
> SPI_HOST_INT_READY);
>                        // 16. Issue the SLEEP interrupt.
>                        SPIDRVWriteReg32(SPI_ADRS_ARM_INTERRUPTS,
> SPI_ARM_INT_SLEEP);
>                        break;
>                }
>
>                Delay(1);
>        }
>
>        SPI_IRQ(ENABLE);
>
>        if (i == WIFI_BOOT_TIMEOUT)
>        {
>                ret = FALSE;
>        }
>        else
>        {
>                ret = TRUE;
>                SET_WIFI_ACTIVE();
>        }
>

-- 
Max
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]
  Powered by Linux