1 Reply Latest reply on Sep 12, 2019 2:02 AM by PriyaM_16

    How can I flash the wifi firmware at a certain address on the internal flash ?

    OmEs_4437866

      Please guide me through this issue, I am trying to flash the wifi firmware on the internal flash at a certain address. I dont want it to be part of the application. I need to be able to choose where to put it on the internal flash.

        • 1. Re: How can I flash the wifi firmware at a certain address on the internal flash ?
          PriyaM_16

          Hello,

           

          WICDE give two options for storing the firmware:

          1.  RESOURCES_LOCATION := RESOURCES_IN_DIRECT_RESOURCES
          When RESOURCES_LOCATION is given as RESOURCES_IN_DIRECT_RESOURCES, the firmware and blob are converted to a .c file and bundled with application binary. 

          Please refer the BUILD_RESOURCE_RULES for understanding the process.

           

           

          2.  RESOURCES_LOCATION := RESOURCES_IN_WICEDFS

          When RESOURCES_LOCATION is given as RESOURCES_IN_WICEDFS, the firmware and blob are bundled to create a Filesystem.bin file. This filesystem.bin is stored in the external flash as per the memory map defined in platform makefile.

           

           

          This filesystem approach is currently implemented only for External flash

           

          Some information on BUILD RESOURCE RULES:

          The BUILD_RESOURCE_RULES is written such that it takes the resource and creates a .c file for the same(this .c file is in build/<application>-<platform>/resources/ directory).

           

          $(1)  is the resource name.  Example: resources/firmware/4343W/4343WA1.clm_blob

          $(2)  is FILESYSTEM or MEM depending on WICEDFS or DIRECT_RESOURCES

          $$@  is the created .c file. Example: /43xxx_Wi-Fi/build/<application>-<platform>/resources/4343WA1_clm_blob.c

           

          define BUILD_RESOURCE_RULES

          $(call RESOURCE_FILENAME, $(1)): $(1) $(STAGING_DIR).d | $(EXTRA_PRE_BUILD_TARGETS) $(TEXT_TO_RES_SCRIPT) $(BIN_TO_RES_SCRIPT)

          $$(if $(RESOURCES_START_PRINT),,$(eval RESOURCES_START_PRINT:=1) $(QUIET)$(ECHO) Processing resources)

          $(QUIET)$(ECHO) $(1)

          $$(if $(filter $(TEXT_FILTERS),$(1)),$(QUIET)$(PERL) $(TEXT_TO_RES_SCRIPT)  $(2) $(call RESOURCE_VARIABLE_NAME, $(1)) $(1) > $$@)

          $(QUIET)$(ECHO) $(2) $$@

          $$(if $(filter $(BINARY_FILTERS),$(1)),$(QUIET)$(PERL) $(BIN_TO_RES_SCRIPT) $(2) $(call RESOURCE_VARIABLE_NAME,$(1)) $(1) > $$@)

          $(QUIET)$(CP) $(1) $(STAGING_DIR)$(notdir $(1))

          1 of 1 people found this helpful