This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[TDA4 J721E SDK7.2] SPI module is loaded in "ko" mode, causing kernel running errors.

Hi There,

We change the spi kernel modules install strategy from buildin mode to ko mode.

Here are the kernel configuration changes we made in the file of tisdk_j7-evm_defconfig: 

CONFIG_MTD_SPI_NOR=y and CONFIG_SPI_CADENCE_QUADSPI=y,

After above modify, there are some errors caused on linux kernel side.

Error Scenario One: dmesg | grep spi

[ 2.010726] cadence-qspi 47040000.spi: cqspi->wr_delay = 5600
[ 2.243031] spi-nor spi0.0: Unknown command extension type
[ 2.243045] spi-nor spi0.0: Unknown command extension type
[ 2.246684] cadence-qspi 47040000.spi: Searching for rxlow on TX = 16
[ 3.398274] cadence-qspi 47040000.spi: DMA wait_for_completion_timeout
[ 3.398328] spi-nor spi0.0: operation failed with -110
[ 3.398381] cadence-qspi 47040000.spi: rxlow: RX: 1 TX: 16 RD: 1
[ 3.399017] cadence-qspi 47040000.spi: rxhigh: RX: 60 TX: 16 RD: 2
[ 3.399036] cadence-qspi 47040000.spi: txlow: RX: 15 TX: 0 RD: 1
[ 3.399306] cadence-qspi 47040000.spi: txhigh: RX: 15 TX: 62 RD: 2
[ 3.399356] cadence-qspi 47040000.spi: topright: RX: 60 TX: 62 RD: 3
[ 3.399358] cadence-qspi 47040000.spi: bottomleft: RX: 1 TX: 0 RD: 1
[ 3.399450] cadence-qspi 47040000.spi: gaplow: RX: 4 TX: 3 RD: 1
[ 3.402138] cadence-qspi 47040000.spi: gaphigh: RX: 59 TX: 61 RD: 3
[ 3.402142] cadence-qspi 47040000.spi: Final tuning point: RX: 16 TX: 16 RD: 1
[ 3.402160] cadence-qspi 47040000.spi: Failed to find pattern at final calibration point
[ 3.402163] cadence-qspi 47040000.spi: PHY calibration failed: -22
[ 3.402166] spi-nor spi0.0: mt35xu512aba (65536 Kbytes)
[ 3.402180] 19 cmdlinepart partitions found on MTD device 47040000.spi.0
[ 3.402181] Creating 19 MTD partitions on "47040000.spi.0":
[ 3.402185] 0x000000000000-0x000000080000 : "ospi.sbl"
[ 3.415819] 0x000000080000-0x000000100000 : "ospi.tifs_a"
[ 3.431796] 0x000000100000-0x000000180000 : "ospi.tifs_b"
[ 3.447756] 0x000000180000-0x000000580000 : "ospi.mcufw_a"
[ 3.463785] 0x000000580000-0x000000980000 : "ospi.mcufw_b"
[ 3.479748] 0x000000980000-0x000001d80000 : "ospi.combine_a"
[ 3.499784] 0x000001d80000-0x000003180000 : "ospi.combine_b"
[ 3.515773] 0x000003180000-0x0000031a0000 : "ospi.misc_a"
[ 3.531751] 0x0000031a0000-0x0000031c0000 : "ospi.misc_b"
[ 3.551791] 0x0000031c0000-0x0000031e0000 : "ospi.factory"
[ 3.567773] 0x0000031e0000-0x000003200000 : "ospi.safe_a"
[ 3.583807] 0x000003200000-0x000003220000 : "ospi.safe_b"
[ 3.599760] 0x000003220000-0x000003260000 : "ospi.sonardata"
[ 3.616298] 0x000003260000-0x000003460000 : "ospi.mcudata"
[ 3.631871] 0x000003460000-0x000003480000 : "ospi.imudata"
[ 3.647972] 0x000003480000-0x0000034a0000 : "ospi.pstore"
[ 3.663887] 0x0000034a0000-0x0000036a0000 : "ospi.reserved"
[ 3.679861] 0x000003fe0000-0x000004000000 : "ospi.patterns"
[ 3.697061] 0x000000000000-0x000004000000 : "ospi.whole_spi"
[ 6.630390] cadence-qspi 47040000.spi: DMA wait_for_completion_timeout
[ 6.630396] spi-nor spi0.0: operation failed with -110
[ 8.710337] cadence-qspi 47040000.spi: DMA wait_for_completion_timeout
[ 8.710342] spi-nor spi0.0: operation failed with -110
[ 14.054326] cadence-qspi 47040000.spi: DMA wait_for_completion_timeout
[ 14.054331] spi-nor spi0.0: operation failed with -110

Error Scenario Two:

root@sixi_master:/opt/data# flashcp -v app-master /dev/mtd3
Erasing blocks: 6/6 (100%)
Writing data: 658k/658k (100%)
Verifying data: 10k/658k (1%)
While reading data from /dev/mtd3: Connection timed out

Error Scenario Three:

18-46-12.794root@sixi_master:/opt/data# flashcp -v app-master /dev/mtd3
18-46-14.131Erasing blocks: 6/6 (100%)
18-46-14.738Writing data: 658k/658k (100%)
18-46-14.798Verifying data: 10k/658k (1%)File does not seem to match flash data. First mismatch at 0x00000000-0x00002800

Why did the above errors occur after we modified the loading mode of SPI module( spi-nor.ko and spi-cadence-quadspi.ko),

please help to analyze the the differences between "buildin" mode and "ko" mode  in TDA4 platform.

Li,

Bests

  • Why did the above errors occur after we modified the loading mode of SPI module( spi-nor.ko and spi-cadence-quadspi.ko),

    Hi,

    Linux expects boot media to be built in & not loadable. Can you try the below patch:

    https://e2e.ti.com/cfs-file/__key/communityserver-discussions-components-files/791/tiL5.10_2D00_P_2D00_spi_2D00_cadence_2D00_quadspi_2D00_Handle_2D00_spi_5F00_unregister_5F00_master_2D00_in_2D00_remove.patch

    The above Patch is on the latest 8.2 SDK. Please port it back to 7.2 SDK.

    Best Regards,
    Keerthy

  • This patch occurred build error as below:

    drivers/spi/spi-cadence-quadspi.c: In function ‘cqspi_probe’:
    drivers/spi/spi-cadence-quadspi.c:2307:11: error: implicit declaration of function ‘devm_spi_alloc_master’; did you mean ‘spi_alloc_master’? [-Werror=implicit-function-declaration]
    2307 | master = devm_spi_alloc_master(&pdev->dev, sizeof(*cqspi));
    | ^~~~~~~~~~~~~~~~~~~~~
    | spi_alloc_master
    drivers/spi/spi-cadence-quadspi.c:2307:9: error: assignment to ‘struct spi_controller *’ from ‘int’ makes pointer from integer without a cast [-Werror=int-conversion]
    2307 | master = devm_spi_alloc_master(&pdev->dev, sizeof(*cqspi));
    | ^

  • CONFIG_MTD_SPI_NOR=y and CONFIG_SPI_CADENCE_QUADSPI=y,

    These were made =m instead =y right? Are you not observing the above 3 error scenarios when the SPI is builtin?

    - Keerthy

  • We now use =y instead of =m.

    Yes, these 3 error scenarios did not occur when the SPI is buildin. 

  • Any update?

  • Hi,

    Since this is 7.2 based. I am doing the setup. I will get back to you by tomorrow.

    Thanks,
    Keerthy

  • Hi He Li,

    I have now tried the below: 

    CONFIG_MTD_SPI_NOR=m and CONFIG_SPI_CADENCE_QUADSPI=m

    Attached are the logs from my EVM: ospi_module_logs.txt

    [ 6.630396] spi-nor spi0.0: operation failed with -110
    [ 8.710337] cadence-qspi 47040000.spi: DMA wait_for_completion_timeout
    [ 8.710342] spi-nor spi0.0: operation failed with -110
    [ 14.054326] cadence-qspi 47040000.spi: DMA wait_for_completion_timeout
    [ 14.054331] spi-nor spi0.0: operation failed with -110

    I do NOT see the above issue.



    Error Scenario Two:

    flashcp -v app-master /dev/mtd3
    While trying to open app-master: No such file or directory
    root@j7-evm:~# vi app-master
    root@j7-evm:~# flashcp -v ./app-master /dev/mtd3
    Erasing blocks: 1/1 (100%)
    Writing data: 0k/0k (100%)
    Verifying data: 0k/0k (100%)

    I do not see the above issue as well.

    Error Scenario Three:

    root@j7-evm:~# flashcp -v ./app-master /dev/mtd3
    Erasing blocks: 1/1 (100%)
    Writing data: 12k/12k (100%)
    Verifying data: 12k/12k (100%)
    root@j7-evm:~# flashcp -v ./app-master /dev/mtd3
    Erasing blocks: 1/1 (100%)
    Writing data: 12k/12k (100%)
    Verifying data: 12k/12k (100%)
    root@j7-evm:~# flashcp -v ./app-master /dev/mtd3
    Erasing blocks: 1/1 (100%)
    Writing data: 12k/12k (100%)
    Verifying data: 12k/12k (100%)
    root@j7-evm:~#

    I do not observe issue 3 as well.

    SO I do not see issues with changing CONFIG_MTD_SPI_NOR=m and CONFIG_SPI_CADENCE_QUADSPI=m.

    Best Regards,
    Keerthy

  • The probability of recurrence increases if you enable PHY and DMA in MCU domain.

    Moreover, Our Linux OS has enabled the phy-mode and SPI flash Pattern function in device tree,

  • The probability of recurrence increases if you enable PHY and DMA in MCU domain.

    Can you describe this code change? I want to be on the same page as you are.

    Moreover, Our Linux OS has enabled the phy-mode and SPI flash Pattern function in device tree

    I will flash the SPI calibration pattern & check. Please provide the code changes you have w.r.t to enabling PHY and DMA in MCU domain.
    I want to reproduce the issue.

    - Keerthy


  • Attachment is the MCU patch from TI side, please have a check.

  • From 79ab0288a1d0dd7ca82ec360abca873af3f2820f Mon Sep 17 00:00:00 2001
    From: joe <joe.shen@ti.com>
    Date: Wed, 27 Oct 2021 19:07:33 +0800
    Subject: [PATCH] [pdk]enable ospi phy mode and sbl dma mode

    Signed-off-by: joe <joe.shen@ti.com>
    ---
    packages/ti/boot/sbl/sbl_component.mk | 2 +-
    packages/ti/boot/sbl/src/ospi/sbl_ospi.c | 111 +++++++++++++++++++++--
    packages/ti/drv/spi/src/v0/OSPI_v0.c | 16 ++++
    packages/ti/drv/spi/src/v0/OSPI_v0.h | 2 +
    4 files changed, 121 insertions(+), 10 deletions(-)

    diff --git a/packages/ti/boot/sbl/sbl_component.mk b/packages/ti/boot/sbl/sbl_component.mk
    index dd28e33..3649035 100644
    --- a/packages/ti/boot/sbl/sbl_component.mk
    +++ b/packages/ti/boot/sbl/sbl_component.mk
    @@ -1178,7 +1178,7 @@ CUST_SBL_TEST_FLAGS =" -DSBL_USE_DMA=0 -DSBL_LOG_LEVEL=1 -DSBL_SCRATCH_MEM_START
    else
    ifeq ($(findstring j7,$(SOC)),j7)
    # NOTE: If changing to SBL_USE_DMA=1, below, then also change 'sbl_lib_cust' & 'sbl_cust_img' MAKEFILE lines further below to use 'SBL_USE_DMA=yes'
    -CUST_SBL_TEST_FLAGS =" -DSBL_USE_DMA=0 -DSBL_LOG_LEVEL=1 -DSBL_SCRATCH_MEM_START=0xB8000000 -DSBL_SCRATCH_MEM_SIZE=0x4000000 -DSBL_ENABLE_PLL -DSBL_ENABLE_CLOCKS -DSBL_ENABLE_DDR -DSBL_SKIP_MCU_RESET -DBOOT_OSPI"
    +CUST_SBL_TEST_FLAGS =" -DSBL_USE_DMA=1 -DSBL_LOG_LEVEL=1 -DSBL_SCRATCH_MEM_START=0xB8000000 -DSBL_SCRATCH_MEM_SIZE=0x4000000 -DSBL_ENABLE_PLL -DSBL_ENABLE_CLOCKS -DSBL_ENABLE_DDR -DSBL_SKIP_MCU_RESET -DBOOT_OSPI"
    # Custom ex: Early CAN response (NOTE: before using line below, comment out the line above)
    #CUST_SBL_TEST_FLAGS =" -DSBL_USE_DMA=0 -DSBL_LOG_LEVEL=1 -DSBL_SCRATCH_MEM_START=0x41cc0000 -DSBL_SCRATCH_MEM_SIZE=0x40000 -DSBL_ENABLE_PLL -DSBL_ENABLE_CLOCKS -DSBL_SKIP_MCU_RESET -DBOOT_OSPI -DSBL_ENABLE_DEV_GRP_MCU -DSBL_HLOS_OWNS_FLASH -DSBL_SKIP_PINMUX_ENABLE -DSBL_SKIP_LATE_INIT -DSBL_USE_MCU_DOMAIN_ONLY"
    else
    diff --git a/packages/ti/boot/sbl/src/ospi/sbl_ospi.c b/packages/ti/boot/sbl/src/ospi/sbl_ospi.c
    index 8ffa445..e40cef1 100755
    --- a/packages/ti/boot/sbl/src/ospi/sbl_ospi.c
    +++ b/packages/ti/boot/sbl/src/ospi/sbl_ospi.c
    @@ -199,6 +199,90 @@ static int32_t Ospi_udma_deinit(void)
    }
    #endif

    +#if 1
    +void OSPI_configClk(uint32_t freq)
    +{
    + OSPI_v0_HwAttrs ospi_cfg;
    + int32_t retVal;
    + uint64_t ospi_rclk_freq;
    + uint32_t parClk;
    + uint32_t clkID[] = {
    + TISCI_DEV_MCU_FSS0_OSPI_0_OSPI_RCLK_CLK,
    + TISCI_DEV_MCU_FSS0_OSPI_1_OSPI_RCLK_CLK
    + };
    + uint32_t devID[] = {
    + TISCI_DEV_MCU_FSS0_OSPI_0,
    + TISCI_DEV_MCU_FSS0_OSPI_1
    + };
    +
    + /* Get the default SPI init configurations */
    + OSPI_socGetInitCfg(BOARD_OSPI_NOR_INSTANCE, &ospi_cfg);
    +
    + retVal = Sciclient_pmModuleClkRequest(devID[BOARD_OSPI_NOR_INSTANCE],
    + clkID[BOARD_OSPI_NOR_INSTANCE],
    + TISCI_MSG_VALUE_CLOCK_SW_STATE_REQ,
    + TISCI_MSG_FLAG_AOP,
    + SCICLIENT_SERVICE_WAIT_FOREVER);
    + if (retVal != CSL_PASS)
    + {
    + SBL_log(SBL_LOG_MAX, "Sciclient_pmModuleClkRequest failed \n");
    + }
    +
    + /* Max clocks */
    + if (freq == OSPI_MODULE_CLK_166M)
    + {
    + parClk = TISCI_DEV_MCU_FSS0_OSPI_0_OSPI_RCLK_CLK_PARENT_HSDIV4_16FFT_MCU_2_HSDIVOUT4_CLK;
    +
    + retVal = Sciclient_pmSetModuleClkParent(devID[BOARD_OSPI_NOR_INSTANCE],
    + clkID[BOARD_OSPI_NOR_INSTANCE],
    + parClk,
    + SCICLIENT_SERVICE_WAIT_FOREVER);
    + }
    + else
    + {
    + parClk = TISCI_DEV_MCU_FSS0_OSPI_0_OSPI_RCLK_CLK_PARENT_HSDIV4_16FFT_MCU_1_HSDIVOUT4_CLK;
    + retVal = Sciclient_pmSetModuleClkParent(devID[BOARD_OSPI_NOR_INSTANCE],
    + clkID[BOARD_OSPI_NOR_INSTANCE],
    + parClk,
    + SCICLIENT_SERVICE_WAIT_FOREVER);
    + }
    +
    + if (retVal != CSL_PASS)
    + {
    + SBL_log(SBL_LOG_MAX, "Sciclient_pmSetModuleClkParent failed \n");
    + }
    +
    + ospi_cfg.funcClk = freq;
    + OSPI_socSetInitCfg(BOARD_OSPI_NOR_INSTANCE, &ospi_cfg);
    +
    + ospi_rclk_freq = (uint64_t)freq;
    + retVal = Sciclient_pmSetModuleClkFreq(devID[BOARD_OSPI_NOR_INSTANCE],
    + clkID[BOARD_OSPI_NOR_INSTANCE],
    + ospi_rclk_freq,
    + TISCI_MSG_FLAG_AOP,
    + SCICLIENT_SERVICE_WAIT_FOREVER);
    +
    + if (retVal != CSL_PASS)
    + {
    + SBL_log(SBL_LOG_MAX, "Sciclient_pmSetModuleClkFreq failed \n");
    + }
    +
    + ospi_rclk_freq = 0;
    + retVal = Sciclient_pmGetModuleClkFreq(devID[BOARD_OSPI_NOR_INSTANCE],
    + clkID[BOARD_OSPI_NOR_INSTANCE],
    + &ospi_rclk_freq,
    + SCICLIENT_SERVICE_WAIT_FOREVER);
    + if (retVal != CSL_PASS)
    + {
    + SBL_log(SBL_LOG_MAX, "Sciclient_pmGetModuleClkFreq failed \n");
    + }
    +
    + SBL_log(SBL_LOG_MAX, "OSPI RCLK running at %d MHz. \n", (uint32_t)ospi_rclk_freq);
    +
    +}
    +
    +#endif
    +
    int32_t SBL_ReadSysfwImage(void **pBuffer, uint32_t num_bytes)
    {
    #if !defined(SBL_BYPASS_OSPI_DRIVER) && !defined(SBL_BYPASS_OSPI_DRIVER_FOR_SYSFW_DOWNLOAD)
    @@ -232,14 +316,6 @@ int32_t SBL_ReadSysfwImage(void **pBuffer, uint32_t num_bytes)
    ospi_cfg.phyEnable = false;
    #endif

    -#if defined(SOC_J721E)
    - ospi_cfg.phyEnable = false;
    - /* OSPI baud rate = (master reference clock) / (baud rate devisor)
    - * Default baud rate devisor is 32
    - * Using a smaller devisor to get higher speeds */
    - ospi_cfg.baudRateDiv = 6;
    -#endif
    -
    /* Set the default SPI init configurations */
    OSPI_socSetInitCfg(BOARD_OSPI_NOR_INSTANCE, &ospi_cfg);

    @@ -328,7 +404,7 @@ int32_t SBL_ospiInit(void *handle)

    /* Get default OSPI cfg */
    OSPI_socGetInitCfg(BOARD_OSPI_NOR_INSTANCE, &ospi_cfg);
    -
    +#if 0
    #if !defined(SBL_SKIP_BRD_CFG_PM) && !defined(SBL_SKIP_SYSFW_INIT)
    {
    struct ospiClkParams
    @@ -354,6 +430,9 @@ int32_t SBL_ospiInit(void *handle)
    SBL_log(SBL_LOG_MAX, "ospiFunClk = %d Hz \n", ospi_cfg.funcClk);
    }
    #endif
    +#else
    + OSPI_configClk(OSPI_MODULE_CLK_166M);
    +#endif

    ospi_cfg.dtrEnable = true;

    @@ -370,8 +449,13 @@ int32_t SBL_ospiInit(void *handle)
    /* J721E: PHY mode was already previously enabled, so we keep it enabled */
    /* J7200: Enable the PHY mode which was disabled in SBL_ReadSysfwImage */
    ospi_cfg.phyEnable = true;
    +#else
    +#if defined(SOC_J721E)
    + ospi_cfg.phyEnable = true;
    + ospi_cfg.cacheEnable = true;
    #else
    ospi_cfg.phyEnable = false;
    +#endif
    #endif
    /* Set the default SPI init configurations */
    OSPI_socSetInitCfg(BOARD_OSPI_NOR_INSTANCE, &ospi_cfg);
    @@ -452,8 +536,17 @@ int32_t SBL_ospiFlashRead(const void *handle, uint8_t *dst, uint32_t length,
    SBL_DCacheClean((void *)dst, length);
    Board_flashRead(h, offset, dst, length, (void *)(&ioMode));
    }
    +#else
    +#if defined(SOC_J721E)
    + Board_flashHandle h = *(const Board_flashHandle *) handle;
    + uint32_t ioMode = OSPI_FLASH_OCTAL_READ;
    + int ret = 0;
    + SBL_DCacheClean((void *)dst, length);
    + ret = Board_flashRead(h, offset, dst, length, (void *)(&ioMode));
    + SBL_log(SBL_LOG_MAX, "Board_flashRead offset = 0x%x, dst = %p, ret = %d \n", offset, dst, ret);
    #else
    memcpy((void *)dst, (void *)(ospi_cfg.dataAddr + offset), length);
    +#endif
    #endif /* #if SBL_USE_DMA */

    #else
    diff --git a/packages/ti/drv/spi/src/v0/OSPI_v0.c b/packages/ti/drv/spi/src/v0/OSPI_v0.c
    index c9d0be9..f56cb5b 100755
    --- a/packages/ti/drv/spi/src/v0/OSPI_v0.c
    +++ b/packages/ti/drv/spi/src/v0/OSPI_v0.c
    @@ -910,6 +910,14 @@ static int32_t OSPI_dac_xfer_mode_read_v0(SPI_Handle handle,
    else
    #endif
    {
    + if (hwAttrs->cacheEnable == (bool)true)
    + {
    + if (hwAttrs->phyEnable == (bool)true)
    + {
    + /* Enable PHY pipeline mode for read */
    + CSL_ospiPipelinePhyEnable((const CSL_ospi_flash_cfgRegs *)(hwAttrs->baseAddr), TRUE);
    + }
    + }
    pSrc = (uint8_t *)(hwAttrs->dataAddr + offset);
    remainSize = (uint32_t)transaction->count & 3U;
    size = (uint32_t)transaction->count - remainSize;
    @@ -929,6 +937,10 @@ static int32_t OSPI_dac_xfer_mode_read_v0(SPI_Handle handle,
    CSL_archMemoryFence();
    #endif
    }
    + if (hwAttrs->cacheEnable == (bool)true)
    + {
    + CacheP_wbInv((void *)(hwAttrs->dataAddr + offset), transaction->count);
    + }
    }

    return (0);
    @@ -1308,6 +1320,10 @@ static int32_t OSPI_dac_xfer_mode_write_v0(SPI_Handle handle,
    }
    }
    }
    + if (hwAttrs->cacheEnable == (bool)true)
    + {
    + CacheP_wbInv((void *)(hwAttrs->dataAddr + offset), transaction->count);
    + }
    return (retVal);
    }

    diff --git a/packages/ti/drv/spi/src/v0/OSPI_v0.h b/packages/ti/drv/spi/src/v0/OSPI_v0.h
    index bc7a12d..bd706b9 100755
    --- a/packages/ti/drv/spi/src/v0/OSPI_v0.h
    +++ b/packages/ti/drv/spi/src/v0/OSPI_v0.h
    @@ -250,6 +250,8 @@ typedef struct OSPI_v0_HwAttrs_s {
    uint32_t csSotDelay;
    /*! Master mode baud rate divisor value */
    uint32_t baudRateDiv;
    + /*! Enable Cache */
    + bool cacheEnable;

    } OSPI_v0_HwAttrs;

    --
    2.17.1

  • Hi,

    Can you please check if SBL_ospiLeaveConfigSPI API is executed in SBL, at the end? If you are already executing this API at the end of SBL, can you please try adding "ospi_cfg.dmaEnable = false;" just to make DMA is also disabled in OSPI config?

    Regards,

    Brijesh

  • Hi,

        I enable SBL_ospiLeaveConfigSPI  function in SBL,and adding "ospi_cfg.dmaEnable = false;" in this function, the problem still exist . Can you repeat this problem at your EVM board?

  • Hi,

    So you are using the SBL to boot to Linux. I was using the SPL to Boot to Linux. Basically you have changes on top of SDK on SBL side & you boot to Linux.
    Thanks for the patch. I will need to some time to setup 7.2 PSDK RTOS environment & try this.

    - Keerthy

  • Hi,

        Our boot sequence is SBL->mcu RTOS app->uboot->linux. I modify the code in sbl_ospi.c file to test the case. To enable “SBL_ospiLeaveConfigSPI();“ function,i changed the code as blew。

    //#if defined(SBL_HLOS_OWNS_FLASH) && !defined(SBL_USE_MCU_DOMAIN_ONLY) && !defined(SBL_ENABLE_DEV_GRP_MCU)
    /* Only put OSPI flash back into SPI mode if we're going to directly boot ATF/U-boot/Linux from SBL */
        SBL_ospiLeaveConfigSPI();
    //#endif
  • Is there any progress on this issue?Look forward to your reply.

  • Hi,

    Can you please try below patch in the kernel and try it out?

    https://patchwork.ozlabs.org/project/uboot/patch/20220509083332.5233-1-vaishnav.a@ti.com/

    Regards,

    Brijesh

  • Our boot sequence is SBL->mcu RTOS app->uboot->linux. I modify the code in sbl_ospi.c file to test the case. To enable “SBL_ospiLeaveConfigSPI();“ function,i changed the code as blew。

    Hi,

    Since you have U-Boot in the boot path. Above patch pointed by Brijesh should help reset the flash. Could you please try that?

    - Keerthy

  • This is uboot patch, but we haven't utilized uboot boot flow, our boot sequence is SBL->mcu RTOS app -> linux kernel. 

  •     Our boot sequence is SBL->mcu RTOS app->uboot->linux. I modify the code in sbl_ospi.c file to test the case. To enable “SBL_ospiLeaveConfigSPI();“ function,i changed the code as blew。

    //#if defined(SBL_HLOS_OWNS_FLASH) && !defined(SBL_USE_MCU_DOMAIN_ONLY) && !defined(SBL_ENABLE_DEV_GRP_MCU)
    /* Only put OSPI flash back into SPI mode if we're going to directly boot ATF/U-boot/Linux from SBL */

    You Do not have SPL in your boot path. SBL is being used for SPL but U-Boot is in your boot path after ATF. See the above sequence that you have quoted. So this patch will definitely have an effect. Please let us know.

    - Keerthy

  • Hi Keerthy, 

    we now have not uboot path after atf, just use SBL->mcu app -> linux, we already removed the uboot-spl and uboot path during the booting process.

    Please note this. thanks.

  • Hi,

    So it is SBL(MCU R5) --> MCU APP(MCU R5) --> A72 (ATF) --> A72(Linux)

    Can you please highlight why the OSPI needs to be a module? As it is the boot media we do not try that as a module.
    Also do you remove the module & then insert back or you see the errors even without removing the module?

    - Keerthy

  • There is a need to switch ospi flash control between MCU and linux, we have to make ospi as a kernel modules.

  • Hi He Li,

    I have the 7.2 SDK set up ready. I want to check on the steps:

    Can you confirm the above steps? & answer the questions?

    Also is the issue easily reproducible or happens once in multiple runs?

    - Keerthy

  • Dear Li,

         Just for a double-check of this case's background:

         At the beginning, we hope to reduce the boot time so that we open PHY mode of OSPI Flash. It works fine, however when running the whole system A72 and MCU will compete for the control of OSPI FLASH.

         As a result, you try to change OSPI driver to .ko for easy insmod and rmmod right?

    BR

    Sikai 

  • yes right.

  • Hello Li,

    Can you also answer my questions & confirm?

    - Keerthy

  • Hi Keerthy J,

    1.On the MCU side we need to apply the patch mentioned: ..............
      yes
    2.In the Linux side make OSPI as a module.
      yes
    3.Flash SBL to OSPI & also the combined app Image to OSPI & Boot from OSPI.
      yes
    4.The file system should be in eMMC or SD?
      in emmc
    5.Also what other remote runs apart from MCU_R5F, M3 & A72?
      dsp

    6.Also is the issue easily reproducible or happens once in multiple runs?
        easily reproducible

    We want to verify the ospi flash when mcu runs,also ,we need to write the flash when linux runs.So there is a need to switch ospi flash control between MCU and linux,thats why we need to make ospi driver as a kernel module

  • Any update?

  • Hi,

    The patch you had attached did not apply directly. I got a patch from our team internally. I have compiled the SBL changes now. I will test on the evm by Monday and get back with my findings. I checked with our internal experts that Dynamic sharing of ospi between cores is never tried or tested.

    Regards,

    Keerthy

  • Any update?

  • In sbl and mcu app(autosar),MCU had done the close operation after ospi flash is used up。The problem still exits。The code list blew。Is the close operation correct? Or still need do a reset ospi flash operation?

    int32_t SBL_OSPIBootImage(sblEntryPoint_t *pEntry)
    {
    。。。。。。
    。。。。。。
        SBL_ospiClose(&boardHandle);

    #if defined(SBL_HLOS_OWNS_FLASH) && !defined(SBL_USE_MCU_DOMAIN_ONLY) && !defined(SBL_ENABLE_DEV_GRP_MCU)
    /* Only put OSPI flash back into SPI mode if we're going to directly boot ATF/U-boot/Linux from SBL */
        SBL_ospiLeaveConfigSPI();
    #endif
    。。。。。。
    }
  • Hi Jianye,

    I discussed with our OSPI expert. When handling the control to Linux the prior software has to release 1S mode.

    The SPL flow is now having the fix:

    diff --git a/common/spl/spl_spi.c b/common/spl/spl_spi.c
    index d6528f078f..c1995d5dce 100644
    --- a/common/spl/spl_spi.c
    +++ b/common/spl/spl_spi.c
    @@ -172,6 +172,11 @@  static int spl_spi_load_image(struct spl_image_info *spl_image,
     					     spl_image->size,
     					     (void *)spl_image->load_addr);
     		}
    +		if (IS_ENABLED(CONFIG_SPI_FLASH_SOFT_RESET)) {
    +			err = spi_nor_remove(flash);
    +			if (err)
    +				return err;
    +		}
     	}
     

    Is that being done in SBL boot flow as well?

    Best Regards,
    Keerthy

  • Dear Keerthy,

    1S

        Do you mean 1 SPI mode?

    BR

    Sikai

  • On probe, the SPI NOR core will put a flash in 8D mode if it
    supports it. But Linux as of now expects to get the flash in
    1S mode. Handing the flash to Linux in Octal DTR mode means
    the kernel will fail to detect the flash.
    
    This commit adds an option to soft reset the flash after
    spl_spi_load_image() so that the flash can be reset to 1S mode
    and subsequent spi-nor probe in Linux does not fail, since
    spl_spi_load_image() performs spi_flash_probe() the remove is
    added after completion loading images in spi_flash_probe() itself.
    
    - Keerthy
  • Dear Keerthy,

    diff --git a/common/spl/spl_spi.c b/common/spl/spl_spi.c index d6528f078f..c1995d5dce 100644 --- a/common/spl/spl_spi.c +++ b/common/spl/spl_spi.c @@ -172,6 +172,11 @@ static int spl_spi_load_image(struct spl_image_info *spl_image, spl_image->size, (void *)spl_image->load_addr); } + if (IS_ENABLED(CONFIG_SPI_FLASH_SOFT_RESET)) { + err = spi_nor_remove(flash); + if (err) + return err; + } }

     Customer find they do not have such API on SBL side, they want to know if they can do such operation on Linux side. They have done spi_reset() in the kernel, they want to know if they have to move such reset to u-boot and does spi_reset() work same as spi_nor_remove(flash).

    Dear Li,

       Could you help share your code of reset spi in kernel? And please help describe your concern of doing spi_nor_remove(flash) before insmod it.

    BR

    Sikai

  • Hi Sikai,

    The spi_nor_soft_reset() API source code as follow,  and we place the API before spi scan in kernel driver.

     

    5546 static void spi_nor_soft_reset(struct spi_nor *nor)
    5547 {
    5548 struct spi_mem_op op;
    5549 int ret;
    5550
    5551 op = (struct spi_mem_op)SPI_MEM_OP(SPI_MEM_OP_CMD(SPINOR_OP_SRSTEN, 8),
    5552 SPI_MEM_OP_NO_DUMMY,
    5553 SPI_MEM_OP_NO_ADDR,
    5554 SPI_MEM_OP_NO_DATA);
    5555 spi_nor_spimem_setup_op(nor, &op, SNOR_PROTO_8_8_8_DTR);
    5556 ret = spi_mem_exec_op(nor->spimem, &op);
    5557 if (ret) {
    5558 dev_warn(nor->dev, "Software reset failed: %d\n", ret);
    5559 return;
    5560 }
    5561
    5562 op = (struct spi_mem_op)SPI_MEM_OP(SPI_MEM_OP_CMD(SPINOR_OP_SRST, 8),
    5563 SPI_MEM_OP_NO_DUMMY,
    5564 SPI_MEM_OP_NO_ADDR,
    5565 SPI_MEM_OP_NO_DATA);
    5566 spi_nor_spimem_setup_op(nor, &op, SNOR_PROTO_8_8_8_DTR);
    5567 ret = spi_mem_exec_op(nor->spimem, &op);
    5568 if (ret) {
    5569 dev_warn(nor->dev, "Software reset failed: %d\n", ret);
    5570 return;
    5571 }
    5572
    5573 /*
    5574 * Software Reset is not instant, and the delay varies from flash to
    5575 * flash. Looking at a few flashes, most range somewhere below 100
    5576 * microseconds. So, sleep for a range of 200-400 us.
    5577 */
    5578 usleep_range(SPI_NOR_SRST_SLEEP_MIN, SPI_NOR_SRST_SLEEP_MAX);
    5579 }

  • Hi,

    Thanks. We understood that you are resetting in kernel.
    I got this reviewed from our SPI expert. So do you see issues after you reset the flash in kernel driver.

    What is the issue & can you please add logs?

    Best Regards,
    Keerthy

  • Hi,

    here is the log

  • Dear Keerthy,

         Please help check the log after customer add reset() function in SPL. The error still exits, customer wants to know if they need to do reset in SBL, as we mentioned before in this thread, we did not find the right API for SBL.

         If we need to do the reset in SBL, could you help provide a patch for the customer?

    BR

    SIkai

  • Dear Cunlei,

         Please help upload the entire log before and after add the reset() function here, thanks. 

    BR

    SIkai

  • Hi,

    Sikai,below are the logs with and without reset 

    root@sixi_master:~# dmesg 
    [    0.000000] Booting Linux on physical CPU 0x0000000000 [0x411fd080]
    [    0.000000] Linux version 5.4.74-ACU-10.0.60.1 (clsun@baidu) (gcc version 9.2.1 20191025 (GNU Toolchain for the A-profile Architecture 9.2-2019.12 (arm-9.10))) #168 SMP PREEMPT Fri Oct 21 15:17:05 CST 2022
    [    0.000000] Machine model: Texas Instruments K3 J721E SoC
    [    0.000000] earlycon: ns16550a0 at MMIO32 0x0000000002800000 (options '')
    [    0.000000] printk: bootconsole [ns16550a0] enabled
    [    0.000000] Reserved memory: created DMA memory pool at 0x0000000094000000, size 128 MiB
    [    0.000000] OF: reserved mem: initialized node vision_apps-core-heap-memory@94000000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a0000000, size 1 MiB
    [    0.000000] OF: reserved mem: initialized node r5f-dma-memory@a0000000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a0100000, size 15 MiB
    [    0.000000] OF: reserved mem: initialized node r5f-memory@a0100000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a1000000, size 1 MiB
    [    0.000000] OF: reserved mem: initialized node vision_apps-r5f-dma-memory@a1000000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a1100000, size 31 MiB
    [    0.000000] OF: reserved mem: initialized node vision_apps-r5f-memory@a1100000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a3000000, size 1 MiB
    [    0.000000] OF: reserved mem: initialized node r5f-dma-memory@a3000000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a3100000, size 31 MiB
    [    0.000000] OF: reserved mem: initialized node vision_apps-r5f-memory@a3100000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a5000000, size 1 MiB
    [    0.000000] OF: reserved mem: initialized node vision_apps-r5f-dma-memory@a5000000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a5100000, size 7 MiB
    [    0.000000] OF: reserved mem: initialized node vision_apps-r5f-memory@a5100000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a5800000, size 1 MiB
    [    0.000000] OF: reserved mem: initialized node vision_apps-r5f-dma-memory@a5800000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a5900000, size 7 MiB
    [    0.000000] OF: reserved mem: initialized node vision_apps-r5f-memory@a5900000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a6000000, size 1 MiB
    [    0.000000] OF: reserved mem: initialized node c66-dma-memory@a6000000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a6100000, size 15 MiB
    [    0.000000] OF: reserved mem: initialized node c66-memory@a6100000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a7000000, size 1 MiB
    [    0.000000] OF: reserved mem: initialized node c66-dma-memory@a7000000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a7100000, size 15 MiB
    [    0.000000] OF: reserved mem: initialized node c66-memory@a7100000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a8000000, size 1 MiB
    [    0.000000] OF: reserved mem: initialized node c71-dma-memory@a8000000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a8100000, size 31 MiB
    [    0.000000] OF: reserved mem: initialized node c71-memory@a8100000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000ac000000, size 32 MiB
    [    0.000000] OF: reserved mem: initialized node vision_apps-dma-memory@ac000000, compatible id shared-dma-pool
    [    0.000000] OF: reserved mem: initialized node vision_apps_shared-memories, compatible id dma-heap-carveout
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000ce000000, size 720 MiB
    [    0.000000] OF: reserved mem: initialized node vision_apps-core-heap-memory@ce000000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000fb000000, size 1 MiB
    [    0.000000] OF: reserved mem: initialized node vision_apps-r5f-dma-memory@fb000000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000fb100000, size 15 MiB
    [    0.000000] OF: reserved mem: initialized node vision_apps-r5f-memory@fb100000, compatible id shared-dma-pool
    [    0.000000] cma: Failed to reserve 512 MiB
    [    0.000000] On node 0 totalpages: 27840
    [    0.000000]   DMA zone: 11 pages used for memmap
    [    0.000000]   DMA zone: 0 pages reserved
    [    0.000000]   DMA zone: 10368 pages, LIFO batch:1
    [    0.000000]   DMA32 zone: 16 pages used for memmap
    [    0.000000]   DMA32 zone: 18446744073709536320 pages, LIFO batch:3
    [    0.000000]   Normal zone: 32 pages used for memmap
    [    0.000000]   Normal zone: 32768 pages, LIFO batch:3
    [    0.000000] psci: probing for conduit method from DT.
    [    0.000000] psci: PSCIv1.1 detected in firmware.
    [    0.000000] psci: Using standard PSCI v0.2 function IDs
    [    0.000000] psci: Trusted OS migration not required
    [    0.000000] psci: SMC Calling Convention v1.0
    [    0.000000] percpu: Embedded 2 pages/cpu s48472 r8192 d74408 u131072
    [    0.000000] pcpu-alloc: s48472 r8192 d74408 u131072 alloc=2*65536
    [    0.000000] pcpu-alloc: [0] 0 [0] 1 
    [    0.000000] Detected PIPT I-cache on CPU0
    [    0.000000] CPU features: detected: GIC system register CPU interface
    [    0.000000] CPU features: detected: EL2 vector hardening
    [    0.000000] Built 1 zonelists, mobility grouping off.  Total pages: 27781
    ine_b),128k(ospi.misc_a),128k(ospi.misc_b),128k(ospi.factory),128k(ospi.safe_a),128k(ospi.safe_b),256k(ospi.sonardata),2m(ospi.mcudata),128k(ospi.imudata),128k(ospi.pstore),2m(ospi.reserved),128k@0x3fe0000(ospi.patterns),64m@0(ospi.whole_spi) blkdevparts=mmcblk0:32M(RECOVERY-A),32M(RECOVERY-B),1000M(OS-A),1000M(OS-B),7000M(APP-A),7000M(APP-B),7000M(CACHE),600M(PROFILE),2200M(LOG),-(DATA) loglevel=0 lpj=800000
    [    0.000000] Dentry cache hash table entries: 262144 (order: 5, 2097152 bytes, linear)
    [    0.000000] Inode-cache hash table entries: 131072 (order: 4, 1048576 bytes, linear)
    [    0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
    [    0.000000] software IO TLB: mapped [mem 0x90000000-0x94000000] (64MB)
    [    0.000000] Memory: 2434176K/1781760K available (9598K kernel code, 796K rwdata, 3776K rodata, 2880K init, 696K bss, 18446744073708899200K reserved, 0K cma-reserved)
    [    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=2, Nodes=1
    [    0.000000] rcu: Preemptible hierarchical RCU implementation.
    [    0.000000] rcu:     RCU restricting CPUs from NR_CPUS=256 to nr_cpu_ids=2.
    [    0.000000]  Tasks RCU enabled.
    [    0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 25 jiffies.
    [    0.000000] rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=2
    [    0.000000] NR_IRQS: 64, nr_irqs: 64, preallocated irqs: 0
    [    0.000000] GICv3: GIC: Using split EOI/Deactivate mode
    [    0.000000] GICv3: 960 SPIs implemented
    [    0.000000] GICv3: 0 Extended SPIs implemented
    [    0.000000] GICv3: Distributor has no Range Selector support
    [    0.000000] GICv3: 16 PPIs implemented
    [    0.000000] GICv3: no VLPI support, no direct LPI support
    [    0.000000] GICv3: CPU0: found redistributor 0 region 0:0x0000000001900000
    [    0.000000] ITS [mem 0x01820000-0x0182ffff]
    [    0.000000] GIC: enabling workaround for ITS: Socionext Synquacer pre-ITS
    [    0.000000] ITS@0x0000000001820000: allocated 1048576 Devices @8c0800000 (flat, esz 8, psz 64K, shr 0)
    [    0.000000] ITS: using cache flushing for cmd queue
    [    0.000000] GICv3: using LPI property table @0x00000008c00c0000
    [    0.000000] GIC: using cache flushing for LPI property table
    [    0.000000] GICv3: CPU0: using allocated LPI pending table @0x00000008c00d0000
    [    0.000000] random: get_random_bytes called from start_kernel+0x2b8/0x43c with crng_init=0
    [    0.000000] arch_timer: cp15 timer(s) running at 200.00MHz (phys).
    [    0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x2e2049d3e8, max_idle_ns: 440795210634 ns
    [    0.000001] sched_clock: 56 bits at 200MHz, resolution 5ns, wraps every 4398046511102ns
    [    0.000145] Console: colour dummy device 80x25
    [    0.000165] Calibrating delay loop (skipped) preset value.. 400.00 BogoMIPS (lpj=800000)
    [    0.000169] pid_max: default: 32768 minimum: 301
    [    0.000202] LSM: Security Framework initializing
    [    0.000231] Mount-cache hash table entries: 8192 (order: 0, 65536 bytes, linear)
    [    0.000243] Mountpoint-cache hash table entries: 8192 (order: 0, 65536 bytes, linear)
    [    0.001057] ASID allocator initialised with 32768 entries
    [    0.001102] rcu: Hierarchical SRCU implementation.
    [    0.001210] Platform MSI: gic-its@1820000 domain created
    [    0.001302] PCI/MSI: /bus@100000/interrupt-controller@1800000/gic-its@1820000 domain created
    [    0.001441] smp: Bringing up secondary CPUs ...
    [    0.002263] Detected PIPT I-cache on CPU1
    [    0.002279] GICv3: CPU1: found redistributor 1 region 0:0x0000000001920000
    [    0.002289] GICv3: CPU1: using allocated LPI pending table @0x00000008c00e0000
    [    0.002307] CPU1: Booted secondary processor 0x0000000001 [0x411fd080]
    [    0.002348] smp: Brought up 1 node, 2 CPUs
    [    0.002349] SMP: Total of 2 processors activated.
    [    0.002352] CPU features: detected: 32-bit EL0 Support
    [    0.002354] CPU features: detected: CRC32 instructions
    [    0.008441] CPU: All CPU(s) started at EL2
    [    0.008452] alternatives: patching kernel code
    [    0.008816] devtmpfs: initialized
    [    0.013023] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns
    [    0.013029] futex hash table entries: 512 (order: -1, 32768 bytes, linear)
    [    0.013119] pinctrl core: initialized pinctrl subsystem
    [    0.013435] NET: Registered protocol family 16
    [    0.013673] DMA: preallocated 256 KiB pool for atomic allocations
    [    0.013922] hw-breakpoint: found 6 breakpoint and 4 watchpoint registers.
    [    0.014357] pstore: Registered ramoops as persistent store backend
    [    0.014359] ramoops: using 0x20000@0xfdb00000, ecc: 0
    [    0.020363] HugeTLB registered 16.0 GiB page size, pre-allocated 0 pages
    [    0.020366] HugeTLB registered 512 MiB page size, pre-allocated 0 pages
    [    0.020368] HugeTLB registered 2.00 MiB page size, pre-allocated 0 pages
    [    0.021330] cryptd: max_cpu_qlen set to 1000
    [    0.023037] iommu: Default domain type: Translated 
    [    0.023146] SCSI subsystem initialized
    [    0.023253] mc: Linux media interface: v0.10
    [    0.023261] videodev: Linux video capture interface: v2.00
    [    0.023268] pps_core: LinuxPPS API ver. 1 registered
    [    0.023270] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
    [    0.023274] PTP clock support registered
    [    0.023282] EDAC MC: Ver: 3.0.0
    [    0.023699] FPGA manager framework
    [    0.024000] clocksource: Switched to clocksource arch_sys_counter
    [    0.024055] VFS: Disk quotas dquot_6.6.0
    [    0.024084] VFS: Dquot-cache hash table entries: 8192 (order 0, 65536 bytes)
    [    0.026052] Carveout Heap: Exported 512 MiB at 0x00000000ae000000
    [    0.026055] thermal_sys: Registered thermal governor 'step_wise'
    [    0.026057] thermal_sys: Registered thermal governor 'power_allocator'
    [    0.026300] NET: Registered protocol family 2
    [    0.026587] tcp_listen_portaddr_hash hash table entries: 4096 (order: 0, 65536 bytes, linear)
    [    0.026629] TCP established hash table entries: 16384 (order: 1, 131072 bytes, linear)
    [    0.026682] TCP bind hash table entries: 16384 (order: 2, 262144 bytes, linear)
    [    0.026798] TCP: Hash tables configured (established 16384 bind 16384)
    [    0.026848] UDP hash table entries: 2048 (order: 0, 65536 bytes, linear)
    [    0.026889] UDP-Lite hash table entries: 2048 (order: 0, 65536 bytes, linear)
    [    0.026973] NET: Registered protocol family 1
    [    0.027183] RPC: Registered named UNIX socket transport module.
    [    0.027185] RPC: Registered udp transport module.
    [    0.027186] RPC: Registered tcp transport module.
    [    0.027187] RPC: Registered tcp NFSv4.1 backchannel transport module.
    [    0.027192] PCI: CLS 0 bytes, default 64
    [    0.054212] hw perfevents: enabled with armv8_pmuv3 PMU driver, 7 counters available
    [    0.055948] Initialise system trusted keyrings
    [    0.056023] workingset: timestamp_bits=46 max_order=16 bucket_order=0
    [    0.057900] squashfs: version 4.0 (2009/01/31) Phillip Lougher
    [    0.058125] NFS: Registering the id_resolver key type
    [    0.058132] Key type id_resolver registered
    [    0.058133] Key type id_legacy registered
    [    0.058138] nfs4filelayout_init: NFSv4 File Layout Driver Registering...
    [    0.058140] Installing knfsd (copyright (C) 1996 okir@monad.swb.de).
    [    0.058464] 9p: Installing v9fs 9p2000 file system support
    [    0.065698] Key type asymmetric registered
    [    0.065701] Asymmetric key parser 'x509' registered
    [    0.065716] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 243)
    [    0.065718] io scheduler mq-deadline registered
    [    0.065720] io scheduler kyber registered
    [    0.066536] pinctrl-single 4301c000.pinmux: 94 pins, size 376
    [    0.066715] pinctrl-single 11c000.pinmux: 173 pins, size 692
    [    0.068335] k3-ringacc 2b800000.ringacc: Failed to get MSI domain
    [    0.068361] k3-ringacc 3c000000.ringacc: Failed to get MSI domain
    [    0.068441] ti-pat 31010000.pat: Found PAT Rev 1.0 with 16384 pages
    [    0.068448] debugfs: Directory '31010000.pat' with parent 'regmap' already present!
    [    0.068566] ti-pat 31011000.pat: Found PAT Rev 1.0 with 16384 pages
    [    0.068572] debugfs: Directory '31011000.pat' with parent 'regmap' already present!
    [    0.068661] ti-pat 31012000.pat: Found PAT Rev 1.0 with 16384 pages
    [    0.068667] debugfs: Directory '31012000.pat' with parent 'regmap' already present!
    [    0.068761] ti-pat 31013000.pat: Found PAT Rev 1.0 with 2048 pages
    [    0.068767] debugfs: Directory '31013000.pat' with parent 'regmap' already present!
    [    0.068855] ti-pat 31014000.pat: Found PAT Rev 1.0 with 2048 pages
    [    0.068861] debugfs: Directory '31014000.pat' with parent 'regmap' already present!
    [    0.070102] Serial: 8250/16550 driver, 10 ports, IRQ sharing enabled
    [    0.074597] brd: module loaded
    [    0.077261] loop: module loaded
    [    0.077287] mtip32xx Version 1.3.1
    [    0.077498] sysfs: cannot create duplicate filename '/devices/platform/dma_buf_phys'
    [    0.077502] CPU: 1 PID: 1 Comm: swapper/0 Not tainted 5.4.74-ACU-10.0.60.1 #168
    [    0.077504] Hardware name: Texas Instruments K3 J721E SoC (DT)
    [    0.077505] Call trace:
    [    0.077512]  dump_backtrace+0x0/0x140
    [    0.077514]  show_stack+0x14/0x20
    [    0.077520]  dump_stack+0xb4/0x114
    [    0.077525]  sysfs_warn_dup+0x5c/0x78
    [    0.077528]  sysfs_create_dir_ns+0xd8/0xf0
    [    0.077530]  kobject_add_internal+0x94/0x280
    [    0.077533]  kobject_add+0x90/0xf8
    [    0.077537]  device_add+0xdc/0x600
    [    0.077540]  platform_device_add+0xfc/0x228
    [    0.077542]  platform_device_register_full+0xc8/0x140
    [    0.077546]  dma_buf_phys_init+0x68/0x94
    [    0.077549]  do_one_initcall+0x50/0x1a8
    [    0.077554]  kernel_init_freeable+0x194/0x23c
    [    0.077556]  kernel_init+0x10/0xfc
    [    0.077558]  ret_from_fork+0x10/0x1c
    [    0.077561] kobject_add_internal failed for dma_buf_phys with -EEXIST, don't try to register things with the same name in the same directory.
    [    0.078240] libphy: Fixed MDIO Bus: probed
    [    0.078403] tun: Universal TUN/TAP device driver, 1.6
    [    0.078578] igbvf: Intel(R) Gigabit Virtual Function Network Driver - version 2.4.0-k
    [    0.078579] igbvf: Copyright (c) 2009 - 2012 Intel Corporation.
    [    0.078593] sky2: driver version 1.30
    [    0.078924] VFIO - User Level meta-driver version: 0.3
    [    0.079193] i2c /dev entries driver
    [    0.079426] Error: Driver 'k3-soc-thermal' is already registered, aborting...
    [    0.079602] sdhci: Secure Digital Host Controller Interface driver
    [    0.079603] sdhci: Copyright(c) Pierre Ossman
    [    0.079737] sdhci-pltfm: SDHCI platform and OF driver helper
    [    0.080096] ledtrig-cpu: registered to indicate activity on CPUs
    [    0.080596] optee: probing for conduit method from DT.
    [    0.080606] optee: revision 3.8 (199fca17)
    [    0.080876] optee: initialized driver
    [    0.081215] NET: Registered protocol family 17
    [    0.081272] 9pnet: Installing 9P2000 support
    [    0.081289] Key type dns_resolver registered
    [    0.081395] registered taskstats version 1
    [    0.081396] Loading compiled-in X.509 certificates
    [    0.082038] pstore: Using crash dump compression: deflate
    [    0.084046] k3-ringacc 2b800000.ringacc: Failed to get MSI domain
    [    0.084134] k3-ringacc 3c000000.ringacc: Failed to get MSI domain
    [    0.084864] ti-sci 44083000.dmsc: ABI: 3.1 (firmware rev 0x0014 '20.8.7--v2020.08d (Terrific Lla')
    [    0.108059] random: fast init done
    [    0.126515] ti-sci-intr bus@100000:interrupt-controller0: Interrupt Router 131 domain created
    [    0.126684] ti-sci-intr bus@100000:navss@30000000:interrupt-controller1: Interrupt Router 213 domain created
    [    0.126886] ti-sci-inta 33d00000.interrupt-controller: Interrupt Aggregator domain 209 created
    [    0.136816] cdns-torrent-phy 5050000.serdes: 4 lanes, max bit rate 5.400 Gbps
    [    0.136979] j721e-pcie 2910000.pcie: PCIe mode matched, role=1 mode=0
    [    0.137205] j721e-pcie 2910000.pcie-ep: PCIe mode not matched
    [    0.137210] j721e-pcie: probe of 2910000.pcie-ep failed with error -1
    [    0.137399] j721e-pcie 2920000.pcie: PCIe mode matched, role=1 mode=0
    [    0.138089] k3-ringacc 2b800000.ringacc: Ring Accelerator probed rings:286, gp-rings[96,20] sci-dev-id:235
    [    0.138091] k3-ringacc 2b800000.ringacc: dma-ring-reset-quirk: disabled
    [    0.138094] k3-ringacc 2b800000.ringacc: RA Proxy rev. 66346100, num_proxies:64
    [    0.139782] k3-ringacc 3c000000.ringacc: Ring Accelerator probed rings:1024, gp-rings[440,150] sci-dev-id:211
    [    0.139785] k3-ringacc 3c000000.ringacc: dma-ring-reset-quirk: disabled
    [    0.139787] k3-ringacc 3c000000.ringacc: RA Proxy rev. 66346100, num_proxies:64
    [    0.140164] printk: console [ttyS2] disabled
    [    0.140181] 2800000.serial: ttyS2 at MMIO 0x2800000 (irq = 11, base_baud = 3000000) is a 8250
    [    0.140203] printk: console [ttyS2] enabled
    [    0.140205] printk: bootconsole [ns16550a0] disabled
    [    0.140478] arm-smmu-v3 36600000.smmu: ias 48-bit, oas 48-bit (features 0x00001faf)
    [    0.142362] arm-smmu-v3 36600000.smmu: allocated 524288 entries for cmdq
    [    0.144294] arm-smmu-v3 36600000.smmu: allocated 524288 entries for evtq
    [    0.144930] arm-smmu-v3 36600000.smmu: msi_domain absent - falling back to wired irqs
    [    0.145906] am65-cpts 310d0000.cpts: CPTS ver 0x4e8a010a, freq:200000000, add_val:4 pps:0
    [    0.146112] value of fuse 0 is 0x2cb6daee
    [    0.146114] value of fuse 1 is 0xd6f385c6
    [    0.146115] value of fuse 2 is 0xb979dc0d
    [    0.146117] value of fuse 3 is 0x197999
    [    0.146122] k3_bandgap_probe and count is 5
    [    0.146124] id is 0 and i is 0 and err is -18
    [    0.146126] id is 0 and i is 1 and err is -50
    [    0.146128] id is 0 and i is 2 and err is -58
    [    0.146130] The errors in adc code for -40C, 30C & 125C 150C respectively:: -18 -50 -28 0
    [    0.146131] slope m1::-7 and const c1::-97
    [    0.146134] slope m2::21 and const c2::1318
    [    0.146137] slope m3::7 and const c3::926
    [    0.146166] id is 1 and i is 0 and err is -21
    [    0.146167] id is 1 and i is 1 and err is -53
    [    0.146169] id is 1 and i is 2 and err is -62
    [    0.146183] id is 2 and i is 0 and err is -19
    [    0.146185] id is 2 and i is 1 and err is -51
    [    0.146186] id is 2 and i is 2 and err is -68
    [    0.146200] id is 3 and i is 0 and err is -19
    [    0.146201] id is 3 and i is 1 and err is -52
    [    0.146203] id is 3 and i is 2 and err is -6
    [    0.146217] id is 4 and i is 0 and err is -20
    [    0.146219] id is 4 and i is 1 and err is -53
    [    0.146221] id is 4 and i is 2 and err is -64
    [    0.146237] Value of CTRLMMR_WKUP_RESET_SRC_STAT Register is 0x0
    [    0.146239] high_max is 742 and low_max is 736 and regval is 0x2e002e6
    [    0.247214] Value of WKUP_VTM_MISC_CTRL2 is 0x2e002e6
    [    0.247216] Value of WKUP_VTM_MISC_CTRL is 0x1
    [    0.247568] mmc0: CQHCI version 5.10
    [    0.288351] mmc0: SDHCI controller on 4f80000.sdhci [4f80000.sdhci] using ADMA 64-bit
    [    0.293054] omap-mailbox 31f80000.mailbox: omap mailbox rev 0x66fc7100
    [    0.293396] omap-mailbox 31f81000.mailbox: omap mailbox rev 0x66fc7100
    [    0.293700] omap-mailbox 31f82000.mailbox: omap mailbox rev 0x66fc7100
    [    0.294102] omap-mailbox 31f83000.mailbox: omap mailbox rev 0x66fc7100
    [    0.294426] omap-mailbox 31f84000.mailbox: omap mailbox rev 0x66fc7100
    [    0.296573] j721e-pcie 2910000.pcie: PCIe mode matched, role=1 mode=0
    [    0.552723] mmc0: Command Queue Engine enabled
    [    0.552728] mmc0: new HS200 MMC card at address 0001
    [    0.552932] mmcblk0: mmc0:0001 CJUD4R 59.6 GiB 
    [    0.553005] mmcblk0boot0: mmc0:0001 CJUD4R partition 1 31.9 MiB
    [    0.553082] mmcblk0boot1: mmc0:0001 CJUD4R partition 2 31.9 MiB
    [    0.553139] mmcblk0rpmb: mmc0:0001 CJUD4R partition 3 4.00 MiB, chardev (239:0)
    [    0.553348]  mmcblk0: p1(RECOVERY-A) p2(RECOVERY-B) p3(OS-A) p4(OS-B) p5(APP-A) p6(APP-B) p7(CACHE) p8(PROFILE) p9(LOG) p10(DATA)
    [    1.297930] j721e-pcie 2910000.pcie: host bridge /bus@100000/pcie@2910000 ranges:
    [    1.297948] j721e-pcie 2910000.pcie:    IO 0x18001000..0x18010fff -> 0x18001000
    [    1.297956] j721e-pcie 2910000.pcie:   MEM 0x18011000..0x1fffffff -> 0x18011000
    [    1.298022] j721e-pcie 2910000.pcie: PCI host bridge to bus 0000:00
    [    1.298025] pci_bus 0000:00: root bus resource [bus 00-0f]
    [    1.298029] pci_bus 0000:00: root bus resource [io  0x0000-0xffff] (bus address [0x18001000-0x18010fff])
    [    1.298032] pci_bus 0000:00: root bus resource [mem 0x18011000-0x1fffffff]
    [    1.298035] pci_bus 0000:00: PCIe host pci_scan_device devfn = 0
    [    1.298049] pci 0000:00:00.0: [104c:b00d] type 01 class 0x060400
    [    1.298061] pci_bus 0000:00: 2-byte config write to 0000:00:00.0 offset 0x4 may corrupt adjacent RW1C bits
    [    1.298065] pci_bus 0000:00: 2-byte config write to 0000:00:00.0 offset 0x4 may corrupt adjacent RW1C bits
    [    1.298086] pci_bus 0000:00: 2-byte config write to 0000:00:00.0 offset 0xe8 may corrupt adjacent RW1C bits
    [    1.298090] pci_bus 0000:00: 2-byte config write to 0000:00:00.0 offset 0x3e may corrupt adjacent RW1C bits
    [    1.298101] pci_bus 0000:00: 2-byte config write to 0000:00:00.0 offset 0x92 may corrupt adjacent RW1C bits
    [    1.298107] pci_bus 0000:00: 2-byte config write to 0000:00:00.0 offset 0xb2 may corrupt adjacent RW1C bits
    [    1.298136] pci 0000:00:00.0: supports D1
    [    1.298138] pci 0000:00:00.0: PME# supported from D0 D1 D3hot
    [    1.298142] pci_bus 0000:00: 2-byte config write to 0000:00:00.0 offset 0x84 may corrupt adjacent RW1C bits
    [    1.298345] pci_bus 0000:00: PCIe host pci_scan_device devfn = 8
    [    1.298398] pci_bus 0000:00: PCIe host pci_scan_device devfn = 16
    [    1.298445] pci_bus 0000:00: PCIe host pci_scan_device devfn = 24
    [    1.298490] pci_bus 0000:00: PCIe host pci_scan_device devfn = 32
    [    1.298536] pci_bus 0000:00: PCIe host pci_scan_device devfn = 40
    [    1.298581] pci_bus 0000:00: PCIe host pci_scan_device devfn = 48
    [    1.298626] pci_bus 0000:00: PCIe host pci_scan_device devfn = 56
    [    1.298671] pci_bus 0000:00: PCIe host pci_scan_device devfn = 64
    [    1.298716] pci_bus 0000:00: PCIe host pci_scan_device devfn = 72
    [    1.298761] pci_bus 0000:00: PCIe host pci_scan_device devfn = 80
    [    1.298806] pci_bus 0000:00: PCIe host pci_scan_device devfn = 88
    [    1.298851] pci_bus 0000:00: PCIe host pci_scan_device devfn = 96
    [    1.298896] pci_bus 0000:00: PCIe host pci_scan_device devfn = 104
    [    1.298941] pci_bus 0000:00: PCIe host pci_scan_device devfn = 112
    [    1.298986] pci_bus 0000:00: PCIe host pci_scan_device devfn = 120
    [    1.299030] pci_bus 0000:00: PCIe host pci_scan_device devfn = 128
    [    1.299075] pci_bus 0000:00: PCIe host pci_scan_device devfn = 136
    [    1.299121] pci_bus 0000:00: PCIe host pci_scan_device devfn = 144
    [    1.299165] pci_bus 0000:00: PCIe host pci_scan_device devfn = 152
    [    1.299211] pci_bus 0000:00: PCIe host pci_scan_device devfn = 160
    [    1.299256] pci_bus 0000:00: PCIe host pci_scan_device devfn = 168
    [    1.299301] pci_bus 0000:00: PCIe host pci_scan_device devfn = 176
    [    1.299345] pci_bus 0000:00: PCIe host pci_scan_device devfn = 184
    [    1.299390] pci_bus 0000:00: PCIe host pci_scan_device devfn = 192
    [    1.299435] pci_bus 0000:00: PCIe host pci_scan_device devfn = 200
    [    1.299480] pci_bus 0000:00: PCIe host pci_scan_device devfn = 208
    [    1.299525] pci_bus 0000:00: PCIe host pci_scan_device devfn = 216
    [    1.299570] pci_bus 0000:00: PCIe host pci_scan_device devfn = 224
    [    1.299615] pci_bus 0000:00: PCIe host pci_scan_device devfn = 232
    [    1.299660] pci_bus 0000:00: PCIe host pci_scan_device devfn = 240
    [    1.299704] pci_bus 0000:00: PCIe host pci_scan_device devfn = 248
    [    1.299752] pci 0000:00:00.0: bridge configuration invalid ([bus 00-00]), reconfiguring
    [    1.299755] pci_bus 0000:00: 2-byte config write to 0000:00:00.0 offset 0x3e may corrupt adjacent RW1C bits
    [    1.299759] pci_bus 0000:00: 2-byte config write to 0000:00:00.0 offset 0x3e may corrupt adjacent RW1C bits
    [    1.299764] pci_bus 0000:00: 2-byte config write to 0000:00:00.0 offset 0x3e may corrupt adjacent RW1C bits
    [    1.299801] pci_bus 0000:01: PCIe host pci_scan_device devfn = 0
    [    1.301199] pci_bus 0000:01: busn_res: [bus 01-0f] end is updated to 01
    [    1.301209] pci 0000:00:00.0: PCI bridge to [bus 01]
    [    1.301363] pcieport 0000:00:00.0: PME: Signaling with IRQ 368
    [    1.301466] pcieport 0000:00:00.0: AER: enabled with IRQ 368
    [    1.301793] j721e-pcie 2920000.pcie: PCIe mode matched, role=1 mode=0
    [    1.301836] j721e-pcie 2920000.pcie: Failed to get reset GPIO
    [    1.301850] j721e-pcie: probe of 2920000.pcie failed with error -16
    [    1.303238] ti-udma 285c0000.dma-controller: Channels: 26 (tchan: 13, rchan: 13, gp-rflow: 8)
    [    1.305014] ti-udma 31150000.dma-controller: Channels: 84 (tchan: 42, rchan: 42, gp-rflow: 16)
    [    1.307241] debugfs: Directory 'pd:242' with parent 'pm_genpd' already present!
    [    1.307257] debugfs: Directory 'pd:241' with parent 'pm_genpd' already present!
    [    1.307269] debugfs: Directory 'pd:240' with parent 'pm_genpd' already present!
    [    1.307282] debugfs: Directory 'pd:239' with parent 'pm_genpd' already present!
    [    1.307749] hctosys: unable to open rtc device (rtc0)
    [    1.324396] Freeing unused kernel memory: 2880K
    [    1.324411] Run /init as init process
    [    1.349725] EXT4-fs (mmcblk0p3): INFO: recovery required on readonly filesystem
    [    1.349728] EXT4-fs (mmcblk0p3): write access will be enabled during recovery
    [    1.357947] EXT4-fs (mmcblk0p3): orphan cleanup on readonly fs
    [    1.360898] EXT4-fs (mmcblk0p3): 27 orphan inodes deleted
    [    1.360901] EXT4-fs (mmcblk0p3): recovery complete
    [    1.368438] EXT4-fs (mmcblk0p3): mounted filesystem with ordered data mode. Opts: (null)
    [    1.377205] platform 5c00000.r5f: configured R5F for remoteproc mode
    [    1.377628] platform 5c00000.r5f: assigned reserved memory node vision_apps-r5f-dma-memory@a1000000
    [    1.377684] remoteproc remoteproc0: 5c00000.r5f is available
    [    1.378200] platform 5d00000.r5f: configured R5F for remoteproc mode
    [    1.378613] platform 5d00000.r5f: assigned reserved memory node r5f-dma-memory@a3000000
    [    1.378670] remoteproc remoteproc1: 5d00000.r5f is available
    [    1.380007] platform 5e00000.r5f: configured R5F for remoteproc mode
    [    1.380451] platform 5e00000.r5f: assigned reserved memory node vision_apps-r5f-dma-memory@a5000000
    [    1.380481] remoteproc remoteproc2: 5e00000.r5f is available
    [    1.380819] platform 5f00000.r5f: configured R5F for remoteproc mode
    [    1.381253] platform 5f00000.r5f: assigned reserved memory node vision_apps-r5f-dma-memory@a5800000
    [    1.381283] remoteproc remoteproc3: 5f00000.r5f is available
    [    1.394853] k3-dsp-rproc 4d80800000.dsp: assigned reserved memory node c66-dma-memory@a7000000
    [    1.394977] k3-dsp-rproc 4d80800000.dsp: configured DSP for remoteproc mode
    [    1.395059] k3-dsp-rproc 4d80800000.dsp: local reset is deasserted for device
    [    1.395233] remoteproc remoteproc4: 4d80800000.dsp is available
    [    1.395484] k3-dsp-rproc 4d81800000.dsp: assigned reserved memory node c66-dma-memory@a6000000
    [    1.395622] k3-dsp-rproc 4d81800000.dsp: configured DSP for remoteproc mode
    [    1.395702] k3-dsp-rproc 4d81800000.dsp: local reset is deasserted for device
    [    1.395875] remoteproc remoteproc5: 4d81800000.dsp is available
    [    1.396102] k3-dsp-rproc 64800000.dsp: assigned reserved memory node c71-dma-memory@a8000000
    [    1.396257] k3-dsp-rproc 64800000.dsp: configured DSP for remoteproc mode
    [    1.396278] remoteproc remoteproc6: 64800000.dsp is available
    [    1.492827] remoteproc remoteproc4: powering up 4d80800000.dsp
    [    1.492835] remoteproc remoteproc4: Booting fw image j7-c66_0-fw, size 2607812
    [    1.494156] k3-dsp-rproc 4d80800000.dsp: booting DSP core using boot addr = 0xa6200000
    [    1.494588]  remoteproc4#vdev0buffer: assigned reserved memory node c66-dma-memory@a7000000
    [    1.494633]  remoteproc4#vdev0buffer: registered virtio0 (type 7)
    [    1.494636] remoteproc remoteproc4: remote processor 4d80800000.dsp is now up
    [    1.496469] virtio_rpmsg_bus virtio0: rpmsg host is online
    [    1.524654] virtio_rpmsg_bus virtio0: creating channel rpmsg_chrdev addr 0xd
    [    1.524903] virtio_rpmsg_bus virtio0: creating channel rpmsg_chrdev addr 0x15
    [    1.530205] virtio_rpmsg_bus virtio0: creating channel ti.ipc4.ping-pong addr 0xe
    [    1.546621] remoteproc remoteproc2: powering up 5e00000.r5f
    [    1.546628] remoteproc remoteproc2: Booting fw image j7-main-r5f1_0-fw, size 5279876
    [    1.547629] platform 5e00000.r5f: booting R5F core using boot addr = 0x0
    [    1.547992]  remoteproc2#vdev0buffer: assigned reserved memory node vision_apps-r5f-dma-memory@a5000000
    [    1.548304] virtio_rpmsg_bus virtio1: rpmsg host is online
    [    1.548316]  remoteproc2#vdev0buffer: registered virtio1 (type 7)
    [    1.548319] remoteproc remoteproc2: remote processor 5e00000.r5f is now up
    [    1.551908] virtio_rpmsg_bus virtio1: creating channel rpmsg_chrdev addr 0x3c
    [    1.552053] virtio_rpmsg_bus virtio1: creating channel rpmsg_chrdev addr 0xd
    [    1.552128] virtio_rpmsg_bus virtio1: creating channel rpmsg_chrdev addr 0x15
    [    1.562159] remoteproc remoteproc0: powering up 5c00000.r5f
    [    1.562167] remoteproc remoteproc0: Booting fw image j7-main-r5f0_0-fw, size 6542460
    [    1.565808] platform 5c00000.r5f: booting R5F core using boot addr = 0x0
    [    1.566375]  remoteproc0#vdev0buffer: assigned reserved memory node vision_apps-r5f-dma-memory@a1000000
    [    1.566679] virtio_rpmsg_bus virtio2: rpmsg host is online
    [    1.566691]  remoteproc0#vdev0buffer: registered virtio2 (type 7)
    [    1.566694] remoteproc remoteproc0: remote processor 5c00000.r5f is now up
    [    1.599834] remoteproc remoteproc3: powering up 5f00000.r5f
    [    1.599842] remoteproc remoteproc3: Booting fw image j7-main-r5f1_1-fw, size 8027576
    [    1.601616] platform 5f00000.r5f: booting R5F core using boot addr = 0x0
    [    1.601898]  remoteproc3#vdev0buffer: assigned reserved memory node vision_apps-r5f-dma-memory@a5800000
    [    1.602203] virtio_rpmsg_bus virtio3: rpmsg host is online
    [    1.602214]  remoteproc3#vdev0buffer: registered virtio3 (type 7)
    [    1.602217] remoteproc remoteproc3: remote processor 5f00000.r5f is now up
    [    1.612505] virtio_rpmsg_bus virtio3: creating channel rpmsg_chrdev addr 0xd
    [    1.613015] virtio_rpmsg_bus virtio3: creating channel rpmsg_chrdev addr 0x15
    [    1.618292] virtio_rpmsg_bus virtio3: creating channel rpmsg_chrdev addr 0x16
    [    1.618428] virtio_rpmsg_bus virtio3: creating channel ti.ipc4.ping-pong addr 0xe
    [    1.641219] pvrsrvkm: loading out-of-tree module taints kernel.
    [    1.661543] PVR_K:  144: Read BVNC 22.104.208.318 from HW device registers
    [    1.661550] PVR_K:  144: RGX Device registered with BVNC 22.104.208.318
    [    1.661789] [drm] Initialized pvr 1.13.5776728 20170530 for 4e20000000.gpu on minor 0
    [    1.687635] remoteproc remoteproc6: powering up 64800000.dsp
    [    1.687642] remoteproc remoteproc6: Booting fw image j7-c71_0-fw, size 10100720
    [    1.689716] k3-dsp-rproc 64800000.dsp: booting DSP core using boot addr = 0xa8200000
    [    1.690325]  remoteproc6#vdev0buffer: assigned reserved memory node c71-dma-memory@a8000000
    [    1.690781] virtio_rpmsg_bus virtio4: rpmsg host is online
    [    1.690800]  remoteproc6#vdev0buffer: registered virtio4 (type 7)
    [    1.690803] remoteproc remoteproc6: remote processor 64800000.dsp is now up
    [    1.704696] remoteproc remoteproc5: powering up 4d81800000.dsp
    [    1.704703] remoteproc remoteproc5: Booting fw image j7-c66_1-fw, size 11931444
    [    1.706144] k3-dsp-rproc 4d81800000.dsp: booting DSP core using boot addr = 0xa7200000
    [    1.706258] remoteproc remoteproc1: powering up 5d00000.r5f
    [    1.706262] remoteproc remoteproc1: Booting fw image j7-main-r5f0_1-fw, size 13363896
    [    1.706742]  remoteproc5#vdev0buffer: assigned reserved memory node c66-dma-memory@a6000000
    [    1.707089] virtio_rpmsg_bus virtio5: rpmsg host is online
    [    1.707101]  remoteproc5#vdev0buffer: registered virtio5 (type 7)
    [    1.707104] remoteproc remoteproc5: remote processor 4d81800000.dsp is now up
    [    1.708925] platform 5d00000.r5f: booting R5F core using boot addr = 0x0
    [    1.709268]  remoteproc1#vdev0buffer: assigned reserved memory node r5f-dma-memory@a3000000
    [    1.709604] virtio_rpmsg_bus virtio6: rpmsg host is online
    [    1.709617]  remoteproc1#vdev0buffer: registered virtio6 (type 7)
    [    1.709620] remoteproc remoteproc1: remote processor 5d00000.r5f is now up
    [    1.737934] virtio_rpmsg_bus virtio6: creating channel rpmsg_chrdev addr 0xd
    [    1.738528] virtio_rpmsg_bus virtio6: creating channel rpmsg_chrdev addr 0x15
    [    1.739349] virtio_rpmsg_bus virtio5: creating channel rpmsg_chrdev addr 0xd
    [    1.739611] virtio_rpmsg_bus virtio5: creating channel rpmsg_chrdev addr 0x15
    [    1.742631] virtio_rpmsg_bus virtio4: creating channel rpmsg_chrdev addr 0xd
    [    1.742747] virtio_rpmsg_bus virtio4: creating channel rpmsg_chrdev addr 0x15
    [    1.743793] virtio_rpmsg_bus virtio4: creating channel ti.ipc4.ping-pong addr 0xe
    [    1.747417] virtio_rpmsg_bus virtio5: creating channel ti.ipc4.ping-pong addr 0xe
    [    1.761906] systemd[1]: System time before build time, advancing clock.
    [    1.778687] NET: Registered protocol family 10
    [    1.779003] Segment Routing with IPv6
    [    1.787900] systemd[1]: systemd 246 running in system mode. (-PAM -AUDIT -SELINUX -IMA -APPARMOR -SMACK -SYSVINIT -UTMP -LIBCRYPTSETUP +GCRYPT +GNUTLS -ACL +XZ -LZ4 -ZSTD -SECCOMP +BLKID -ELFUTILS +KMOD -IDN2 -IDN -PCRE2 default-hierarchy=hybrid)
    [    1.788076] systemd[1]: Detected architecture arm64.
    [    1.815803] virtio_rpmsg_bus virtio6: creating channel ti.ipc4.ping-pong addr 0xe
    [    1.828316] systemd[1]: Set hostname to <buildroot>.
    [    1.829574] random: systemd: uninitialized urandom read (16 bytes read)
    [    1.829585] systemd[1]: Initializing machine ID from random generator.
    [    1.829645] systemd[1]: Installed transient /etc/machine-id file.
    [    1.914010] systemd[1]: Queued start job for default target Multi-User System.
    [    1.914260] random: systemd: uninitialized urandom read (16 bytes read)
    [    1.914301] systemd[1]: system-serial\x2dgetty.slice: unit configures an IP firewall, but the local system does not support BPF/cgroup firewalling.
    [    1.914305] systemd[1]: (This warning is only shown for the first unit using IP firewalling.)
    [    1.915297] systemd[1]: Created slice system-serial\x2dgetty.slice.
    [    1.928077] random: systemd: uninitialized urandom read (16 bytes read)
    [    1.928155] systemd[1]: Started Dispatch Password Requests to Console Directory Watch.
    [    1.944106] systemd[1]: Started Forward Password Requests to Wall Directory Watch.
    [    1.960100] systemd[1]: Reached target Paths.
    [    1.972049] systemd[1]: Reached target Remote File Systems.
    [    1.984041] systemd[1]: Reached target Slices.
    [    1.996063] systemd[1]: Reached target Swap.
    [    2.008216] systemd[1]: Listening on Syslog Socket.
    [    2.023086] systemd[1]: Condition check resulted in Journal Audit Socket being skipped.
    [    2.023371] systemd[1]: Listening on Journal Socket (/dev/log).
    [    2.040221] systemd[1]: Listening on Journal Socket.
    [    2.052221] systemd[1]: Listening on udev Control Socket.
    [    2.068157] systemd[1]: Listening on udev Kernel Socket.
    [    2.081552] systemd[1]: Mounting Huge Pages File System...
    [    2.097780] systemd[1]: Mounting POSIX Message Queue File System...
    [    2.114302] systemd[1]: Mounting Kernel Debug File System...
    [    2.124207] systemd[1]: Condition check resulted in Kernel Trace File System being skipped.
    [    2.126228] systemd[1]: Mounting Temporary Directory (/tmp)...
    [    2.136123] systemd[1]: Condition check resulted in Create list of static device nodes for the current kernel being skipped.
    [    2.138397] systemd[1]: Starting Journal Service...
    [    2.150466] systemd[1]: Starting Load Kernel Modules...
    [    2.161729] systemd[1]: Starting Remount Root and Kernel File Systems...
    [    2.177820] systemd[1]: Starting Create Static Device Nodes in /dev...
    [    2.191120] systemd[1]: Starting Coldplug All udev Devices...
    [    2.206063] systemd[1]: Started Journal Service.
    [    2.364849] EXT4-fs (mmcblk0p5): mounted filesystem with ordered data mode. Opts: discard
    [    2.407286] EXT4-fs (mmcblk0p7): mounted filesystem with ordered data mode. Opts: discard
    [    2.441983] EXT4-fs (mmcblk0p8): mounted filesystem with ordered data mode. Opts: discard
    [    2.500104] EXT4-fs (mmcblk0p9): mounted filesystem with ordered data mode. Opts: discard
    [    2.581596] virtio_rpmsg_bus virtio2: creating channel rpmsg_chrdev addr 0xd
    [    2.582147] virtio_rpmsg_bus virtio2: creating channel rpmsg_chrdev addr 0x15
    [    2.596709] EXT4-fs (mmcblk0p10): mounted filesystem with ordered data mode. Opts: discard
    [    2.605011] EXT4-fs (mmcblk0p5): re-mounted. Opts: discard
    [    2.607871] EXT4-fs (mmcblk0p3): re-mounted. Opts: (null)
    [    2.702407] virtio_rpmsg_bus virtio2: creating channel ti.ethfw.notifyservice addr 0x1e
    [    2.702796] virtio_rpmsg_bus virtio2: creating channel rpmsg-kdrv addr 0x1a
    [    2.703262] rpmsg-kdrv-eth-switch rpmsg-kdrv-2-mpu_1_0_ethswitch-device-0: Device info: permissions: 07FFFFFF uart_id: 6
    [    2.703266] rpmsg-kdrv-eth-switch rpmsg-kdrv-2-mpu_1_0_ethswitch-device-0: FW ver 0.1 (rev 1) 25/May/2022 SHA:6c992bfe
    [    2.873430] cadence-qspi 47040000.spi: cqspi->wr_delay = 5600
    [    3.043688] probe pwm fan driver
    [    3.043688] 
    [    3.057679] j721e-cpsw-virt-mac main_r5fss_cpsw9g_virt_mac0: virt_cpsw_nuss mac loaded
    [    3.057685] j721e-cpsw-virt-mac main_r5fss_cpsw9g_virt_mac0: rdev_features:00000003 rdev_mtu:1522 flow_id:172 tx_psil_dst_id:4A00
    [    3.057688] j721e-cpsw-virt-mac main_r5fss_cpsw9g_virt_mac0: local_mac_addr:00:00:00:00:00:00 rdev_mac_addr:70:ff:76:1d:92:b1
    [    3.148155] create fan driver success
    [    3.148155] 
    [    3.231943] remoteproc remoteproc7: b034000.pru is available
    [    3.231974] pru-rproc b034000.pru: PRU rproc node /bus@100000/icssg@b000000/pru@34000 probed successfully
    [    3.234588] remoteproc remoteproc8: b004000.rtu is available
    [    3.234617] pru-rproc b004000.rtu: PRU rproc node /bus@100000/icssg@b000000/rtu@4000 probed successfully
    [    3.234697] pru-rproc b00a000.txpru: IRQ vring not found
    [    3.234700] pru-rproc b00a000.txpru: IRQ kick not found
    [    3.234736] remoteproc remoteproc9: b00a000.txpru is available
    [    3.234760] pru-rproc b00a000.txpru: PRU rproc node /bus@100000/icssg@b000000/txpru@a000 probed successfully
    [    3.234882] remoteproc remoteproc10: b038000.pru is available
    [    3.234903] pru-rproc b038000.pru: PRU rproc node /bus@100000/icssg@b000000/pru@38000 probed successfully
    [    3.235008] remoteproc remoteproc11: b006000.rtu is available
    [    3.235058] pru-rproc b006000.rtu: PRU rproc node /bus@100000/icssg@b000000/rtu@6000 probed successfully
    [    3.235126] pru-rproc b00c000.txpru: IRQ vring not found
    [    3.235129] pru-rproc b00c000.txpru: IRQ kick not found
    [    3.235154] remoteproc remoteproc12: b00c000.txpru is available
    [    3.235176] pru-rproc b00c000.txpru: PRU rproc node /bus@100000/icssg@b000000/txpru@c000 probed successfully
    [    3.264654] spi-nor spi0.0: Unknown command extension type
    [    3.264666] spi-nor spi0.0: Unknown command extension type
    [    3.281896] cadence-qspi 47040000.spi: Searching for rxlow on TX = 16
    [    3.965100] cdns-usb3 6000000.usb: DRD version v1 (ID: 0004024e, rev: 00000200)
    [    3.965489] cdns-usb3 6400000.usb: DRD version v1 (ID: 0004024e, rev: 00000200)
    [    3.975644] usbcore: registered new interface driver usbfs
    [    3.975662] usbcore: registered new interface driver hub
    [    3.977815] usbcore: registered new device driver usb
    [    3.983358] xhci-hcd xhci-hcd.0.auto: xHCI Host Controller
    [    3.983390] xhci-hcd xhci-hcd.0.auto: new USB bus registered, assigned bus number 1
    [    3.983832] xhci-hcd xhci-hcd.0.auto: hcc params 0x200073c9 hci version 0x100 quirks 0x0000000000010010
    [    3.983857] xhci-hcd xhci-hcd.0.auto: irq 479, io mem 0x06010000
    [    3.983987] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 5.04
    [    3.983990] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
    [    3.983992] usb usb1: Product: xHCI Host Controller
    [    3.984028] usb usb1: Manufacturer: Linux 5.4.74-ACU-10.0.60.1 xhci-hcd
    [    3.984033] usb usb1: SerialNumber: xhci-hcd.0.auto
    [    3.986896] hub 1-0:1.0: USB hub found
    [    3.986910] hub 1-0:1.0: 1 port detected
    [    3.987038] xhci-hcd xhci-hcd.0.auto: xHCI Host Controller
    [    3.987044] xhci-hcd xhci-hcd.0.auto: new USB bus registered, assigned bus number 2
    [    3.987051] xhci-hcd xhci-hcd.0.auto: Host supports USB 3.0 SuperSpeed
    [    3.987074] usb usb2: We don't know the algorithms for LPM for this host, disabling LPM.
    [    3.987110] usb usb2: New USB device found, idVendor=1d6b, idProduct=0003, bcdDevice= 5.04
    [    3.987113] usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
    [    3.987115] usb usb2: Product: xHCI Host Controller
    [    3.987117] usb usb2: Manufacturer: Linux 5.4.74-ACU-10.0.60.1 xhci-hcd
    [    3.987119] usb usb2: SerialNumber: xhci-hcd.0.auto
    [    3.987312] hub 2-0:1.0: USB hub found
    [    3.987322] hub 2-0:1.0: 1 port detected
    [    3.987494] xhci-hcd xhci-hcd.1.auto: xHCI Host Controller
    [    3.987501] xhci-hcd xhci-hcd.1.auto: new USB bus registered, assigned bus number 3
    [    3.987624] xhci-hcd xhci-hcd.1.auto: hcc params 0x200073c9 hci version 0x100 quirks 0x0000000000010010
    [    3.987647] xhci-hcd xhci-hcd.1.auto: irq 482, io mem 0x06410000
    [    3.987765] usb usb3: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 5.04
    [    3.987768] usb usb3: New USB device strings: Mfr=3, Product=2, SerialNumber=1
    [    3.987770] usb usb3: Product: xHCI Host Controller
    [    3.987772] usb usb3: Manufacturer: Linux 5.4.74-ACU-10.0.60.1 xhci-hcd
    [    3.987774] usb usb3: SerialNumber: xhci-hcd.1.auto
    [    3.987944] hub 3-0:1.0: USB hub found
    [    3.987956] hub 3-0:1.0: 1 port detected
    [    3.988098] xhci-hcd xhci-hcd.1.auto: xHCI Host Controller
    [    3.988104] xhci-hcd xhci-hcd.1.auto: new USB bus registered, assigned bus number 4
    [    3.988109] xhci-hcd xhci-hcd.1.auto: Host supports USB 3.0 SuperSpeed
    [    3.988132] usb usb4: We don't know the algorithms for LPM for this host, disabling LPM.
    [    3.988169] usb usb4: New USB device found, idVendor=1d6b, idProduct=0003, bcdDevice= 5.04
    [    3.988171] usb usb4: New USB device strings: Mfr=3, Product=2, SerialNumber=1
    [    3.988173] usb usb4: Product: xHCI Host Controller
    [    3.988176] usb usb4: Manufacturer: Linux 5.4.74-ACU-10.0.60.1 xhci-hcd
    [    3.988177] usb usb4: SerialNumber: xhci-hcd.1.auto
    [    3.988403] hub 4-0:1.0: USB hub found
    [    3.988415] hub 4-0:1.0: 1 port detected
    [    4.370045] virtio_rpmsg_bus virtio2: creating channel ti.ipc4.ping-pong addr 0xe
    [    4.444017] ti-udma 31150000.dma-controller: chan3 teardown timeout!
    [    4.448835] cadence-qspi 47040000.spi: DMA wait_for_completion_timeout
    [    4.448891] spi-nor spi0.0: operation failed with -110
    [    4.448939] cadence-qspi 47040000.spi: rxlow: RX: 1 TX: 16 RD: 1
    [    4.449658] cadence-qspi 47040000.spi: rxhigh: RX: 62 TX: 16 RD: 2
    [    4.449680] cadence-qspi 47040000.spi: txlow: RX: 16 TX: 0 RD: 1
    [    4.449993] cadence-qspi 47040000.spi: txhigh: RX: 16 TX: 62 RD: 2
    [    4.450049] cadence-qspi 47040000.spi: topright: RX: 62 TX: 62 RD: 3
    [    4.450052] cadence-qspi 47040000.spi: bottomleft: RX: 1 TX: 0 RD: 1
    [    4.450161] cadence-qspi 47040000.spi: gaplow: RX: 11 TX: 10 RD: 1
    [    4.450270] cadence-qspi 47040000.spi: gaphigh: RX: 30 TX: 30 RD: 3
    [    4.450273] cadence-qspi 47040000.spi: Final tuning point: RX: 47 TX: 46 RD: 3
    [    4.450294] cadence-qspi 47040000.spi: Failed to find pattern at final calibration point
    [    4.450296] cadence-qspi 47040000.spi: PHY calibration failed: -22
    [    4.450299] spi-nor spi0.0: mt35xu512aba (65536 Kbytes)
    [    4.450313] 19 cmdlinepart partitions found on MTD device 47040000.spi.0
    [    4.450314] Creating 19 MTD partitions on "47040000.spi.0":
    [    4.450318] 0x000000000000-0x000000080000 : "ospi.sbl"
    [    4.464726] 0x000000080000-0x000000100000 : "ospi.tifs_a"
    [    4.480663] 0x000000100000-0x000000180000 : "ospi.tifs_b"
    [    4.496612] 0x000000180000-0x000000580000 : "ospi.mcufw_a"
    [    4.512677] 0x000000580000-0x000000980000 : "ospi.mcufw_b"
    [    4.528639] 0x000000980000-0x000001d80000 : "ospi.combine_a"
    [    4.545204] 0x000001d80000-0x000003180000 : "ospi.combine_b"
    [    4.561633] 0x000003180000-0x0000031a0000 : "ospi.misc_a"
    [    4.576591] 0x0000031a0000-0x0000031c0000 : "ospi.misc_b"
    [    4.592476] 0x0000031c0000-0x0000031e0000 : "ospi.factory"
    [    4.612320] 0x0000031e0000-0x000003200000 : "ospi.safe_a"
    [    4.628272] 0x000003200000-0x000003220000 : "ospi.safe_b"
    [    4.644718] 0x000003220000-0x000003260000 : "ospi.sonardata"
    [    4.660703] 0x000003260000-0x000003460000 : "ospi.mcudata"
    [    4.676712] 0x000003460000-0x000003480000 : "ospi.imudata"
    [    4.692696] 0x000003480000-0x0000034a0000 : "ospi.pstore"
    [    4.708791] 0x0000034a0000-0x0000036a0000 : "ospi.reserved"
    [    4.724844] 0x000003fe0000-0x000004000000 : "ospi.patterns"
    [    4.740764] 0x000000000000-0x000004000000 : "ospi.whole_spi"
    [    5.304011] random: crng init done
    [    5.304015] random: 7 urandom warning(s) missed due to ratelimiting
    root@sixi_master:~# lsmod | grep spi
    spi_nor               262144  0
    spi_cadence_quadspi   327680  0
    
    root@sixi_master:~# dmesg 
    [    0.000000] Booting Linux on physical CPU 0x0000000000 [0x411fd080]
    [    0.000000] Linux version 5.4.74-ACU-10.0.60.1 (clsun@baidu) (gcc version 9.2.1 20191025 (GNU Toolchain for the A-profile Architecture 9.2-2019.12 (arm-9.10))) #168 SMP PREEMPT Fri Oct 21 15:17:05 CST 2022
    [    0.000000] Machine model: Texas Instruments K3 J721E SoC
    [    0.000000] earlycon: ns16550a0 at MMIO32 0x0000000002800000 (options '')
    [    0.000000] printk: bootconsole [ns16550a0] enabled
    [    0.000000] Reserved memory: created DMA memory pool at 0x0000000094000000, size 128 MiB
    [    0.000000] OF: reserved mem: initialized node vision_apps-core-heap-memory@94000000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a0000000, size 1 MiB
    [    0.000000] OF: reserved mem: initialized node r5f-dma-memory@a0000000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a0100000, size 15 MiB
    [    0.000000] OF: reserved mem: initialized node r5f-memory@a0100000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a1000000, size 1 MiB
    [    0.000000] OF: reserved mem: initialized node vision_apps-r5f-dma-memory@a1000000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a1100000, size 31 MiB
    [    0.000000] OF: reserved mem: initialized node vision_apps-r5f-memory@a1100000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a3000000, size 1 MiB
    [    0.000000] OF: reserved mem: initialized node r5f-dma-memory@a3000000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a3100000, size 31 MiB
    [    0.000000] OF: reserved mem: initialized node vision_apps-r5f-memory@a3100000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a5000000, size 1 MiB
    [    0.000000] OF: reserved mem: initialized node vision_apps-r5f-dma-memory@a5000000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a5100000, size 7 MiB
    [    0.000000] OF: reserved mem: initialized node vision_apps-r5f-memory@a5100000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a5800000, size 1 MiB
    [    0.000000] OF: reserved mem: initialized node vision_apps-r5f-dma-memory@a5800000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a5900000, size 7 MiB
    [    0.000000] OF: reserved mem: initialized node vision_apps-r5f-memory@a5900000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a6000000, size 1 MiB
    [    0.000000] OF: reserved mem: initialized node c66-dma-memory@a6000000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a6100000, size 15 MiB
    [    0.000000] OF: reserved mem: initialized node c66-memory@a6100000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a7000000, size 1 MiB
    [    0.000000] OF: reserved mem: initialized node c66-dma-memory@a7000000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a7100000, size 15 MiB
    [    0.000000] OF: reserved mem: initialized node c66-memory@a7100000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a8000000, size 1 MiB
    [    0.000000] OF: reserved mem: initialized node c71-dma-memory@a8000000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a8100000, size 31 MiB
    [    0.000000] OF: reserved mem: initialized node c71-memory@a8100000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000ac000000, size 32 MiB
    [    0.000000] OF: reserved mem: initialized node vision_apps-dma-memory@ac000000, compatible id shared-dma-pool
    [    0.000000] OF: reserved mem: initialized node vision_apps_shared-memories, compatible id dma-heap-carveout
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000ce000000, size 720 MiB
    [    0.000000] OF: reserved mem: initialized node vision_apps-core-heap-memory@ce000000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000fb000000, size 1 MiB
    [    0.000000] OF: reserved mem: initialized node vision_apps-r5f-dma-memory@fb000000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000fb100000, size 15 MiB
    [    0.000000] OF: reserved mem: initialized node vision_apps-r5f-memory@fb100000, compatible id shared-dma-pool
    [    0.000000] cma: Failed to reserve 512 MiB
    [    0.000000] On node 0 totalpages: 27840
    [    0.000000]   DMA zone: 11 pages used for memmap
    [    0.000000]   DMA zone: 0 pages reserved
    [    0.000000]   DMA zone: 10368 pages, LIFO batch:1
    [    0.000000]   DMA32 zone: 16 pages used for memmap
    [    0.000000]   DMA32 zone: 18446744073709536320 pages, LIFO batch:3
    [    0.000000]   Normal zone: 32 pages used for memmap
    [    0.000000]   Normal zone: 32768 pages, LIFO batch:3
    [    0.000000] psci: probing for conduit method from DT.
    [    0.000000] psci: PSCIv1.1 detected in firmware.
    [    0.000000] psci: Using standard PSCI v0.2 function IDs
    [    0.000000] psci: Trusted OS migration not required
    [    0.000000] psci: SMC Calling Convention v1.0
    [    0.000000] percpu: Embedded 2 pages/cpu s48472 r8192 d74408 u131072
    [    0.000000] pcpu-alloc: s48472 r8192 d74408 u131072 alloc=2*65536
    [    0.000000] pcpu-alloc: [0] 0 [0] 1 
    [    0.000000] Detected PIPT I-cache on CPU0
    [    0.000000] CPU features: detected: GIC system register CPU interface
    [    0.000000] CPU features: detected: EL2 vector hardening
    [    0.000000] Built 1 zonelists, mobility grouping off.  Total pages: 27781
    [    0.000000] Kernel command line: console=ttyS2,115200n8 earlycon=ns16550a,mmio32,0x02800000 mtdparts=47040000.spi.0:512k(ospi.sbl),512k(ospi.tifs_a),512k(ospi.tifs_b),4m(ospi.mcufw_a),4m(ospi.mcufw_b),20m(ospi.combine_a),20m(ospi.combine_b),128k(ospi.misc_a),128k(ospi.misc_b),128k(ospi.factory),128k(ospi.safe_a),128k(ospi.safe_b),256k(ospi.sonardata),2m(ospi.mcudata),128k(ospi.imudata),128k(ospi.pstore),2m(ospi.reserved),128k@0x3fe0000(ospi.patterns),64m@0(ospi.whole_spi) blkdevparts=mmcblk0:32M(RECOVERY-A),32M(RECOVERY-B),1000M(OS-A),1000M(OS-B),7000M(APP-A),7000M(APP-B),7000M(CACHE),600M(PROFILE),2200M(LOG),-(DATA) loglevel=0 lpj=800000
    [    0.000000] Dentry cache hash table entries: 262144 (order: 5, 2097152 bytes, linear)
    [    0.000000] Inode-cache hash table entries: 131072 (order: 4, 1048576 bytes, linear)
    [    0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
    [    0.000000] software IO TLB: mapped [mem 0x90000000-0x94000000] (64MB)
    [    0.000000] Memory: 2434176K/1781760K available (9598K kernel code, 796K rwdata, 3776K rodata, 2880K init, 696K bss, 18446744073708899200K reserved, 0K cma-reserved)
    [    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=2, Nodes=1
    [    0.000000] rcu: Preemptible hierarchical RCU implementation.
    [    0.000000] rcu:     RCU restricting CPUs from NR_CPUS=256 to nr_cpu_ids=2.
    [    0.000000]  Tasks RCU enabled.
    [    0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 25 jiffies.
    [    0.000000] rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=2
    [    0.000000] NR_IRQS: 64, nr_irqs: 64, preallocated irqs: 0
    [    0.000000] GICv3: GIC: Using split EOI/Deactivate mode
    [    0.000000] GICv3: 960 SPIs implemented
    [    0.000000] GICv3: 0 Extended SPIs implemented
    [    0.000000] GICv3: Distributor has no Range Selector support
    [    0.000000] GICv3: 16 PPIs implemented
    [    0.000000] GICv3: no VLPI support, no direct LPI support
    [    0.000000] GICv3: CPU0: found redistributor 0 region 0:0x0000000001900000
    [    0.000000] ITS [mem 0x01820000-0x0182ffff]
    [    0.000000] GIC: enabling workaround for ITS: Socionext Synquacer pre-ITS
    [    0.000000] ITS@0x0000000001820000: allocated 1048576 Devices @8c0800000 (flat, esz 8, psz 64K, shr 0)
    [    0.000000] ITS: using cache flushing for cmd queue
    [    0.000000] GICv3: using LPI property table @0x00000008c00c0000
    [    0.000000] GIC: using cache flushing for LPI property table
    [    0.000000] GICv3: CPU0: using allocated LPI pending table @0x00000008c00d0000
    [    0.000000] random: get_random_bytes called from start_kernel+0x2b8/0x43c with crng_init=0
    [    0.000000] arch_timer: cp15 timer(s) running at 200.00MHz (phys).
    [    0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x2e2049d3e8, max_idle_ns: 440795210634 ns
    [    0.000001] sched_clock: 56 bits at 200MHz, resolution 5ns, wraps every 4398046511102ns
    [    0.000145] Console: colour dummy device 80x25
    [    0.000165] Calibrating delay loop (skipped) preset value.. 400.00 BogoMIPS (lpj=800000)
    [    0.000169] pid_max: default: 32768 minimum: 301
    [    0.000203] LSM: Security Framework initializing
    [    0.000231] Mount-cache hash table entries: 8192 (order: 0, 65536 bytes, linear)
    [    0.000242] Mountpoint-cache hash table entries: 8192 (order: 0, 65536 bytes, linear)
    [    0.001033] ASID allocator initialised with 32768 entries
    [    0.001079] rcu: Hierarchical SRCU implementation.
    [    0.001187] Platform MSI: gic-its@1820000 domain created
    [    0.001277] PCI/MSI: /bus@100000/interrupt-controller@1800000/gic-its@1820000 domain created
    [    0.001410] smp: Bringing up secondary CPUs ...
    [    0.002062] Detected PIPT I-cache on CPU1
    [    0.002078] GICv3: CPU1: found redistributor 1 region 0:0x0000000001920000
    [    0.002088] GICv3: CPU1: using allocated LPI pending table @0x00000008c00e0000
    [    0.002107] CPU1: Booted secondary processor 0x0000000001 [0x411fd080]
    [    0.002147] smp: Brought up 1 node, 2 CPUs
    [    0.002149] SMP: Total of 2 processors activated.
    [    0.002152] CPU features: detected: 32-bit EL0 Support
    [    0.002154] CPU features: detected: CRC32 instructions
    [    0.008306] CPU: All CPU(s) started at EL2
    [    0.008316] alternatives: patching kernel code
    [    0.008680] devtmpfs: initialized
    [    0.012892] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns
    [    0.012898] futex hash table entries: 512 (order: -1, 32768 bytes, linear)
    [    0.012991] pinctrl core: initialized pinctrl subsystem
    [    0.013307] NET: Registered protocol family 16
    [    0.013545] DMA: preallocated 256 KiB pool for atomic allocations
    [    0.013797] hw-breakpoint: found 6 breakpoint and 4 watchpoint registers.
    [    0.014226] pstore: Registered ramoops as persistent store backend
    [    0.014228] ramoops: using 0x20000@0xfdb00000, ecc: 0
    [    0.020270] HugeTLB registered 16.0 GiB page size, pre-allocated 0 pages
    [    0.020274] HugeTLB registered 512 MiB page size, pre-allocated 0 pages
    [    0.020276] HugeTLB registered 2.00 MiB page size, pre-allocated 0 pages
    [    0.021309] cryptd: max_cpu_qlen set to 1000
    [    0.022996] iommu: Default domain type: Translated 
    [    0.023105] SCSI subsystem initialized
    [    0.023211] mc: Linux media interface: v0.10
    [    0.023219] videodev: Linux video capture interface: v2.00
    [    0.023227] pps_core: LinuxPPS API ver. 1 registered
    [    0.023228] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
    [    0.023233] PTP clock support registered
    [    0.023240] EDAC MC: Ver: 3.0.0
    [    0.023627] FPGA manager framework
    [    0.023945] clocksource: Switched to clocksource arch_sys_counter
    [    0.024005] VFS: Disk quotas dquot_6.6.0
    [    0.024043] VFS: Dquot-cache hash table entries: 8192 (order 0, 65536 bytes)
    [    0.026052] Carveout Heap: Exported 512 MiB at 0x00000000ae000000
    [    0.026056] thermal_sys: Registered thermal governor 'step_wise'
    [    0.026057] thermal_sys: Registered thermal governor 'power_allocator'
    [    0.026300] NET: Registered protocol family 2
    [    0.026574] tcp_listen_portaddr_hash hash table entries: 4096 (order: 0, 65536 bytes, linear)
    [    0.026617] TCP established hash table entries: 16384 (order: 1, 131072 bytes, linear)
    [    0.026670] TCP bind hash table entries: 16384 (order: 2, 262144 bytes, linear)
    [    0.026778] TCP: Hash tables configured (established 16384 bind 16384)
    [    0.026822] UDP hash table entries: 2048 (order: 0, 65536 bytes, linear)
    [    0.026862] UDP-Lite hash table entries: 2048 (order: 0, 65536 bytes, linear)
    [    0.026944] NET: Registered protocol family 1
    [    0.027136] RPC: Registered named UNIX socket transport module.
    [    0.027138] RPC: Registered udp transport module.
    [    0.027139] RPC: Registered tcp transport module.
    [    0.027140] RPC: Registered tcp NFSv4.1 backchannel transport module.
    [    0.027145] PCI: CLS 0 bytes, default 64
    [    0.054405] hw perfevents: enabled with armv8_pmuv3 PMU driver, 7 counters available
    [    0.056108] Initialise system trusted keyrings
    [    0.056162] workingset: timestamp_bits=46 max_order=16 bucket_order=0
    [    0.058104] squashfs: version 4.0 (2009/01/31) Phillip Lougher
    [    0.058322] NFS: Registering the id_resolver key type
    [    0.058328] Key type id_resolver registered
    [    0.058330] Key type id_legacy registered
    [    0.058334] nfs4filelayout_init: NFSv4 File Layout Driver Registering...
    [    0.058336] Installing knfsd (copyright (C) 1996 okir@monad.swb.de).
    [    0.058648] 9p: Installing v9fs 9p2000 file system support
    [    0.065675] Key type asymmetric registered
    [    0.065678] Asymmetric key parser 'x509' registered
    [    0.065693] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 243)
    [    0.065695] io scheduler mq-deadline registered
    [    0.065697] io scheduler kyber registered
    [    0.066515] pinctrl-single 4301c000.pinmux: 94 pins, size 376
    [    0.066687] pinctrl-single 11c000.pinmux: 173 pins, size 692
    [    0.068264] k3-ringacc 2b800000.ringacc: Failed to get MSI domain
    [    0.068290] k3-ringacc 3c000000.ringacc: Failed to get MSI domain
    [    0.068369] ti-pat 31010000.pat: Found PAT Rev 1.0 with 16384 pages
    [    0.068376] debugfs: Directory '31010000.pat' with parent 'regmap' already present!
    [    0.068487] ti-pat 31011000.pat: Found PAT Rev 1.0 with 16384 pages
    [    0.068493] debugfs: Directory '31011000.pat' with parent 'regmap' already present!
    [    0.068581] ti-pat 31012000.pat: Found PAT Rev 1.0 with 16384 pages
    [    0.068588] debugfs: Directory '31012000.pat' with parent 'regmap' already present!
    [    0.068684] ti-pat 31013000.pat: Found PAT Rev 1.0 with 2048 pages
    [    0.068689] debugfs: Directory '31013000.pat' with parent 'regmap' already present!
    [    0.068773] ti-pat 31014000.pat: Found PAT Rev 1.0 with 2048 pages
    [    0.068779] debugfs: Directory '31014000.pat' with parent 'regmap' already present!
    [    0.070015] Serial: 8250/16550 driver, 10 ports, IRQ sharing enabled
    [    0.074538] brd: module loaded
    [    0.077212] loop: module loaded
    [    0.077237] mtip32xx Version 1.3.1
    [    0.077459] sysfs: cannot create duplicate filename '/devices/platform/dma_buf_phys'
    [    0.077463] CPU: 1 PID: 1 Comm: swapper/0 Not tainted 5.4.74-ACU-10.0.60.1 #168
    [    0.077464] Hardware name: Texas Instruments K3 J721E SoC (DT)
    [    0.077466] Call trace:
    [    0.077472]  dump_backtrace+0x0/0x140
    [    0.077475]  show_stack+0x14/0x20
    [    0.077481]  dump_stack+0xb4/0x114
    [    0.077486]  sysfs_warn_dup+0x5c/0x78
    [    0.077488]  sysfs_create_dir_ns+0xd8/0xf0
    [    0.077491]  kobject_add_internal+0x94/0x280
    [    0.077493]  kobject_add+0x90/0xf8
    [    0.077497]  device_add+0xdc/0x600
    [    0.077501]  platform_device_add+0xfc/0x228
    [    0.077503]  platform_device_register_full+0xc8/0x140
    [    0.077508]  dma_buf_phys_init+0x68/0x94
    [    0.077510]  do_one_initcall+0x50/0x1a8
    [    0.077514]  kernel_init_freeable+0x194/0x23c
    [    0.077517]  kernel_init+0x10/0xfc
    [    0.077519]  ret_from_fork+0x10/0x1c
    [    0.077521] kobject_add_internal failed for dma_buf_phys with -EEXIST, don't try to register things with the same name in the same directory.
    [    0.078194] libphy: Fixed MDIO Bus: probed
    [    0.078356] tun: Universal TUN/TAP device driver, 1.6
    [    0.078533] igbvf: Intel(R) Gigabit Virtual Function Network Driver - version 2.4.0-k
    [    0.078534] igbvf: Copyright (c) 2009 - 2012 Intel Corporation.
    [    0.078547] sky2: driver version 1.30
    [    0.078874] VFIO - User Level meta-driver version: 0.3
    [    0.079148] i2c /dev entries driver
    [    0.079385] Error: Driver 'k3-soc-thermal' is already registered, aborting...
    [    0.079564] sdhci: Secure Digital Host Controller Interface driver
    [    0.079565] sdhci: Copyright(c) Pierre Ossman
    [    0.079683] sdhci-pltfm: SDHCI platform and OF driver helper
    [    0.080067] ledtrig-cpu: registered to indicate activity on CPUs
    [    0.080559] optee: probing for conduit method from DT.
    [    0.080569] optee: revision 3.8 (199fca17)
    [    0.080834] optee: initialized driver
    [    0.081172] NET: Registered protocol family 17
    [    0.081228] 9pnet: Installing 9P2000 support
    [    0.081246] Key type dns_resolver registered
    [    0.081364] registered taskstats version 1
    [    0.081365] Loading compiled-in X.509 certificates
    [    0.082017] pstore: Using crash dump compression: deflate
    [    0.084006] k3-ringacc 2b800000.ringacc: Failed to get MSI domain
    [    0.084090] k3-ringacc 3c000000.ringacc: Failed to get MSI domain
    [    0.084806] ti-sci 44083000.dmsc: ABI: 3.1 (firmware rev 0x0014 '20.8.7--v2020.08d (Terrific Lla')
    [    0.108033] random: fast init done
    [    0.126129] ti-sci-intr bus@100000:interrupt-controller0: Interrupt Router 131 domain created
    [    0.126294] ti-sci-intr bus@100000:navss@30000000:interrupt-controller1: Interrupt Router 213 domain created
    [    0.126469] ti-sci-inta 33d00000.interrupt-controller: Interrupt Aggregator domain 209 created
    [    0.136381] cdns-torrent-phy 5050000.serdes: 4 lanes, max bit rate 5.400 Gbps
    [    0.136512] j721e-pcie 2910000.pcie: PCIe mode matched, role=1 mode=0
    [    0.136733] j721e-pcie 2910000.pcie-ep: PCIe mode not matched
    [    0.136738] j721e-pcie: probe of 2910000.pcie-ep failed with error -1
    [    0.136895] j721e-pcie 2920000.pcie: PCIe mode matched, role=1 mode=0
    [    0.137648] k3-ringacc 2b800000.ringacc: Ring Accelerator probed rings:286, gp-rings[96,20] sci-dev-id:235
    [    0.137651] k3-ringacc 2b800000.ringacc: dma-ring-reset-quirk: disabled
    [    0.137653] k3-ringacc 2b800000.ringacc: RA Proxy rev. 66346100, num_proxies:64
    [    0.139123] k3-ringacc 3c000000.ringacc: Ring Accelerator probed rings:1024, gp-rings[440,150] sci-dev-id:211
    [    0.139126] k3-ringacc 3c000000.ringacc: dma-ring-reset-quirk: disabled
    [    0.139128] k3-ringacc 3c000000.ringacc: RA Proxy rev. 66346100, num_proxies:64
    [    0.139456] printk: console [ttyS2] disabled
    [    0.139473] 2800000.serial: ttyS2 at MMIO 0x2800000 (irq = 11, base_baud = 3000000) is a 8250
    [    0.139495] printk: console [ttyS2] enabled
    [    0.139497] printk: bootconsole [ns16550a0] disabled
    [    0.139767] arm-smmu-v3 36600000.smmu: ias 48-bit, oas 48-bit (features 0x00001faf)
    [    0.141683] arm-smmu-v3 36600000.smmu: allocated 524288 entries for cmdq
    [    0.143587] arm-smmu-v3 36600000.smmu: allocated 524288 entries for evtq
    [    0.144242] arm-smmu-v3 36600000.smmu: msi_domain absent - falling back to wired irqs
    [    0.145338] am65-cpts 310d0000.cpts: CPTS ver 0x4e8a010a, freq:200000000, add_val:4 pps:0
    [    0.145543] value of fuse 0 is 0x2cb6daee
    [    0.145545] value of fuse 1 is 0xd6f385c6
    [    0.145546] value of fuse 2 is 0xb979dc0d
    [    0.145548] value of fuse 3 is 0x197999
    [    0.145553] k3_bandgap_probe and count is 5
    [    0.145556] id is 0 and i is 0 and err is -18
    [    0.145558] id is 0 and i is 1 and err is -50
    [    0.145560] id is 0 and i is 2 and err is -58
    [    0.145562] The errors in adc code for -40C, 30C & 125C 150C respectively:: -18 -50 -28 0
    [    0.145563] slope m1::-7 and const c1::-97
    [    0.145566] slope m2::21 and const c2::1318
    [    0.145569] slope m3::7 and const c3::926
    [    0.145598] id is 1 and i is 0 and err is -21
    [    0.145600] id is 1 and i is 1 and err is -53
    [    0.145601] id is 1 and i is 2 and err is -62
    [    0.145615] id is 2 and i is 0 and err is -19
    [    0.145617] id is 2 and i is 1 and err is -51
    [    0.145619] id is 2 and i is 2 and err is -68
    [    0.145632] id is 3 and i is 0 and err is -19
    [    0.145634] id is 3 and i is 1 and err is -52
    [    0.145636] id is 3 and i is 2 and err is -6
    [    0.145651] id is 4 and i is 0 and err is -20
    [    0.145652] id is 4 and i is 1 and err is -53
    [    0.145654] id is 4 and i is 2 and err is -64
    [    0.145670] Value of CTRLMMR_WKUP_RESET_SRC_STAT Register is 0x0
    [    0.145672] high_max is 742 and low_max is 736 and regval is 0x2e002e6
    [    0.246655] Value of WKUP_VTM_MISC_CTRL2 is 0x2e002e6
    [    0.246657] Value of WKUP_VTM_MISC_CTRL is 0x1
    [    0.246999] mmc0: CQHCI version 5.10
    [    0.287780] mmc0: SDHCI controller on 4f80000.sdhci [4f80000.sdhci] using ADMA 64-bit
    [    0.292388] omap-mailbox 31f80000.mailbox: omap mailbox rev 0x66fc7100
    [    0.292719] omap-mailbox 31f81000.mailbox: omap mailbox rev 0x66fc7100
    [    0.293040] omap-mailbox 31f82000.mailbox: omap mailbox rev 0x66fc7100
    [    0.293397] omap-mailbox 31f83000.mailbox: omap mailbox rev 0x66fc7100
    [    0.293744] omap-mailbox 31f84000.mailbox: omap mailbox rev 0x66fc7100
    [    0.295934] j721e-pcie 2910000.pcie: PCIe mode matched, role=1 mode=0
    [    0.590417] mmc0: Command Queue Engine enabled
    [    0.590422] mmc0: new HS200 MMC card at address 0001
    [    0.590630] mmcblk0: mmc0:0001 CJUD4R 59.6 GiB 
    [    0.590703] mmcblk0boot0: mmc0:0001 CJUD4R partition 1 31.9 MiB
    [    0.590780] mmcblk0boot1: mmc0:0001 CJUD4R partition 2 31.9 MiB
    [    0.590834] mmcblk0rpmb: mmc0:0001 CJUD4R partition 3 4.00 MiB, chardev (239:0)
    [    0.591041]  mmcblk0: p1(RECOVERY-A) p2(RECOVERY-B) p3(OS-A) p4(OS-B) p5(APP-A) p6(APP-B) p7(CACHE) p8(PROFILE) p9(LOG) p10(DATA)
    [    1.288903] j721e-pcie 2910000.pcie: host bridge /bus@100000/pcie@2910000 ranges:
    [    1.288922] j721e-pcie 2910000.pcie:    IO 0x18001000..0x18010fff -> 0x18001000
    [    1.288930] j721e-pcie 2910000.pcie:   MEM 0x18011000..0x1fffffff -> 0x18011000
    [    1.288997] j721e-pcie 2910000.pcie: PCI host bridge to bus 0000:00
    [    1.289000] pci_bus 0000:00: root bus resource [bus 00-0f]
    [    1.289004] pci_bus 0000:00: root bus resource [io  0x0000-0xffff] (bus address [0x18001000-0x18010fff])
    [    1.289007] pci_bus 0000:00: root bus resource [mem 0x18011000-0x1fffffff]
    [    1.289010] pci_bus 0000:00: PCIe host pci_scan_device devfn = 0
    [    1.289024] pci 0000:00:00.0: [104c:b00d] type 01 class 0x060400
    [    1.289036] pci_bus 0000:00: 2-byte config write to 0000:00:00.0 offset 0x4 may corrupt adjacent RW1C bits
    [    1.289040] pci_bus 0000:00: 2-byte config write to 0000:00:00.0 offset 0x4 may corrupt adjacent RW1C bits
    [    1.289060] pci_bus 0000:00: 2-byte config write to 0000:00:00.0 offset 0xe8 may corrupt adjacent RW1C bits
    [    1.289064] pci_bus 0000:00: 2-byte config write to 0000:00:00.0 offset 0x3e may corrupt adjacent RW1C bits
    [    1.289075] pci_bus 0000:00: 2-byte config write to 0000:00:00.0 offset 0x92 may corrupt adjacent RW1C bits
    [    1.289081] pci_bus 0000:00: 2-byte config write to 0000:00:00.0 offset 0xb2 may corrupt adjacent RW1C bits
    [    1.289110] pci 0000:00:00.0: supports D1
    [    1.289112] pci 0000:00:00.0: PME# supported from D0 D1 D3hot
    [    1.289116] pci_bus 0000:00: 2-byte config write to 0000:00:00.0 offset 0x84 may corrupt adjacent RW1C bits
    [    1.289319] pci_bus 0000:00: PCIe host pci_scan_device devfn = 8
    [    1.289372] pci_bus 0000:00: PCIe host pci_scan_device devfn = 16
    [    1.289419] pci_bus 0000:00: PCIe host pci_scan_device devfn = 24
    [    1.289464] pci_bus 0000:00: PCIe host pci_scan_device devfn = 32
    [    1.289510] pci_bus 0000:00: PCIe host pci_scan_device devfn = 40
    [    1.289555] pci_bus 0000:00: PCIe host pci_scan_device devfn = 48
    [    1.289601] pci_bus 0000:00: PCIe host pci_scan_device devfn = 56
    [    1.289646] pci_bus 0000:00: PCIe host pci_scan_device devfn = 64
    [    1.289691] pci_bus 0000:00: PCIe host pci_scan_device devfn = 72
    [    1.289736] pci_bus 0000:00: PCIe host pci_scan_device devfn = 80
    [    1.289781] pci_bus 0000:00: PCIe host pci_scan_device devfn = 88
    [    1.289827] pci_bus 0000:00: PCIe host pci_scan_device devfn = 96
    [    1.289872] pci_bus 0000:00: PCIe host pci_scan_device devfn = 104
    [    1.289917] pci_bus 0000:00: PCIe host pci_scan_device devfn = 112
    [    1.289962] pci_bus 0000:00: PCIe host pci_scan_device devfn = 120
    [    1.290007] pci_bus 0000:00: PCIe host pci_scan_device devfn = 128
    [    1.290052] pci_bus 0000:00: PCIe host pci_scan_device devfn = 136
    [    1.290098] pci_bus 0000:00: PCIe host pci_scan_device devfn = 144
    [    1.290143] pci_bus 0000:00: PCIe host pci_scan_device devfn = 152
    [    1.290188] pci_bus 0000:00: PCIe host pci_scan_device devfn = 160
    [    1.290233] pci_bus 0000:00: PCIe host pci_scan_device devfn = 168
    [    1.290278] pci_bus 0000:00: PCIe host pci_scan_device devfn = 176
    [    1.290323] pci_bus 0000:00: PCIe host pci_scan_device devfn = 184
    [    1.290368] pci_bus 0000:00: PCIe host pci_scan_device devfn = 192
    [    1.290413] pci_bus 0000:00: PCIe host pci_scan_device devfn = 200
    [    1.290458] pci_bus 0000:00: PCIe host pci_scan_device devfn = 208
    [    1.290503] pci_bus 0000:00: PCIe host pci_scan_device devfn = 216
    [    1.290548] pci_bus 0000:00: PCIe host pci_scan_device devfn = 224
    [    1.290593] pci_bus 0000:00: PCIe host pci_scan_device devfn = 232
    [    1.290639] pci_bus 0000:00: PCIe host pci_scan_device devfn = 240
    [    1.290684] pci_bus 0000:00: PCIe host pci_scan_device devfn = 248
    [    1.290731] pci 0000:00:00.0: bridge configuration invalid ([bus 00-00]), reconfiguring
    [    1.290734] pci_bus 0000:00: 2-byte config write to 0000:00:00.0 offset 0x3e may corrupt adjacent RW1C bits
    [    1.290739] pci_bus 0000:00: 2-byte config write to 0000:00:00.0 offset 0x3e may corrupt adjacent RW1C bits
    [    1.290743] pci_bus 0000:00: 2-byte config write to 0000:00:00.0 offset 0x3e may corrupt adjacent RW1C bits
    [    1.290780] pci_bus 0000:01: PCIe host pci_scan_device devfn = 0
    [    1.292176] pci_bus 0000:01: busn_res: [bus 01-0f] end is updated to 01
    [    1.292186] pci 0000:00:00.0: PCI bridge to [bus 01]
    [    1.292340] pcieport 0000:00:00.0: PME: Signaling with IRQ 368
    [    1.292445] pcieport 0000:00:00.0: AER: enabled with IRQ 368
    [    1.292751] j721e-pcie 2920000.pcie: PCIe mode matched, role=1 mode=0
    [    1.292795] j721e-pcie 2920000.pcie: Failed to get reset GPIO
    [    1.292808] j721e-pcie: probe of 2920000.pcie failed with error -16
    [    1.293800] ti-udma 285c0000.dma-controller: Channels: 26 (tchan: 13, rchan: 13, gp-rflow: 8)
    [    1.295521] ti-udma 31150000.dma-controller: Channels: 84 (tchan: 42, rchan: 42, gp-rflow: 16)
    [    1.297780] debugfs: Directory 'pd:242' with parent 'pm_genpd' already present!
    [    1.297795] debugfs: Directory 'pd:241' with parent 'pm_genpd' already present!
    [    1.297808] debugfs: Directory 'pd:240' with parent 'pm_genpd' already present!
    [    1.297820] debugfs: Directory 'pd:239' with parent 'pm_genpd' already present!
    [    1.298284] hctosys: unable to open rtc device (rtc0)
    [    1.314792] Freeing unused kernel memory: 2880K
    [    1.314807] Run /init as init process
    [    1.340837] EXT4-fs (mmcblk0p3): INFO: recovery required on readonly filesystem
    [    1.340840] EXT4-fs (mmcblk0p3): write access will be enabled during recovery
    [    1.368370] EXT4-fs (mmcblk0p3): recovery complete
    [    1.369144] EXT4-fs (mmcblk0p3): mounted filesystem with ordered data mode. Opts: (null)
    [    1.378366] platform 5c00000.r5f: configured R5F for remoteproc mode
    [    1.378795] platform 5c00000.r5f: assigned reserved memory node vision_apps-r5f-dma-memory@a1000000
    [    1.378850] remoteproc remoteproc0: 5c00000.r5f is available
    [    1.379336] platform 5d00000.r5f: configured R5F for remoteproc mode
    [    1.379776] platform 5d00000.r5f: assigned reserved memory node r5f-dma-memory@a3000000
    [    1.379833] remoteproc remoteproc1: 5d00000.r5f is available
    [    1.381048] platform 5e00000.r5f: configured R5F for remoteproc mode
    [    1.381557] platform 5e00000.r5f: assigned reserved memory node vision_apps-r5f-dma-memory@a5000000
    [    1.381586] remoteproc remoteproc2: 5e00000.r5f is available
    [    1.381940] platform 5f00000.r5f: configured R5F for remoteproc mode
    [    1.382388] platform 5f00000.r5f: assigned reserved memory node vision_apps-r5f-dma-memory@a5800000
    [    1.382418] remoteproc remoteproc3: 5f00000.r5f is available
    [    1.396184] k3-dsp-rproc 4d80800000.dsp: assigned reserved memory node c66-dma-memory@a7000000
    [    1.396300] k3-dsp-rproc 4d80800000.dsp: configured DSP for remoteproc mode
    [    1.396398] k3-dsp-rproc 4d80800000.dsp: local reset is deasserted for device
    [    1.396573] remoteproc remoteproc4: 4d80800000.dsp is available
    [    1.396818] k3-dsp-rproc 4d81800000.dsp: assigned reserved memory node c66-dma-memory@a6000000
    [    1.396960] k3-dsp-rproc 4d81800000.dsp: configured DSP for remoteproc mode
    [    1.397037] k3-dsp-rproc 4d81800000.dsp: local reset is deasserted for device
    [    1.397472] remoteproc remoteproc5: 4d81800000.dsp is available
    [    1.397865] k3-dsp-rproc 64800000.dsp: assigned reserved memory node c71-dma-memory@a8000000
    [    1.398014] k3-dsp-rproc 64800000.dsp: configured DSP for remoteproc mode
    [    1.398035] remoteproc remoteproc6: 64800000.dsp is available
    [    1.529060] remoteproc remoteproc4: powering up 4d80800000.dsp
    [    1.529069] remoteproc remoteproc4: Booting fw image j7-c66_0-fw, size 2607812
    [    1.530813] k3-dsp-rproc 4d80800000.dsp: booting DSP core using boot addr = 0xa6200000
    [    1.531205]  remoteproc4#vdev0buffer: assigned reserved memory node c66-dma-memory@a7000000
    [    1.531543] virtio_rpmsg_bus virtio0: rpmsg host is online
    [    1.531555]  remoteproc4#vdev0buffer: registered virtio0 (type 7)
    [    1.531558] remoteproc remoteproc4: remote processor 4d80800000.dsp is now up
    [    1.545729] remoteproc remoteproc0: powering up 5c00000.r5f
    [    1.545816] remoteproc remoteproc0: Booting fw image j7-main-r5f0_0-fw, size 6542460
    [    1.554327] platform 5c00000.r5f: booting R5F core using boot addr = 0x0
    [    1.555969]  remoteproc0#vdev0buffer: assigned reserved memory node vision_apps-r5f-dma-memory@a1000000
    [    1.556281] virtio_rpmsg_bus virtio1: rpmsg host is online
    [    1.556292]  remoteproc0#vdev0buffer: registered virtio1 (type 7)
    [    1.556295] remoteproc remoteproc0: remote processor 5c00000.r5f is now up
    [    1.562154] virtio_rpmsg_bus virtio0: creating channel rpmsg_chrdev addr 0xd
    [    1.562405] virtio_rpmsg_bus virtio0: creating channel rpmsg_chrdev addr 0x15
    [    1.567578] virtio_rpmsg_bus virtio0: creating channel ti.ipc4.ping-pong addr 0xe
    [    1.570106] remoteproc remoteproc2: powering up 5e00000.r5f
    [    1.570113] remoteproc remoteproc2: Booting fw image j7-main-r5f1_0-fw, size 5279876
    [    1.571042] platform 5e00000.r5f: booting R5F core using boot addr = 0x0
    [    1.571372]  remoteproc2#vdev0buffer: assigned reserved memory node vision_apps-r5f-dma-memory@a5000000
    [    1.571671] virtio_rpmsg_bus virtio2: rpmsg host is online
    [    1.571682]  remoteproc2#vdev0buffer: registered virtio2 (type 7)
    [    1.571685] remoteproc remoteproc2: remote processor 5e00000.r5f is now up
    [    1.575408] virtio_rpmsg_bus virtio2: creating channel rpmsg_chrdev addr 0x3c
    [    1.575523] virtio_rpmsg_bus virtio2: creating channel rpmsg_chrdev addr 0xd
    [    1.575595] virtio_rpmsg_bus virtio2: creating channel rpmsg_chrdev addr 0x15
    [    1.607858] remoteproc remoteproc3: powering up 5f00000.r5f
    [    1.607866] remoteproc remoteproc3: Booting fw image j7-main-r5f1_1-fw, size 8027576
    [    1.609518] platform 5f00000.r5f: booting R5F core using boot addr = 0x0
    [    1.609811]  remoteproc3#vdev0buffer: assigned reserved memory node vision_apps-r5f-dma-memory@a5800000
    [    1.610110] virtio_rpmsg_bus virtio3: rpmsg host is online
    [    1.610122]  remoteproc3#vdev0buffer: registered virtio3 (type 7)
    [    1.610125] remoteproc remoteproc3: remote processor 5f00000.r5f is now up
    [    1.620487] virtio_rpmsg_bus virtio3: creating channel rpmsg_chrdev addr 0xd
    [    1.621053] virtio_rpmsg_bus virtio3: creating channel rpmsg_chrdev addr 0x15
    [    1.626281] virtio_rpmsg_bus virtio3: creating channel rpmsg_chrdev addr 0x16
    [    1.626420] virtio_rpmsg_bus virtio3: creating channel ti.ipc4.ping-pong addr 0xe
    [    1.649213] pvrsrvkm: loading out-of-tree module taints kernel.
    [    1.668765] PVR_K:  144: Read BVNC 22.104.208.318 from HW device registers
    [    1.668771] PVR_K:  144: RGX Device registered with BVNC 22.104.208.318
    [    1.669305] [drm] Initialized pvr 1.13.5776728 20170530 for 4e20000000.gpu on minor 0
    [    1.698472] remoteproc remoteproc6: powering up 64800000.dsp
    [    1.698478] remoteproc remoteproc6: Booting fw image j7-c71_0-fw, size 10100720
    [    1.700280] k3-dsp-rproc 64800000.dsp: booting DSP core using boot addr = 0xa8200000
    [    1.700811]  remoteproc6#vdev0buffer: assigned reserved memory node c71-dma-memory@a8000000
    [    1.701123] virtio_rpmsg_bus virtio4: rpmsg host is online
    [    1.701135]  remoteproc6#vdev0buffer: registered virtio4 (type 7)
    [    1.701137] remoteproc remoteproc6: remote processor 64800000.dsp is now up
    [    1.702757] remoteproc remoteproc1: powering up 5d00000.r5f
    [    1.702763] remoteproc remoteproc1: Booting fw image j7-main-r5f0_1-fw, size 13363896
    [    1.704752] platform 5d00000.r5f: booting R5F core using boot addr = 0x0
    [    1.705062]  remoteproc1#vdev0buffer: assigned reserved memory node r5f-dma-memory@a3000000
    [    1.705369] virtio_rpmsg_bus virtio5: rpmsg host is online
    [    1.705384]  remoteproc1#vdev0buffer: registered virtio5 (type 7)
    [    1.705386] remoteproc remoteproc1: remote processor 5d00000.r5f is now up
    [    1.707760] remoteproc remoteproc5: powering up 4d81800000.dsp
    [    1.707765] remoteproc remoteproc5: Booting fw image j7-c66_1-fw, size 11931444
    [    1.709211] k3-dsp-rproc 4d81800000.dsp: booting DSP core using boot addr = 0xa7200000
    [    1.710592]  remoteproc5#vdev0buffer: assigned reserved memory node c66-dma-memory@a6000000
    [    1.711002] virtio_rpmsg_bus virtio6: rpmsg host is online
    [    1.711014]  remoteproc5#vdev0buffer: registered virtio6 (type 7)
    [    1.711017] remoteproc remoteproc5: remote processor 4d81800000.dsp is now up
    [    1.729981] virtio_rpmsg_bus virtio5: creating channel rpmsg_chrdev addr 0xd
    [    1.730594] virtio_rpmsg_bus virtio5: creating channel rpmsg_chrdev addr 0x15
    [    1.750527] virtio_rpmsg_bus virtio6: creating channel rpmsg_chrdev addr 0xd
    [    1.750803] virtio_rpmsg_bus virtio6: creating channel rpmsg_chrdev addr 0x15
    [    1.754163] virtio_rpmsg_bus virtio4: creating channel rpmsg_chrdev addr 0xd
    [    1.754268] virtio_rpmsg_bus virtio4: creating channel rpmsg_chrdev addr 0x15
    [    1.755323] virtio_rpmsg_bus virtio4: creating channel ti.ipc4.ping-pong addr 0xe
    [    1.756671] virtio_rpmsg_bus virtio6: creating channel ti.ipc4.ping-pong addr 0xe
    [    1.763273] systemd[1]: System time before build time, advancing clock.
    [    1.780324] NET: Registered protocol family 10
    [    1.780643] Segment Routing with IPv6
    rchy=hybrid)
    [    1.789837] systemd[1]: Detected architecture arm64.
    [    1.811232] virtio_rpmsg_bus virtio5: creating channel ti.ipc4.ping-pong addr 0xe
    [    1.824267] systemd[1]: Set hostname to <buildroot>.
    [    1.825528] random: systemd: uninitialized urandom read (16 bytes read)
    [    1.825539] systemd[1]: Initializing machine ID from random generator.
    [    1.825599] systemd[1]: Installed transient /etc/machine-id file.
    [    1.910742] systemd[1]: Queued start job for default target Multi-User System.
    [    1.910994] random: systemd: uninitialized urandom read (16 bytes read)
    [    1.911037] systemd[1]: system-serial\x2dgetty.slice: unit configures an IP firewall, but the local system does not support BPF/cgroup firewalling.
    [    1.911042] systemd[1]: (This warning is only shown for the first unit using IP firewalling.)
    [    1.912055] systemd[1]: Created slice system-serial\x2dgetty.slice.
    [    1.924045] random: systemd: uninitialized urandom read (16 bytes read)
    [    1.924121] systemd[1]: Started Dispatch Password Requests to Console Directory Watch.
    [    1.940049] systemd[1]: Started Forward Password Requests to Wall Directory Watch.
    [    1.956056] systemd[1]: Reached target Paths.
    [    1.967994] systemd[1]: Reached target Remote File Systems.
    [    1.979989] systemd[1]: Reached target Slices.
    [    1.991999] systemd[1]: Reached target Swap.
    [    2.004149] systemd[1]: Listening on Syslog Socket.
    [    2.019036] systemd[1]: Condition check resulted in Journal Audit Socket being skipped.
    [    2.019315] systemd[1]: Listening on Journal Socket (/dev/log).
    [    2.036163] systemd[1]: Listening on Journal Socket.
    [    2.048164] systemd[1]: Listening on udev Control Socket.
    [    2.060093] systemd[1]: Listening on udev Kernel Socket.
    [    2.073522] systemd[1]: Mounting Huge Pages File System...
    [    2.089697] systemd[1]: Mounting POSIX Message Queue File System...
    [    2.101741] systemd[1]: Mounting Kernel Debug File System...
    [    2.112167] systemd[1]: Condition check resulted in Kernel Trace File System being skipped.
    [    2.113925] systemd[1]: Mounting Temporary Directory (/tmp)...
    [    2.124067] systemd[1]: Condition check resulted in Create list of static device nodes for the current kernel being skipped.
    [    2.126583] systemd[1]: Starting Journal Service...
    [    2.138351] systemd[1]: Starting Load Kernel Modules...
    [    2.149712] systemd[1]: Starting Remount Root and Kernel File Systems...
    [    2.165687] systemd[1]: Starting Create Static Device Nodes in /dev...
    [    2.182054] systemd[1]: Starting Coldplug All udev Devices...
    [    2.193981] systemd[1]: Started Journal Service.
    [    2.360630] EXT4-fs (mmcblk0p5): mounted filesystem with ordered data mode. Opts: discard
    [    2.392693] EXT4-fs (mmcblk0p7): mounted filesystem with ordered data mode. Opts: discard
    [    2.430012] EXT4-fs (mmcblk0p8): mounted filesystem with ordered data mode. Opts: discard
    [    2.509792] EXT4-fs (mmcblk0p9): mounted filesystem with ordered data mode. Opts: discard
    [    2.528948] EXT4-fs (mmcblk0p10): mounted filesystem with ordered data mode. Opts: discard
    [    2.537722] EXT4-fs (mmcblk0p5): re-mounted. Opts: discard
    [    2.540740] EXT4-fs (mmcblk0p3): re-mounted. Opts: (null)
    [    2.568899] virtio_rpmsg_bus virtio1: creating channel rpmsg_chrdev addr 0xd
    [    2.569474] virtio_rpmsg_bus virtio1: creating channel rpmsg_chrdev addr 0x15
    [    2.688831] virtio_rpmsg_bus virtio1: creating channel ti.ethfw.notifyservice addr 0x1e
    [    2.689220] virtio_rpmsg_bus virtio1: creating channel rpmsg-kdrv addr 0x1a
    [    2.689686] rpmsg-kdrv-eth-switch rpmsg-kdrv-2-mpu_1_0_ethswitch-device-0: Device info: permissions: 07FFFFFF uart_id: 6
    [    2.689690] rpmsg-kdrv-eth-switch rpmsg-kdrv-2-mpu_1_0_ethswitch-device-0: FW ver 0.1 (rev 1) 25/May/2022 SHA:6c992bfe
    [    2.860825] cadence-qspi 47040000.spi: cqspi->wr_delay = 5600
    [    2.955874] probe pwm fan driver
    [    2.955874] 
    [    2.998731] j721e-cpsw-virt-mac main_r5fss_cpsw9g_virt_mac0: virt_cpsw_nuss mac loaded
    [    2.998738] j721e-cpsw-virt-mac main_r5fss_cpsw9g_virt_mac0: rdev_features:00000003 rdev_mtu:1522 flow_id:172 tx_psil_dst_id:4A00
    [    2.998742] j721e-cpsw-virt-mac main_r5fss_cpsw9g_virt_mac0: local_mac_addr:00:00:00:00:00:00 rdev_mac_addr:70:ff:76:1d:92:b1
    [    3.080073] create fan driver success
    [    3.080073] 
    [    3.148662] remoteproc remoteproc7: b034000.pru is available
    [    3.148727] pru-rproc b034000.pru: PRU rproc node /bus@100000/icssg@b000000/pru@34000 probed successfully
    [    3.153500] remoteproc remoteproc8: b004000.rtu is available
    [    3.153528] pru-rproc b004000.rtu: PRU rproc node /bus@100000/icssg@b000000/rtu@4000 probed successfully
    [    3.155666] pru-rproc b00a000.txpru: IRQ vring not found
    [    3.155670] pru-rproc b00a000.txpru: IRQ kick not found
    [    3.155703] remoteproc remoteproc9: b00a000.txpru is available
    [    3.155730] pru-rproc b00a000.txpru: PRU rproc node /bus@100000/icssg@b000000/txpru@a000 probed successfully
    [    3.156203] spi-nor spi0.0: unrecognized JEDEC id bytes: ff ff ff ff ff ff
    [    3.156217] spi-nor: probe of spi0.0 failed with error -2
    [    3.160646] remoteproc remoteproc10: b038000.pru is available
    [    3.160674] pru-rproc b038000.pru: PRU rproc node /bus@100000/icssg@b000000/pru@38000 probed successfully
    [    3.162011] remoteproc remoteproc11: b006000.rtu is available
    [    3.162037] pru-rproc b006000.rtu: PRU rproc node /bus@100000/icssg@b000000/rtu@6000 probed successfully
    [    3.165119] pru-rproc b00c000.txpru: IRQ vring not found
    [    3.165123] pru-rproc b00c000.txpru: IRQ kick not found
    [    3.165154] remoteproc remoteproc12: b00c000.txpru is available
    [    3.165178] pru-rproc b00c000.txpru: PRU rproc node /bus@100000/icssg@b000000/txpru@c000 probed successfully
    [    3.813056] cdns-usb3 6000000.usb: DRD version v1 (ID: 0004024e, rev: 00000200)
    [    3.813433] cdns-usb3 6400000.usb: DRD version v1 (ID: 0004024e, rev: 00000200)
    [    3.827222] usbcore: registered new interface driver usbfs
    [    3.827384] usbcore: registered new interface driver hub
    [    3.827749] usbcore: registered new device driver usb
    [    3.833769] xhci-hcd xhci-hcd.0.auto: xHCI Host Controller
    [    3.833781] xhci-hcd xhci-hcd.0.auto: new USB bus registered, assigned bus number 1
    [    3.834222] xhci-hcd xhci-hcd.0.auto: hcc params 0x200073c9 hci version 0x100 quirks 0x0000000000010010
    [    3.834248] xhci-hcd xhci-hcd.0.auto: irq 479, io mem 0x06010000
    [    3.834632] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 5.04
    [    3.834636] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
    [    3.834638] usb usb1: Product: xHCI Host Controller
    [    3.834640] usb usb1: Manufacturer: Linux 5.4.74-ACU-10.0.60.1 xhci-hcd
    [    3.834643] usb usb1: SerialNumber: xhci-hcd.0.auto
    [    3.835583] hub 1-0:1.0: USB hub found
    [    3.835611] hub 1-0:1.0: 1 port detected
    [    3.836191] xhci-hcd xhci-hcd.0.auto: xHCI Host Controller
    [    3.836201] xhci-hcd xhci-hcd.0.auto: new USB bus registered, assigned bus number 2
    [    3.836209] xhci-hcd xhci-hcd.0.auto: Host supports USB 3.0 SuperSpeed
    [    3.836240] usb usb2: We don't know the algorithms for LPM for this host, disabling LPM.
    [    3.836285] usb usb2: New USB device found, idVendor=1d6b, idProduct=0003, bcdDevice= 5.04
    [    3.836288] usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
    [    3.836290] usb usb2: Product: xHCI Host Controller
    [    3.836292] usb usb2: Manufacturer: Linux 5.4.74-ACU-10.0.60.1 xhci-hcd
    [    3.836294] usb usb2: SerialNumber: xhci-hcd.0.auto
    [    3.836717] hub 2-0:1.0: USB hub found
    [    3.836731] hub 2-0:1.0: 1 port detected
    [    3.837200] xhci-hcd xhci-hcd.1.auto: xHCI Host Controller
    [    3.837209] xhci-hcd xhci-hcd.1.auto: new USB bus registered, assigned bus number 3
    [    3.837334] xhci-hcd xhci-hcd.1.auto: hcc params 0x200073c9 hci version 0x100 quirks 0x0000000000010010
    [    3.837361] xhci-hcd xhci-hcd.1.auto: irq 482, io mem 0x06410000
    [    3.837486] usb usb3: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 5.04
    [    3.837489] usb usb3: New USB device strings: Mfr=3, Product=2, SerialNumber=1
    [    3.837491] usb usb3: Product: xHCI Host Controller
    [    3.837493] usb usb3: Manufacturer: Linux 5.4.74-ACU-10.0.60.1 xhci-hcd
    [    3.837495] usb usb3: SerialNumber: xhci-hcd.1.auto
    [    3.837875] hub 3-0:1.0: USB hub found
    [    3.837887] hub 3-0:1.0: 1 port detected
    [    3.838210] xhci-hcd xhci-hcd.1.auto: xHCI Host Controller
    [    3.838216] xhci-hcd xhci-hcd.1.auto: new USB bus registered, assigned bus number 4
    [    3.838222] xhci-hcd xhci-hcd.1.auto: Host supports USB 3.0 SuperSpeed
    [    3.838245] usb usb4: We don't know the algorithms for LPM for this host, disabling LPM.
    [    3.838281] usb usb4: New USB device found, idVendor=1d6b, idProduct=0003, bcdDevice= 5.04
    [    3.838283] usb usb4: New USB device strings: Mfr=3, Product=2, SerialNumber=1
    [    3.838286] usb usb4: Product: xHCI Host Controller
    [    3.838288] usb usb4: Manufacturer: Linux 5.4.74-ACU-10.0.60.1 xhci-hcd
    [    3.838290] usb usb4: SerialNumber: xhci-hcd.1.auto
    [    3.838648] hub 4-0:1.0: USB hub found
    [    3.838661] hub 4-0:1.0: 1 port detected
    [    4.347995] usb 2-1: new SuperSpeed Gen 1 USB device number 2 using xhci-hcd
    [    4.363678] virtio_rpmsg_bus virtio1: creating channel ti.ipc4.ping-pong addr 0xe
    [    4.368636] usb 2-1: New USB device found, idVendor=0781, idProduct=5591, bcdDevice= 1.00
    [    4.368640] usb 2-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
    [    4.368643] usb 2-1: Product:  SanDisk 3.2Gen1
    [    4.368645] usb 2-1: Manufacturer:  USB
    [    4.368647] usb 2-1: SerialNumber: 0101d35a93e66aec654be21628d9c2a5c1b2e318cea1806640dab498256586fa33cf00000000000000000000b27c5de2ff9f4f0091558107332c2e5a
    [    4.378374] usb-storage 2-1:1.0: USB Mass Storage device detected
    [    4.382712] scsi host0: usb-storage 2-1:1.0
    [    4.383686] usbcore: registered new interface driver usb-storage
    [    5.151959] random: crng init done
    [    5.151963] random: 7 urandom warning(s) missed due to ratelimiting
    [    5.412838] scsi 0:0:0:0: Direct-Access      USB      SanDisk 3.2Gen1 1.00 PQ: 0 ANSI: 6
    [    5.415521] sd 0:0:0:0: [sda] 60125184 512-byte logical blocks: (30.8 GB/28.7 GiB)
    [    5.416738] sd 0:0:0:0: [sda] Write Protect is off
    [    5.416742] sd 0:0:0:0: [sda] Mode Sense: 43 00 00 00
    [    5.416992] sd 0:0:0:0: [sda] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA
    [    5.439297]  sda: sda1
    [    5.442474] sd 0:0:0:0: [sda] Attached SCSI removable disk
    root@sixi_master:~# lsmod | grep spi
    spi_nor               262144  0
    spi_cadence_quadspi   327680  0
    root@sixi_master:~# 
    root@sixi_master:~# 
    root@sixi_master:~# 
    root@sixi_master:~# dmesg | grep spi
    [    0.000000] Kernel command line: console=ttyS2,115200n8 earlycon=ns16550a,mmio32,0x02800000 mtdparts=47040000.spi.0:512k(ospi.sbl),512k(ospi.tifs_a),512k(ospi.tifs_b),4m(ospi.mcufw_a),4m(ospi.mcufw_b),20m(ospi.combine_a),20m(ospi.combine_b),128k(ospi.misc_a),128k(ospi.misc_b),128k(ospi.factory),128k(ospi.safe_a),128k(ospi.safe_b),256k(ospi.sonardata),2m(ospi.mcudata),128k(ospi.imudata),128k(ospi.pstore),2m(ospi.reserved),128k@0x3fe0000(ospi.patterns),64m@0(ospi.whole_spi) blkdevparts=mmcblk0:32M(RECOVERY-A),32M(RECOVERY-B),1000M(OS-A),1000M(OS-B),7000M(APP-A),7000M(APP-B),7000M(CACHE),600M(PROFILE),2200M(LOG),-(DATA) loglevel=0 lpj=800000
    [    2.860825] cadence-qspi 47040000.spi: cqspi->wr_delay = 5600
    [    3.156203] spi-nor spi0.0: unrecognized JEDEC id bytes: ff ff ff ff ff ff
    [    3.156217] spi-nor: probe of spi0.0 failed with error -2
    
     

  • Hi,

    The case with reset is failing with the calibration pattern not found error.


    [ 4.450294] cadence-qspi 47040000.spi: Failed to find pattern at final calibration point
    [ 4.450296] cadence-qspi 47040000.spi: PHY calibration failed: -22

    Is the Phy calibration pattern flashed at the right address?

    Also after that can you rmmod the spi_cadence_quadspi & then modprobe so that it will effectively act as a resetting the controller and flash, so If the phy calibration passes the second time then we can suspect that the SBL did not leave the controller in proper state as the kernel expects.

    Best Regards,
    Keerthy