2 Replies Latest reply on Nov 26, 2013 4:31 PM by FeTu_2131621

    Porting WICED+WWD+LwIP to uvel for BCM4330 (AW-AH663)

    FeTu_2131621
      We have recently ported WICED, WWD and LwIP to use u-Velocity.  All components seem to work correctly.  Our issue is with the firmware programming part of the chip bringup.  After the firmware is downloaded and the NVRAM image is downloaded, the function wiced_download_firmware waits for the WLAN component to come back up.  At least that is what the comments in the code says.  Any clue why the WLAN component would successfully download the firmware and NVRAM but not correctly come back up?

       

       

      Here is the code snippet that always timesout:

       

       

      /* Wait until the High Throughput clock is available */
          loop_count = 0;
          while ( ( ( result = wiced_read_register_value( BACKPLANE_FUNCTION, SDIO_CHIP_CLOCK_CSR, (uint8_t) 1, &csr_val ) ) == WICED_SUCCESS ) &&
                  ( ( csr_val & SBSDIO_HT_AVAIL ) == 0 ) &&
                  ( loop_count < (uint32_t) HT_AVAIL_TIMEOUT_MS ) )
          {
              (void) host_rtos_delay_milliseconds( (uint32_t) 1 ); /* Ignore return - nothing can be done if it fails */
              loop_count++;
          }
          if ( loop_count >= (uint32_t) HT_AVAIL_TIMEOUT_MS )
          {
              /* If your system times out here, it means that the WLAN firmware is not booting.
               * Check that your WLAN chip matches the wifi_image.c being built - in GNU toolchain, $(CHIP)
               * makefile variable must be correct.
               */
               WPRINT_WWD_ERROR(("Timeout while waiting for high throughput clock
      "));
              return WICED_TIMEOUT;
          }