2 Replies Latest reply on Aug 30, 2017 10:29 PM by lamic_2639256

    BCM4343W F2 interrupts not getting started

    ragac_2175966

      We have interfaced stm32f446 controller with murata wifi chip type 1dx (which has bcm4343W chip) through SDIO interface.

      In the function wwd_bus_init(), firmware downloading (VERIFY_RESULT( wwd_bus_sdio_download_firmware( ) )) finishes successfully,

      but in the following loop (which checks through command 52 that whether F2 interrupts are turned ON or not)

       

      while ( ( ( result = wwd_bus_sdio_read_register_value( BUS_FUNCTION, SDIOD_CCCR_IORDY, (uint8_t) 1, &byte_data ) ) == WWD_SUCCESS ) &&

              ( ( byte_data & SDIO_FUNC_READY_2 ) == 0 ) &&

              ( loop_count < (uint32_t) F2_READY_TIMEOUT_MS ) )

      {

          (void) host_rtos_delay_milliseconds( (uint32_t) 1 ); /* Ignore return - nothing can be done if it fails */

          loop_count++;

      }

       

      timeout occurs, that is in all the attempts of SDIO read, the byte_data variable has the value 0x00,

      which means that F2 interrupts are not turned ON in all attempts (1000 attempts with a delay of 1ms between each attempt).

       

       

      Is there anything that we can try out to solve this problem?

       

      Is there anything that we can try out to find further details of this problem?

       

      Can you provide any documents(or atleast link) on the details of this F2 interrupt and other

      software development related documents for the BCM4343W chip? (We need details related to firmware development)

        • 1. Re: BCM4343W F2 interrupts not getting started
          ragac_2175966

          For the above problem I tried to debug the code and what i found was as follows,

           

          In wwd_bus_sdio_download_firmware() when following function is executed

           

          /* Enable F2 interrupts. This wasn't required for 4319 but is for the 43362 */

          VERIFY_RESULT( wwd_bus_write_backplane_value( SDIO_FUNCTION_INT_MASK, (uint8_t) 1, (uint32_t) 2) );

           

          the bcm4343W chip starts giving continuous interrupt at very fast rate because of which other commands are

          not accepted and the read of SDIOD_CCCR_IORDY register does not return F2 functionality is enabled.

          but if i comment out the above interrupt enabling, I receive following error.

           

          "Could not turn off TX glomming"

           

          What is SDIO_FUNCTION_INT_MASK with respect to BCM4343W chip?

          Why this interrupt are coming at very fast interval, after they are enabled?

          1 of 1 people found this helpful
          • 2. Re: BCM4343W F2 interrupts not getting started
            lamic_2639256

            Did you find the solution for the problem? we are facing the same with 43362.