<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Apr 9, 2018 at 6:50 PM, JunBeom Kim (EmbedCoreTech) <span dir="ltr"><<a href="mailto:jbkim@e-coretech.kr" target="_blank">jbkim@e-coretech.kr</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Dear Sir,<br>
<br>
Is there RTEMS users for running RTEMS for PICO-PI-IMX7 board ?<br>
<br>
I purchased PICO-PI-IMX7 from Wanboard.<br>
<a href="https://www.wandboard.org/products/android-things/PICO-PI-IMX7/" rel="noreferrer" target="_blank">https://www.wandboard.org/<wbr>products/android-things/PICO-<wbr>PI-IMX7/</a><br>
<br>
I am tring to test RTEMS on PICO-PI-IMX7 using RTEMS current version for i.MX7D SDB board.<br></blockquote><div><br></div><div>Ooooh, this is a sexy little kit...</div><div><br></div><div><a href="https://www.variscite.com/products/system-on-module-som/cortex-a7/var-som-mx7-nxp-freescale-imx-7/">https://www.variscite.com/products/system-on-module-som/cortex-a7/var-som-mx7-nxp-freescale-imx-7/</a></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
On referencing, when I check PICO-PI-IMX7 board, there is u-boot only.<br>
Also, there is eMMC memory only. (It was headache in first)<br>
Therefore, I needed additional work for writing your modified u-boot and/or for preparing RTEMS image FAT32 storage. Additional work means that u-boot writing by dd command and eMMC partition configuration by fdisk command after Linux kernel is booting.<br>
<br>
At this time, I removed Linux kernel image on eMMC storage and I am ready to test RTEMS image only.<br>
Also, If user use "ums 0 mmc 0" command in u-boot, user can replace RTEMS image and dtb file easily on PC(Windows or Linux Desktop).<br>
<br>
As I check difference between PICO-PI-IMX7 and i.MX7D SDB, UART debug port number is different.<br>
 - PICO-PI-IMX7 : UART5 (serial4)<br>
 - i.MX7D SDB : UART1 (serial0)<br>
<br>
After I check current RTEMS bsp source, I modified console-config.c due to UART port number change in below;<br>
<br>
< Original code : for UART1 debug port ><br>
static imx_uart_context imx_uart_instances[7];<br>
static imx_uart_context *imx_uart_console = &imx_uart_instances[0];<br>
<br>
< Modified code : for UART5 debug port ><br>
static imx_uart_context imx_uart_instances[7];<br>
static imx_uart_context *imx_uart_console = &imx_uart_instances[4];<br>
<br>
Even though I modified this, there is not any output after running RTEMS.<br>
<br>
I am checking UART configuration by FDT.<br>
<br>
As I check imx_uart_probe() function of console-config.c, there is "chosen" and "stdout-path" keyword in below;<br>
<br>
static void imx_uart_probe(void)<br>
{<br>
  const void *fdt;<br>
  int node;<br>
  int offset;<br>
  const char *console;<br>
  size_t i;<br>
<br>
  fdt = bsp_fdt_get();<br>
  node = fdt_path_offset(fdt, "/chosen");<br>
<br>
  console = fdt_getprop(fdt, node, "stdout-path", NULL);<br>
  if (console == NULL) {<br>
    console = "";<br>
  }<br>
  ...<br>
}<br>
<br>
I think that there should be declaration for "stdout-path" of "chosen" area in dts(including dtsi) source file.<br>
<br>
As I check dts files on lastest Linux kernel for both i.MX7D SDB and PICO-IMX7, there is not "stdout-path" information of "chosen".<br>
<br>
I attached files related with this.<br>
<br>
 - i.MX7D SDB : imx7d-sdb.dts with imx7d.dtsi, imx7s.dtsi<br>
 - PICO-IMX7 : imx7d-pico-pi.dts with imx7d-pico.dtsi, imx7d.dtsi, imx7s.dtsi<br>
<br>
Because there is blank information for "chosen" in imx7s.dtsi, I added "stdout-path" in imx7d-pico-dtsi.<br>
<br>
< imx7s.dtsi ><br>
/ {<br>
        #address-cells = <1>;<br>
        #size-cells = <1>;<br>
        /*<br>
         * The decompressor and also some bootloaders rely on a<br>
         * pre-existing /chosen node to be available to insert the<br>
         * command line and merge other ATAGS info.<br>
         * Also for U-Boot there must be a pre-existing /memory node.<br>
         */<br>
        chosen {}; ==> "there is not any information for stdout-path"<br>
        memory { device_type = "memory"; };<br>
  ...<br>
}<br>
<br>
< My modified imx7d-pico.dtsi ><br>
<br>
/ {<br>
        model = "Technexion Pico i.MX7D Board";<br>
        compatible = "technexion,imx7d-pico", "fsl,imx7d";<br>
<br>
        memory@80000000 {<br>
                reg = <0x80000000 0x80000000>;<br>
        };<br>
<br>
        chosen {<br>
                stdout-path = &uart5"; ==> "I added stdout-path information".<br>
        };<br>
<br>
  ...<br>
}<br>
<br>
After I modified imx7d-pico.dtsi, I made imx7d-pico-pi.dtb.<br>
<br>
Finally, I tried to run RTEMS using the revised dtb file. But, there is not any serial output.<br>
<br>
On referencing, there is not JTAG debug port in PICO board, It is very difficult to debug current RTEMS for i.MX7D.<br>
<br>
If there is mistake in my trial step, please let me know that.<br>
<br>
Best Regards,<br>
JunBeom Kim<br>
~~~~~~~~~~~~~~~~~~~~~~<br>
President / EmbedCoreTech<br>
Phone: +82-31-396-5584<br>
Fax: +82-504-065-5720<br>
Mobile:+82-10-6425-5720<br>
Email: <a href="mailto:jbkim@e-coretech.kr">jbkim@e-coretech.kr</a><br>
Web: <a href="http://www.e-coretech.kr" rel="noreferrer" target="_blank">www.e-coretech.kr</a><br>
~~~~~~~~~~~~~~~~~~~~~~<br>
<br>
<br>
<br>______________________________<wbr>_________________<br>
users mailing list<br>
<a href="mailto:users@rtems.org">users@rtems.org</a><br>
<a href="http://lists.rtems.org/mailman/listinfo/users" rel="noreferrer" target="_blank">http://lists.rtems.org/<wbr>mailman/listinfo/users</a><br></blockquote></div><br></div></div>