Difference between revisions of "Transclusion: CL-SOM-iMX7: FreeRTOS: Known Issues"

From Compulab Mediawiki
Jump to: navigation, search
 
 
Line 4: Line 4:
 
}}
 
}}
  
{{IssueCategory|I2C3 muxing|
+
{{IssueCategory|DRAM configuration support|
* I2C3 is muxed incorrectly.
+
* The FreeRTOS images are that use RPMSG only work on 1GB DRAM configurations. This is caused by two factors: the location of the msg buffer has to be hardcoded in FreeRTOS images, and the Linux drivers don't have full freedom to choose the location of the msg buffer. The result is that both sides can only agree on the location of the msg buffer if the memory configuration is 1GB.
:'''Workaround :''' Update file cl-som-imx7-freertos/freertos/freertos_source/examples/cl_som_imx7_m4/pin_mux.c at lines #112 and #114 to use MUX_MODE(4) instead of MUX_MODE(5) and rebuild the I2C demos.
+
:'''Workaround :''' Update the location of RPMSG buffer in the FreeRTOS images by editing the values of '''VRING0_BASE''' and '''VRING1_BASE''' in ''middleware/multicore/open-amp/porting/imx7d_m4/platform_info.c'', and update the location of RPMSG buffer on the linux side by modifying '''rpmsg''' entry in the Linux device tree (''arch/arm/boot/dts/imx7d-sbc-imx7-m4.dts'').
 
}}
 
}}

Latest revision as of 13:22, 10 April 2018

Booting multiple images
  • Booting more than one FreeRTOS image in the same power-on session will likely not work, with only the first boot being successful. Occasionally, booting multiple images may result in a data abort.
Workaround : Reset the module between image boots.
DRAM configuration support
  • The FreeRTOS images are that use RPMSG only work on 1GB DRAM configurations. This is caused by two factors: the location of the msg buffer has to be hardcoded in FreeRTOS images, and the Linux drivers don't have full freedom to choose the location of the msg buffer. The result is that both sides can only agree on the location of the msg buffer if the memory configuration is 1GB.
Workaround : Update the location of RPMSG buffer in the FreeRTOS images by editing the values of VRING0_BASE and VRING1_BASE in middleware/multicore/open-amp/porting/imx7d_m4/platform_info.c, and update the location of RPMSG buffer on the linux side by modifying rpmsg entry in the Linux device tree (arch/arm/boot/dts/imx7d-sbc-imx7-m4.dts).