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.

AM3357: AM3357

Part Number: AM3357

Hi Ti, 

We are running the latest kernel 5.10 from SDK am335x-evm-linux-sdk-src-08.02.00.24 from Ti on our custom board, we are running a deep sleep loop test, with rtc wake set to 30 secs, We are seeing a failure to enter deep sleep after couple of iterations, once we see this suspend failure error, the system is still responding and running but when we try to put it to sleep the next time system hangs, the only way to recover is to do a power reboot.

The command used to put to sleep is rtcwake

Processor Information:

```

processor : 0
model name : ARMv7 Processor rev 2 (v7l)
BogoMIPS : 715.89
Features : half thumb fastmult vfp edsp thumbee neon vfpv3 tls vfpd32
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x3
CPU part : 0xc08
CPU revision : 2

```

When the system fails to enter deep sleep we are seeing the following failure in the log:

Feb 02 00:38:28 vg3x-0-4-0-debug kernel: PM: suspend entry (deep)
Feb 02 00:38:28 vg3x-0-4-0-debug kernel: Filesystems sync: 0.001 seconds
Feb 02 00:38:28 vg3x-0-4-0-debug kernel: Freezing user space processes ... (elapsed 0.006 seconds) done.
Feb 02 00:38:28 vg3x-0-4-0-debug kernel: OOM killer disabled.
Feb 02 00:38:28 vg3x-0-4-0-debug kernel: Freezing remaining freezable tasks ... (elapsed 0.001 seconds) done.
Feb 02 00:38:28 vg3x-0-4-0-debug kernel: pm33xx pm33xx: PM: Kernel suspend failure
Feb 02 00:38:28 vg3x-0-4-0-debug kernel: net can0: c_can_hw_raminit_wait_syscon: time out
Feb 02 00:38:28 vg3x-0-4-0-debug kernel: c_can_platform 481cc000.can can0: setting BTR=1c02 BRPE=0000
Feb 02 00:38:28 vg3x-0-4-0-debug kernel: net can1: c_can_hw_raminit_wait_syscon: time out
Feb 02 00:38:28 vg3x-0-4-0-debug kernel: c_can_platform 481d0000.can can1: setting BTR=1c02 BRPE=0000
Feb 02 00:38:28 vg3x-0-4-0-debug kernel: OOM killer enabled.
Feb 02 00:38:28 vg3x-0-4-0-debug kernel: Restarting tasks ... done.

Corresponding dmesg output is as follows:

vg3x-0-3-3-debug_mem_ftrace.txt

We even tried to capture the ftrace, dmesg logs which are attached to this thread, with init_call_debug passed to the kernel, we cannot find any issues with the drivers during pre, late suspend.

Any thoughts on how to further debug or collect more information to pinpoint the problem is much appreciated. I

My Observation:

It looks like from the dmesg output, the only error line we can observe is pm33xx pm33xx: PM: Kernel suspend failure, the failure seems to be coming from a very low level i.e the stage where the CM3 tries to take control. we would like to understand how we can further debug this to pinpoint the root cause they by arrive at a solution.

Also,

We have not tried this on a eval-kit, as the problem is when we are running only the latest kernel 5.10 fromTi sdk am335x-evm-linux-sdk-src-08.02.00.24, the previous kernel 4.19 from Ti we do not have this issue on our board.

  • The dmesg output is below:

    vg3x-0-3-3-debug_mem_dmesg.txt

    The custom kernel defconfig is below:

    # CONFIG_LOCALVERSION_AUTO is not set
    CONFIG_KERNEL_XZ=y
    CONFIG_SYSVIPC=y
    CONFIG_POSIX_MQUEUE=y
    CONFIG_AUDIT=y
    CONFIG_NO_HZ=y
    CONFIG_HIGH_RES_TIMERS=y
    CONFIG_BPF_SYSCALL=y
    CONFIG_BPF_JIT=y
    CONFIG_BPF_JIT_ALWAYS_ON=y
    CONFIG_PREEMPT=y
    CONFIG_BSD_PROCESS_ACCT=y
    CONFIG_IKCONFIG=y
    CONFIG_IKCONFIG_PROC=y
    CONFIG_MEMCG=y
    CONFIG_BLK_CGROUP=y
    CONFIG_CFS_BANDWIDTH=y
    CONFIG_RT_GROUP_SCHED=y
    CONFIG_CGROUP_FREEZER=y
    CONFIG_CGROUP_DEVICE=y
    CONFIG_CGROUP_CPUACCT=y
    CONFIG_CGROUP_PERF=y
    CONFIG_NAMESPACES=y
    CONFIG_USER_NS=y
    CONFIG_SCHED_AUTOGROUP=y
    CONFIG_KALLSYMS_ALL=y
    CONFIG_USERFAULTFD=y
    CONFIG_KCMP=y
    CONFIG_EMBEDDED=y
    CONFIG_PROFILING=y
    CONFIG_OMAP_RESET_CLOCKS=y
    CONFIG_SOC_AM33XX=y
    CONFIG_SOC_HAS_OMAP2_SDRC=y
    CONFIG_ARM_THUMBEE=y
    CONFIG_SWP_EMULATE=y
    CONFIG_VDSO=y
    CONFIG_PL310_ERRATA_588369=y
    CONFIG_PL310_ERRATA_727915=y
    CONFIG_ARM_ERRATA_430973=y
    CONFIG_ARM_ERRATA_720789=y
    CONFIG_ARM_ERRATA_754322=y
    CONFIG_ARM_ERRATA_775420=y
    CONFIG_HZ_200=y
    CONFIG_THUMB2_KERNEL=y
    CONFIG_CMDLINE="root=/dev/mmcblk0p2 rootwait console=ttyS0,115200"
    CONFIG_KEXEC=y
    CONFIG_CPU_FREQ=y
    CONFIG_CPU_FREQ_STAT=y
    CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE=y
    CONFIG_CPU_FREQ_GOV_PERFORMANCE=y
    CONFIG_CPU_FREQ_GOV_POWERSAVE=y
    CONFIG_CPU_FREQ_GOV_ONDEMAND=y
    CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y
    CONFIG_CPUFREQ_DT=y
    CONFIG_CPU_IDLE=y
    CONFIG_CPU_IDLE_GOV_LADDER=y
    CONFIG_ARM_CPUIDLE=y
    CONFIG_PM_DEBUG=y
    CONFIG_PM_ADVANCED_DEBUG=y
    CONFIG_ARM_CRYPTO=y
    CONFIG_CRYPTO_SHA1_ARM=m
    CONFIG_CRYPTO_SHA256_ARM=m
    CONFIG_CRYPTO_SHA512_ARM=m
    CONFIG_CRYPTO_AES_ARM=m
    CONFIG_CRYPTO_CHACHA20_NEON=m
    CONFIG_KPROBES=y
    # CONFIG_GCC_PLUGINS is not set
    CONFIG_MODULES=y
    CONFIG_MODULE_FORCE_LOAD=y
    CONFIG_MODULE_UNLOAD=y
    CONFIG_MODULE_FORCE_UNLOAD=y
    CONFIG_MODVERSIONS=y
    CONFIG_MODULE_SRCVERSION_ALL=y
    CONFIG_BLK_CGROUP_IOPRIO=y
    CONFIG_PARTITION_ADVANCED=y
    CONFIG_IOSCHED_BFQ=m
    CONFIG_BFQ_GROUP_IOSCHED=y
    CONFIG_BINFMT_MISC=y
    CONFIG_CMA=y
    CONFIG_CMA_SYSFS=y
    CONFIG_ZSMALLOC=m
    CONFIG_NET=y
    CONFIG_PACKET=y
    CONFIG_PACKET_DIAG=m
    CONFIG_UNIX=y
    CONFIG_UNIX_DIAG=m
    CONFIG_TLS=m
    CONFIG_TLS_DEVICE=y
    CONFIG_XFRM_USER=y
    CONFIG_NET_KEY=y
    CONFIG_NET_KEY_MIGRATE=y
    CONFIG_INET=y
    CONFIG_IP_MULTICAST=y
    CONFIG_IP_ADVANCED_ROUTER=y
    CONFIG_IP_PNP=y
    CONFIG_IP_PNP_DHCP=y
    CONFIG_IP_PNP_BOOTP=y
    CONFIG_IP_PNP_RARP=y
    CONFIG_INET_ESP=m
    CONFIG_INET_UDP_DIAG=m
    CONFIG_INET_RAW_DIAG=m
    CONFIG_INET_DIAG_DESTROY=y
    # CONFIG_IPV6 is not set
    CONFIG_NETFILTER=y
    CONFIG_BRIDGE_NETFILTER=m
    CONFIG_NF_CONNTRACK=m
    CONFIG_NF_TABLES=y
    CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m
    CONFIG_NETFILTER_XT_TARGET_IDLETIMER=m
    CONFIG_NETFILTER_XT_TARGET_MARK=m
    CONFIG_NETFILTER_XT_MATCH_COMMENT=m
    CONFIG_NETFILTER_XT_MATCH_CPU=m
    CONFIG_NETFILTER_XT_MATCH_IPRANGE=m
    CONFIG_NETFILTER_XT_MATCH_LENGTH=m
    CONFIG_NETFILTER_XT_MATCH_LIMIT=m
    CONFIG_NETFILTER_XT_MATCH_MAC=m
    CONFIG_NETFILTER_XT_MATCH_MARK=m
    CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m
    CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m
    CONFIG_NETFILTER_XT_MATCH_STATE=m
    CONFIG_IP_NF_IPTABLES=m
    CONFIG_IP_NF_FILTER=m
    CONFIG_IP_NF_NAT=m
    CONFIG_IP_NF_TARGET_MASQUERADE=m
    CONFIG_IP_NF_ARPTABLES=m
    CONFIG_IP_NF_ARPFILTER=m
    CONFIG_IP_NF_ARP_MANGLE=m
    CONFIG_BRIDGE_NF_EBTABLES=m
    CONFIG_BRIDGE_EBT_BROUTE=m
    CONFIG_BRIDGE_EBT_T_FILTER=m
    CONFIG_BRIDGE_EBT_T_NAT=m
    CONFIG_BRIDGE_EBT_802_3=m
    CONFIG_BRIDGE_EBT_AMONG=m
    CONFIG_BRIDGE_EBT_ARP=m
    CONFIG_BRIDGE_EBT_IP=m
    CONFIG_BRIDGE_EBT_LIMIT=m
    CONFIG_BRIDGE_EBT_MARK=m
    CONFIG_BRIDGE_EBT_PKTTYPE=m
    CONFIG_BRIDGE_EBT_STP=m
    CONFIG_BRIDGE_EBT_VLAN=m
    CONFIG_BRIDGE_EBT_ARPREPLY=m
    CONFIG_BRIDGE_EBT_DNAT=m
    CONFIG_BRIDGE_EBT_MARK_T=m
    CONFIG_BRIDGE_EBT_REDIRECT=m
    CONFIG_BRIDGE_EBT_SNAT=m
    CONFIG_BRIDGE_EBT_LOG=m
    CONFIG_BRIDGE_EBT_NFLOG=m
    CONFIG_IP_SCTP=m
    CONFIG_BRIDGE=m
    CONFIG_NET_SCHED=y
    CONFIG_NET_SCH_CBQ=m
    CONFIG_NET_SCH_HTB=m
    CONFIG_NET_SCH_HFSC=m
    CONFIG_NET_SCH_PRIO=m
    CONFIG_NET_SCH_MULTIQ=m
    CONFIG_NET_SCH_RED=m
    CONFIG_NET_SCH_SFB=m
    CONFIG_NET_SCH_SFQ=m
    CONFIG_NET_SCH_TEQL=m
    CONFIG_NET_SCH_TBF=m
    CONFIG_NET_SCH_CBS=m
    CONFIG_NET_SCH_ETF=m
    CONFIG_NET_SCH_TAPRIO=m
    CONFIG_NET_SCH_GRED=m
    CONFIG_NET_SCH_DSMARK=m
    CONFIG_NET_SCH_NETEM=m
    CONFIG_NET_SCH_DRR=m
    CONFIG_NET_SCH_MQPRIO=m
    CONFIG_NET_SCH_SKBPRIO=m
    CONFIG_NET_SCH_CHOKE=m
    CONFIG_NET_SCH_QFQ=m
    CONFIG_NET_SCH_CODEL=m
    CONFIG_NET_SCH_FQ_CODEL=m
    CONFIG_NET_SCH_CAKE=m
    CONFIG_NET_SCH_INGRESS=m
    CONFIG_NET_CLS_BASIC=m
    CONFIG_NET_CLS_TCINDEX=m
    CONFIG_NET_CLS_ROUTE4=m
    CONFIG_NET_CLS_FW=m
    CONFIG_NET_CLS_U32=m
    CONFIG_NET_CLS_FLOWER=m
    CONFIG_NET_CLS_MATCHALL=m
    CONFIG_NET_EMATCH=y
    CONFIG_NET_EMATCH_CMP=m
    CONFIG_NET_EMATCH_NBYTE=m
    CONFIG_NET_EMATCH_U32=m
    CONFIG_NET_EMATCH_META=m
    CONFIG_NET_EMATCH_TEXT=m
    CONFIG_NET_EMATCH_CANID=m
    CONFIG_NET_EMATCH_IPT=m
    CONFIG_NET_CLS_ACT=y
    CONFIG_NET_ACT_POLICE=m
    CONFIG_NET_ACT_GACT=m
    CONFIG_GACT_PROB=y
    CONFIG_NET_ACT_MIRRED=m
    CONFIG_NET_ACT_IPT=m
    CONFIG_NET_ACT_NAT=m
    CONFIG_NET_ACT_PEDIT=m
    CONFIG_NET_ACT_SIMP=m
    CONFIG_NET_ACT_SKBEDIT=m
    CONFIG_NET_ACT_CSUM=m
    CONFIG_CAN=m
    CONFIG_CAN_J1939=m
    CONFIG_CAN_ISOTP=m
    CONFIG_CAN_VCAN=m
    CONFIG_CAN_VXCAN=m
    CONFIG_CAN_SLCAN=m
    CONFIG_CAN_C_CAN=m
    CONFIG_CAN_C_CAN_PLATFORM=m
    CONFIG_CAN_PEAK_USB=m
    CONFIG_BT=m
    CONFIG_BT_RFCOMM=m
    CONFIG_BT_RFCOMM_TTY=y
    CONFIG_BT_BNEP=m
    CONFIG_BT_BNEP_MC_FILTER=y
    CONFIG_BT_BNEP_PROTO_FILTER=y
    CONFIG_BT_HIDP=m
    CONFIG_BT_HS=y
    CONFIG_BT_HCIBTUSB=m
    CONFIG_BT_HCIBTSDIO=m
    CONFIG_BT_HCIUART=m
    CONFIG_BT_HCIUART_NOKIA=m
    CONFIG_BT_HCIUART_BCSP=y
    CONFIG_BT_HCIUART_LL=y
    CONFIG_BT_HCIUART_3WIRE=y
    CONFIG_BT_HCIUART_BCM=y
    CONFIG_AF_RXRPC=m
    CONFIG_CFG80211=m
    CONFIG_MAC80211=m
    CONFIG_MAC80211_LEDS=y
    CONFIG_RFKILL=m
    CONFIG_RFKILL_INPUT=y
    CONFIG_RFKILL_GPIO=m
    CONFIG_UEVENT_HELPER=y
    CONFIG_DEVTMPFS=y
    CONFIG_DEVTMPFS_MOUNT=y
    CONFIG_FW_LOADER_USER_HELPER=y
    CONFIG_FW_LOADER_USER_HELPER_FALLBACK=y
    CONFIG_OMAP_INTERCONNECT=y
    CONFIG_OMAP_OCP2SCP=y
    CONFIG_CONNECTOR=m
    CONFIG_OF_OVERLAY=y
    CONFIG_BLK_DEV_LOOP=y
    CONFIG_BLK_DEV_RAM=y
    CONFIG_BLK_DEV_RAM_SIZE=16384
    CONFIG_SRAM=y
    CONFIG_EEPROM_AT24=m
    CONFIG_TI_ST=m
    CONFIG_SCSI=m
    CONFIG_BLK_DEV_SD=m
    CONFIG_NETDEVICES=y
    # CONFIG_ETHERNET is not set
    CONFIG_PHYLIB=y
    CONFIG_PPP=m
    CONFIG_PPP_BSDCOMP=m
    CONFIG_PPP_DEFLATE=m
    CONFIG_PPP_FILTER=y
    CONFIG_PPP_MPPE=m
    CONFIG_PPP_MULTILINK=y
    CONFIG_PPPOE=m
    CONFIG_PPP_ASYNC=m
    CONFIG_PPP_SYNC_TTY=m
    CONFIG_USB_RTL8150=m
    CONFIG_USB_RTL8152=m
    CONFIG_USB_LAN78XX=m
    CONFIG_USB_USBNET=m
    CONFIG_USB_NET_CDC_EEM=m
    CONFIG_USB_NET_CDC_MBIM=m
    CONFIG_USB_NET_DM9601=m
    CONFIG_USB_NET_SMSC75XX=m
    CONFIG_USB_NET_SMSC95XX=m
    CONFIG_USB_ALI_M5632=y
    CONFIG_USB_AN2720=y
    CONFIG_USB_EPSON2888=y
    CONFIG_USB_KC2190=y
    # CONFIG_USB_NET_ZAURUS is not set
    CONFIG_USB_NET_QMI_WWAN=m
    # CONFIG_WLAN_VENDOR_ADMTEK is not set
    # CONFIG_WLAN_VENDOR_ATH is not set
    # CONFIG_WLAN_VENDOR_ATMEL is not set
    CONFIG_B43=m
    CONFIG_B43_SDIO=y
    CONFIG_BRCMFMAC=m
    # CONFIG_WLAN_VENDOR_CISCO is not set
    # CONFIG_WLAN_VENDOR_INTEL is not set
    # CONFIG_WLAN_VENDOR_INTERSIL is not set
    # CONFIG_WLAN_VENDOR_MARVELL is not set
    # CONFIG_WLAN_VENDOR_MEDIATEK is not set
    # CONFIG_WLAN_VENDOR_MICROCHIP is not set
    # CONFIG_WLAN_VENDOR_RALINK is not set
    # CONFIG_WLAN_VENDOR_REALTEK is not set
    # CONFIG_WLAN_VENDOR_RSI is not set
    # CONFIG_WLAN_VENDOR_ST is not set
    # CONFIG_WLAN_VENDOR_TI is not set
    # CONFIG_WLAN_VENDOR_ZYDAS is not set
    # CONFIG_WLAN_VENDOR_QUANTENNA is not set
    CONFIG_INPUT_EVDEV=m
    # CONFIG_KEYBOARD_ATKBD is not set
    CONFIG_KEYBOARD_GPIO=m
    # CONFIG_INPUT_MOUSE is not set
    CONFIG_INPUT_MISC=y
    CONFIG_INPUT_TPS65218_PWRBUTTON=m
    CONFIG_INPUT_UINPUT=m
    CONFIG_SERIO=m
    # CONFIG_VT is not set
    # CONFIG_LEGACY_PTYS is not set
    CONFIG_SERIAL_8250=y
    CONFIG_SERIAL_8250_CONSOLE=y
    CONFIG_SERIAL_8250_NR_UARTS=32
    CONFIG_SERIAL_8250_RUNTIME_UARTS=10
    CONFIG_SERIAL_8250_EXTENDED=y
    CONFIG_SERIAL_8250_MANY_PORTS=y
    CONFIG_SERIAL_8250_SHARE_IRQ=y
    CONFIG_SERIAL_8250_DETECT_IRQ=y
    CONFIG_SERIAL_8250_RSA=y
    CONFIG_SERIAL_8250_OMAP=y
    CONFIG_SERIAL_OF_PLATFORM=y
    CONFIG_SERIAL_EARLYCON_ARM_SEMIHOST=y
    CONFIG_NULL_TTY=y
    CONFIG_SERIAL_DEV_BUS=y
    CONFIG_TTY_PRINTK=y
    CONFIG_I2C_CHARDEV=y
    CONFIG_PPS_CLIENT_KTIMER=m
    CONFIG_PPS_CLIENT_LDISC=m
    CONFIG_PPS_CLIENT_GPIO=m
    CONFIG_PTP_1588_CLOCK=y
    CONFIG_PINCTRL_SINGLE=y
    CONFIG_DEBUG_GPIO=y
    CONFIG_GPIO_SYSFS=y
    CONFIG_W1=m
    CONFIG_W1_MASTER_GPIO=m
    CONFIG_HDQ_MASTER_OMAP=m
    CONFIG_W1_SLAVE_DS2431=m
    CONFIG_POWER_RESET=y
    CONFIG_POWER_RESET_GPIO=y
    CONFIG_POWER_RESET_GPIO_RESTART=y
    CONFIG_POWER_SUPPLY=y
    CONFIG_SENSORS_GPIO_FAN=m
    CONFIG_SENSORS_STTS751=m
    CONFIG_THERMAL_NETLINK=y
    CONFIG_THERMAL_STATISTICS=y
    CONFIG_THERMAL_GOV_FAIR_SHARE=y
    CONFIG_THERMAL_GOV_USER_SPACE=y
    CONFIG_CPU_THERMAL=y
    CONFIG_TI_THERMAL=y
    CONFIG_WATCHDOG=y
    CONFIG_WATCHDOG_CORE=y
    CONFIG_OMAP_WATCHDOG=m
    CONFIG_MFD_TI_AM335X_TSCADC=m
    CONFIG_MFD_TPS65217=y
    CONFIG_MFD_TPS65218=y
    CONFIG_REGULATOR_GPIO=y
    CONFIG_REGULATOR_MP5416=y
    CONFIG_REGULATOR_PBIAS=y
    CONFIG_REGULATOR_TI_ABB=y
    CONFIG_REGULATOR_TPS65217=y
    CONFIG_REGULATOR_TPS65218=y
    # CONFIG_MEDIA_CEC_SUPPORT is not set
    CONFIG_MEDIA_SUPPORT=m
    CONFIG_VIDEO_V4L2_SUBDEV_API=y
    CONFIG_VIDEO_ADV_DEBUG=y
    # CONFIG_DVB_NET is not set
    # CONFIG_DVB_DYNAMIC_MINORS is not set
    CONFIG_MEDIA_USB_SUPPORT=y
    CONFIG_USB_VIDEO_CLASS=m
    CONFIG_USB_GSPCA=m
    CONFIG_USB_M5602=m
    CONFIG_USB_STV06XX=m
    CONFIG_USB_GL860=m
    CONFIG_USB_GSPCA_BENQ=m
    CONFIG_USB_GSPCA_CONEX=m
    CONFIG_USB_GSPCA_CPIA1=m
    CONFIG_USB_GSPCA_DTCS033=m
    CONFIG_USB_GSPCA_ETOMS=m
    CONFIG_USB_GSPCA_FINEPIX=m
    CONFIG_USB_GSPCA_JEILINJ=m
    CONFIG_USB_GSPCA_JL2005BCD=m
    CONFIG_USB_GSPCA_KINECT=m
    CONFIG_USB_GSPCA_KONICA=m
    CONFIG_USB_GSPCA_MARS=m
    CONFIG_USB_GSPCA_MR97310A=m
    CONFIG_USB_GSPCA_NW80X=m
    CONFIG_USB_GSPCA_OV519=m
    CONFIG_USB_GSPCA_OV534=m
    CONFIG_USB_GSPCA_OV534_9=m
    CONFIG_USB_GSPCA_PAC207=m
    CONFIG_USB_GSPCA_PAC7302=m
    CONFIG_USB_GSPCA_PAC7311=m
    CONFIG_USB_GSPCA_SE401=m
    CONFIG_USB_GSPCA_SN9C2028=m
    CONFIG_USB_GSPCA_SN9C20X=m
    CONFIG_USB_GSPCA_SONIXB=m
    CONFIG_USB_GSPCA_SONIXJ=m
    CONFIG_USB_GSPCA_SPCA500=m
    CONFIG_USB_GSPCA_SPCA501=m
    CONFIG_USB_GSPCA_SPCA505=m
    CONFIG_USB_GSPCA_SPCA506=m
    CONFIG_USB_GSPCA_SPCA508=m
    CONFIG_USB_GSPCA_SPCA561=m
    CONFIG_USB_GSPCA_SPCA1528=m
    CONFIG_USB_GSPCA_SQ905=m
    CONFIG_USB_GSPCA_SQ905C=m
    CONFIG_USB_GSPCA_SQ930X=m
    CONFIG_USB_GSPCA_STK014=m
    CONFIG_USB_GSPCA_STK1135=m
    CONFIG_USB_GSPCA_STV0680=m
    CONFIG_USB_GSPCA_SUNPLUS=m
    CONFIG_USB_GSPCA_T613=m
    CONFIG_USB_GSPCA_TOPRO=m
    CONFIG_USB_GSPCA_TOUPTEK=m
    CONFIG_USB_GSPCA_TV8532=m
    CONFIG_USB_GSPCA_VC032X=m
    CONFIG_USB_GSPCA_VICAM=m
    CONFIG_USB_GSPCA_XIRLINK_CIT=m
    CONFIG_USB_GSPCA_ZC3XX=m
    CONFIG_USB_PWC=m
    CONFIG_VIDEO_CPIA2=m
    CONFIG_USB_ZR364XX=m
    CONFIG_USB_STKWEBCAM=m
    CONFIG_USB_S2255=m
    # CONFIG_RADIO_ADAPTERS is not set
    # CONFIG_MEDIA_TUNER_SIMPLE is not set
    # CONFIG_MEDIA_TUNER_TDA18250 is not set
    # CONFIG_MEDIA_TUNER_TDA8290 is not set
    # CONFIG_MEDIA_TUNER_TDA827X is not set
    # CONFIG_MEDIA_TUNER_TDA18271 is not set
    # CONFIG_MEDIA_TUNER_TDA9887 is not set
    # CONFIG_MEDIA_TUNER_TEA5761 is not set
    # CONFIG_MEDIA_TUNER_TEA5767 is not set
    # CONFIG_MEDIA_TUNER_MT20XX is not set
    # CONFIG_MEDIA_TUNER_MT2060 is not set
    # CONFIG_MEDIA_TUNER_MT2063 is not set
    # CONFIG_MEDIA_TUNER_MT2266 is not set
    # CONFIG_MEDIA_TUNER_MT2131 is not set
    # CONFIG_MEDIA_TUNER_QT1010 is not set
    # CONFIG_MEDIA_TUNER_XC2028 is not set
    # CONFIG_MEDIA_TUNER_XC5000 is not set
    # CONFIG_MEDIA_TUNER_XC4000 is not set
    # CONFIG_MEDIA_TUNER_MXL5005S is not set
    # CONFIG_MEDIA_TUNER_MXL5007T is not set
    # CONFIG_MEDIA_TUNER_MC44S803 is not set
    # CONFIG_MEDIA_TUNER_MAX2165 is not set
    # CONFIG_MEDIA_TUNER_TDA18218 is not set
    # CONFIG_MEDIA_TUNER_FC0011 is not set
    # CONFIG_MEDIA_TUNER_FC0012 is not set
    # CONFIG_MEDIA_TUNER_FC0013 is not set
    # CONFIG_MEDIA_TUNER_TDA18212 is not set
    # CONFIG_MEDIA_TUNER_E4000 is not set
    # CONFIG_MEDIA_TUNER_FC2580 is not set
    # CONFIG_MEDIA_TUNER_M88RS6000T is not set
    # CONFIG_MEDIA_TUNER_TUA9001 is not set
    # CONFIG_MEDIA_TUNER_SI2157 is not set
    # CONFIG_MEDIA_TUNER_IT913X is not set
    # CONFIG_MEDIA_TUNER_R820T is not set
    # CONFIG_MEDIA_TUNER_MXL301RF is not set
    # CONFIG_MEDIA_TUNER_QM1D1C0042 is not set
    # CONFIG_MEDIA_TUNER_QM1D1B0004 is not set
    # CONFIG_DVB_STB0899 is not set
    # CONFIG_DVB_STB6100 is not set
    # CONFIG_DVB_STV090x is not set
    # CONFIG_DVB_STV0910 is not set
    # CONFIG_DVB_STV6110x is not set
    # CONFIG_DVB_STV6111 is not set
    # CONFIG_DVB_MXL5XX is not set
    # CONFIG_DVB_DRXK is not set
    # CONFIG_DVB_TDA18271C2DD is not set
    # CONFIG_DVB_SI2165 is not set
    # CONFIG_DVB_MN88472 is not set
    # CONFIG_DVB_MN88473 is not set
    # CONFIG_DVB_CX24110 is not set
    # CONFIG_DVB_CX24123 is not set
    # CONFIG_DVB_MT312 is not set
    # CONFIG_DVB_ZL10036 is not set
    # CONFIG_DVB_ZL10039 is not set
    # CONFIG_DVB_S5H1420 is not set
    # CONFIG_DVB_STV0288 is not set
    # CONFIG_DVB_STB6000 is not set
    # CONFIG_DVB_STV0299 is not set
    # CONFIG_DVB_STV6110 is not set
    # CONFIG_DVB_STV0900 is not set
    # CONFIG_DVB_TDA8083 is not set
    # CONFIG_DVB_TDA10086 is not set
    # CONFIG_DVB_TDA8261 is not set
    # CONFIG_DVB_VES1X93 is not set
    # CONFIG_DVB_TUNER_ITD1000 is not set
    # CONFIG_DVB_TUNER_CX24113 is not set
    # CONFIG_DVB_TDA826X is not set
    # CONFIG_DVB_TUA6100 is not set
    # CONFIG_DVB_CX24116 is not set
    # CONFIG_DVB_CX24117 is not set
    # CONFIG_DVB_CX24120 is not set
    # CONFIG_DVB_SI21XX is not set
    # CONFIG_DVB_TS2020 is not set
    # CONFIG_DVB_DS3000 is not set
    # CONFIG_DVB_MB86A16 is not set
    # CONFIG_DVB_TDA10071 is not set
    # CONFIG_DVB_SP887X is not set
    # CONFIG_DVB_CX22700 is not set
    # CONFIG_DVB_CX22702 is not set
    # CONFIG_DVB_S5H1432 is not set
    # CONFIG_DVB_DRXD is not set
    # CONFIG_DVB_L64781 is not set
    # CONFIG_DVB_TDA1004X is not set
    # CONFIG_DVB_NXT6000 is not set
    # CONFIG_DVB_MT352 is not set
    # CONFIG_DVB_ZL10353 is not set
    # CONFIG_DVB_DIB3000MB is not set
    # CONFIG_DVB_DIB3000MC is not set
    # CONFIG_DVB_DIB7000M is not set
    # CONFIG_DVB_DIB7000P is not set
    # CONFIG_DVB_DIB9000 is not set
    # CONFIG_DVB_TDA10048 is not set
    # CONFIG_DVB_EC100 is not set
    # CONFIG_DVB_STV0367 is not set
    # CONFIG_DVB_CXD2820R is not set
    # CONFIG_DVB_CXD2841ER is not set
    # CONFIG_DVB_ZD1301_DEMOD is not set
    # CONFIG_DVB_VES1820 is not set
    # CONFIG_DVB_TDA10021 is not set
    # CONFIG_DVB_TDA10023 is not set
    # CONFIG_DVB_STV0297 is not set
    # CONFIG_DVB_NXT200X is not set
    # CONFIG_DVB_OR51211 is not set
    # CONFIG_DVB_OR51132 is not set
    # CONFIG_DVB_BCM3510 is not set
    # CONFIG_DVB_LGDT330X is not set
    # CONFIG_DVB_LGDT3305 is not set
    # CONFIG_DVB_LG2160 is not set
    # CONFIG_DVB_S5H1409 is not set
    # CONFIG_DVB_AU8522_DTV is not set
    # CONFIG_DVB_AU8522_V4L is not set
    # CONFIG_DVB_S5H1411 is not set
    # CONFIG_DVB_MXL692 is not set
    # CONFIG_DVB_S921 is not set
    # CONFIG_DVB_DIB8000 is not set
    # CONFIG_DVB_MB86A20S is not set
    # CONFIG_DVB_TC90522 is not set
    # CONFIG_DVB_MN88443X is not set
    # CONFIG_DVB_PLL is not set
    # CONFIG_DVB_TUNER_DIB0070 is not set
    # CONFIG_DVB_TUNER_DIB0090 is not set
    # CONFIG_DVB_DRX39XYJ is not set
    # CONFIG_DVB_LNBH25 is not set
    # CONFIG_DVB_LNBH29 is not set
    # CONFIG_DVB_LNBP21 is not set
    # CONFIG_DVB_LNBP22 is not set
    # CONFIG_DVB_ISL6405 is not set
    # CONFIG_DVB_ISL6421 is not set
    # CONFIG_DVB_ISL6423 is not set
    # CONFIG_DVB_A8293 is not set
    # CONFIG_DVB_LGS8GL5 is not set
    # CONFIG_DVB_LGS8GXX is not set
    # CONFIG_DVB_ATBM8830 is not set
    # CONFIG_DVB_TDA665x is not set
    # CONFIG_DVB_IX2505V is not set
    # CONFIG_DVB_M88RS2000 is not set
    # CONFIG_DVB_AF9033 is not set
    # CONFIG_DVB_HORUS3A is not set
    # CONFIG_DVB_ASCOT2E is not set
    # CONFIG_DVB_HELENE is not set
    # CONFIG_DVB_CXD2099 is not set
    # CONFIG_DVB_SP2 is not set
    CONFIG_HIDRAW=y
    CONFIG_UHID=m
    CONFIG_HID_SENSOR_HUB=m
    CONFIG_USB_HIDDEV=y
    CONFIG_USB=m
    CONFIG_USB_ANNOUNCE_NEW_DEVICES=y
    CONFIG_USB_OTG=y
    CONFIG_USB_MON=m
    CONFIG_USB_EHCI_HCD=m
    CONFIG_USB_EHCI_ROOT_HUB_TT=y
    CONFIG_USB_OHCI_HCD=m
    CONFIG_USB_ACM=m
    CONFIG_USB_TMC=m
    CONFIG_USB_STORAGE=m
    CONFIG_USB_MUSB_HDRC=m
    CONFIG_USB_MUSB_OMAP2PLUS=m
    CONFIG_USB_MUSB_AM35X=m
    CONFIG_USB_MUSB_DSPS=m
    CONFIG_USB_TI_CPPI41_DMA=y
    CONFIG_USB_DWC3=m
    CONFIG_USB_SERIAL=m
    CONFIG_USB_SERIAL_GENERIC=y
    CONFIG_USB_SERIAL_SIMPLE=m
    CONFIG_USB_SERIAL_CP210X=m
    CONFIG_USB_SERIAL_FTDI_SIO=m
    CONFIG_USB_SERIAL_MOS7720=m
    CONFIG_USB_SERIAL_PL2303=m
    CONFIG_USB_SERIAL_QUALCOMM=m
    CONFIG_USB_SERIAL_SIERRAWIRELESS=m
    CONFIG_USB_SERIAL_OPTION=m
    CONFIG_USB_TEST=m
    CONFIG_NOP_USB_XCEIV=m
    CONFIG_AM335X_PHY_USB=m
    CONFIG_USB_GADGET=m
    CONFIG_USB_CONFIGFS=m
    CONFIG_USB_CONFIGFS_SERIAL=y
    CONFIG_USB_CONFIGFS_ACM=y
    CONFIG_USB_CONFIGFS_OBEX=y
    CONFIG_USB_CONFIGFS_NCM=y
    CONFIG_USB_CONFIGFS_ECM=y
    CONFIG_USB_CONFIGFS_ECM_SUBSET=y
    CONFIG_USB_CONFIGFS_RNDIS=y
    CONFIG_USB_CONFIGFS_EEM=y
    CONFIG_USB_CONFIGFS_MASS_STORAGE=y
    CONFIG_USB_CONFIGFS_F_LB_SS=y
    CONFIG_USB_CONFIGFS_F_FS=y
    CONFIG_USB_CONFIGFS_F_HID=y
    CONFIG_USB_ZERO=m
    CONFIG_USB_ETH=m
    CONFIG_USB_G_NCM=m
    CONFIG_USB_MASS_STORAGE=m
    CONFIG_USB_G_SERIAL=m
    CONFIG_USB_CDC_COMPOSITE=m
    CONFIG_USB_G_ACM_MS=m
    CONFIG_USB_G_MULTI=m
    CONFIG_USB_G_MULTI_CDC=y
    CONFIG_MMC=y
    CONFIG_SDIO_UART=y
    CONFIG_MMC_SDHCI=y
    CONFIG_MMC_SDHCI_PLTFM=y
    CONFIG_MMC_OMAP=y
    CONFIG_MMC_OMAP_HS=y
    CONFIG_MMC_SDHCI_OMAP=y
    CONFIG_NEW_LEDS=y
    CONFIG_LEDS_CLASS=m
    CONFIG_LEDS_CLASS_FLASH=m
    CONFIG_LEDS_CLASS_MULTICOLOR=m
    CONFIG_LEDS_BRIGHTNESS_HW_CHANGED=y
    CONFIG_LEDS_GPIO=m
    CONFIG_LEDS_PWM=m
    CONFIG_LEDS_TRIGGER_TIMER=m
    CONFIG_LEDS_TRIGGER_ONESHOT=m
    CONFIG_LEDS_TRIGGER_HEARTBEAT=m
    CONFIG_LEDS_TRIGGER_CPU=y
    CONFIG_LEDS_TRIGGER_ACTIVITY=m
    CONFIG_LEDS_TRIGGER_GPIO=m
    CONFIG_LEDS_TRIGGER_DEFAULT_ON=m
    CONFIG_LEDS_TRIGGER_TRANSIENT=m
    CONFIG_LEDS_TRIGGER_CAMERA=m
    CONFIG_LEDS_TRIGGER_PANIC=y
    CONFIG_LEDS_TRIGGER_NETDEV=m
    CONFIG_LEDS_TRIGGER_PATTERN=m
    CONFIG_LEDS_TRIGGER_TTY=m
    CONFIG_RTC_CLASS=y
    CONFIG_RTC_DRV_OMAP=y
    CONFIG_DMADEVICES=y
    CONFIG_TI_CPPI41=y
    CONFIG_UIO=m
    CONFIG_UIO_PDRV_GENIRQ=m
    CONFIG_UIO_DMEM_GENIRQ=m
    # CONFIG_VIRTIO_MENU is not set
    # CONFIG_VHOST_MENU is not set
    CONFIG_COMMON_CLK_PWM=m
    CONFIG_HWSPINLOCK=y
    CONFIG_HWSPINLOCK_OMAP=y
    CONFIG_MAILBOX=y
    CONFIG_OMAP2PLUS_MBOX=y
    CONFIG_OMAP_IOMMU=y
    CONFIG_REMOTEPROC=y
    CONFIG_REMOTEPROC_CDEV=y
    CONFIG_WKUP_M3_RPROC=m
    CONFIG_RPMSG_CHAR=m
    CONFIG_RPMSG_VIRTIO=m
    CONFIG_SOC_TI=y
    CONFIG_AMX3_PM=m
    CONFIG_WKUP_M3_IPC=m
    CONFIG_TI_EMIF=y
    CONFIG_TI_EMIF_SRAM=y
    CONFIG_IIO=m
    CONFIG_IIO_BUFFER_CB=m
    CONFIG_IIO_BUFFER_DMAENGINE=m
    CONFIG_IIO_BUFFER_HW_CONSUMER=m
    CONFIG_IIO_TRIGGERED_BUFFER=m
    CONFIG_IIO_SW_DEVICE=m
    CONFIG_IIO_SW_TRIGGER=m
    CONFIG_IIO_TRIGGERED_EVENT=m
    CONFIG_TI_AM335X_ADC=m
    CONFIG_IIO_RESCALE=m
    CONFIG_PWM=y
    CONFIG_PWM_OMAP_DMTIMER=m
    CONFIG_PWM_TIECAP=m
    CONFIG_PWM_TIEHRPWM=m
    CONFIG_OMAP_USB2=m
    CONFIG_TI_PIPE3=y
    CONFIG_ARM_CCI_PMU=y
    # CONFIG_ARM_CCI5xx_PMU is not set
    # CONFIG_ARM_PMU is not set
    CONFIG_EXT2_FS=y
    CONFIG_EXT3_FS=y
    CONFIG_FANOTIFY=y
    CONFIG_QUOTA=y
    CONFIG_QFMT_V2=y
    CONFIG_AUTOFS4_FS=y
    CONFIG_MSDOS_FS=y
    CONFIG_VFAT_FS=y
    CONFIG_TMPFS=y
    CONFIG_TMPFS_POSIX_ACL=y
    CONFIG_CONFIGFS_FS=y
    CONFIG_CRAMFS=y
    CONFIG_NFS_FS=y
    CONFIG_NFS_V3_ACL=y
    CONFIG_NFS_V4=y
    CONFIG_NLS_DEFAULT="utf8"
    CONFIG_NLS_CODEPAGE_437=y
    CONFIG_NLS_ASCII=y
    CONFIG_NLS_ISO8859_1=y
    CONFIG_NLS_UTF8=y
    CONFIG_SECURITY=y
    CONFIG_CRYPTO_USER=m
    CONFIG_CRYPTO_CRYPTD=m
    CONFIG_CRYPTO_DH=m
    CONFIG_CRYPTO_CURVE25519=m
    CONFIG_CRYPTO_SEQIV=y
    CONFIG_CRYPTO_CBC=y
    CONFIG_CRYPTO_CFB=m
    CONFIG_CRYPTO_CTR=y
    CONFIG_CRYPTO_CTS=y
    CONFIG_CRYPTO_PCBC=m
    CONFIG_CRYPTO_XTS=y
    CONFIG_CRYPTO_MICHAEL_MIC=y
    CONFIG_CRYPTO_SHA256=y
    CONFIG_CRYPTO_SHA3=m
    CONFIG_CRYPTO_AES=y
    CONFIG_CRYPTO_DES=m
    CONFIG_CRYPTO_FCRYPT=m
    CONFIG_CRYPTO_CHACHA20=m
    CONFIG_CRYPTO_LZ4=m
    CONFIG_CRYPTO_USER_API_HASH=m
    CONFIG_CRYPTO_USER_API_SKCIPHER=m
    CONFIG_CRYPTO_USER_API_RNG=m
    CONFIG_CRYPTO_USER_API_AEAD=y
    CONFIG_CRYPTO_STATS=y
    CONFIG_CRYPTO_DEV_OMAP=m
    CONFIG_CRYPTO_DEV_OMAP_SHAM=m
    CONFIG_CRYPTO_DEV_OMAP_AES=m
    CONFIG_CRYPTO_DEV_OMAP_DES=m
    CONFIG_CRYPTO_LIB_CURVE25519=m
    CONFIG_CRC_CCITT=y
    CONFIG_CRC_T10DIF=y
    CONFIG_CRC_ITU_T=y
    CONFIG_CRC7=y
    CONFIG_DMA_CMA=y
    CONFIG_PRINTK_TIME=y
    CONFIG_DYNAMIC_DEBUG=y
    CONFIG_DEBUG_INFO=y
    CONFIG_DEBUG_INFO_SPLIT=y
    CONFIG_DEBUG_INFO_DWARF4=y
    CONFIG_GDB_SCRIPTS=y
    CONFIG_READABLE_ASM=y
    CONFIG_HEADERS_INSTALL=y
    CONFIG_VMLINUX_MAP=y
    CONFIG_MAGIC_SYSRQ=y
    # CONFIG_DEBUG_MISC is not set
    # CONFIG_SCHED_DEBUG is not set
    CONFIG_SCHEDSTATS=y
    # CONFIG_RCU_TRACE is not set
    CONFIG_BOOTTIME_TRACING=y
    CONFIG_FUNCTION_PROFILER=y
    CONFIG_STACK_TRACER=y
    CONFIG_IRQSOFF_TRACER=y
    CONFIG_PREEMPT_TRACER=y
    CONFIG_SCHED_TRACER=y
    CONFIG_HWLAT_TRACER=y
    CONFIG_TIMERLAT_TRACER=y
    CONFIG_FTRACE_SYSCALLS=y
    CONFIG_BLK_DEV_IO_TRACE=y
    CONFIG_HIST_TRIGGERS=y
    CONFIG_TRACE_EVENT_INJECT=y
    

  • Hi Aravind,

    Let me first try to see if I can reproduce the issue on AM335x EVM.

  • Feb 02 00:38:28 vg3x-0-4-0-debug kernel: pm33xx pm33xx: PM: Kernel suspend failure
    Feb 02 00:38:28 vg3x-0-4-0-debug kernel: net can0: c_can_hw_raminit_wait_syscon: time out
    Feb 02 00:38:28 vg3x-0-4-0-debug kernel: c_can_platform 481cc000.can can0: setting BTR=1c02 BRPE=0000
    Feb 02 00:38:28 vg3x-0-4-0-debug kernel: net can1: c_can_hw_raminit_wait_syscon: time out
    Feb 02 00:38:28 vg3x-0-4-0-debug kernel: c_can_platform 481d0000.can can1: setting BTR=1c02 BRPE=0000

    BTY, do you have CAN application running while the system go to suspend? If so, have you tried to not run it to see if the issue still happens?

  • Hi Liu, 

         Yes, We did try to unload 481d0000.can & 481cc000.can and stop any applications using the CAN controller, still we saw the issue, in that instance the following lines are absent in the log

    Feb 02 00:38:28 vg3x-0-4-0-debug kernel: net can0: c_can_hw_raminit_wait_syscon: time out
    Feb 02 00:38:28 vg3x-0-4-0-debug kernel: c_can_platform 481cc000.can can0: setting BTR=1c02 BRPE=0000
    Feb 02 00:38:28 vg3x-0-4-0-debug kernel: net can1: c_can_hw_raminit_wait_syscon: time out
    Feb 02 00:38:28 vg3x-0-4-0-debug kernel: c_can_platform 481d0000.can can1: setting BTR=1c02 BRPE=0000

    But we still have this one line in the log:

    Feb 02 00:38:28 vg3x-0-4-0-debug kernel: pm33xx pm33xx: PM: Kernel suspend failure

  • Hi Aravind,

    Can you please try the following kernel patch to disabled CAN sysc modules in device tree?

    diff --git a/arch/arm/boot/dts/am33xx-l4.dtsi b/arch/arm/boot/dts/am33xx-l4.dtsi
    index f560cf8d435c..1716879b388c 100644
    --- a/arch/arm/boot/dts/am33xx-l4.dtsi
    +++ b/arch/arm/boot/dts/am33xx-l4.dtsi
    @@ -1935,6 +1935,7 @@
                            #address-cells = <1>;
                            #size-cells = <1>;
                            ranges = <0x0 0xcc000 0x2000>;
    +                       status = "disabled";
    
                            dcan0: can@0 {
                                    compatible = "ti,am3352-d_can";
    @@ -1958,6 +1959,7 @@
                            #address-cells = <1>;
                            #size-cells = <1>;
                            ranges = <0x0 0xd0000 0x2000>;
    +                       status = "disabled";
    
                            dcan1: can@0 {
                                    compatible = "ti,am3352-d_can";
    

  • HI Liu,

              I have tried the patch and tested multiple times, still suspend failure is observed in all instances but with no errors related to c_can_hw_raminit_wait_syscon are observed in the log, as we disabled the can in the in the patch provided, The below is the log:

    Feb 14 14:22:26 vg3x-0-4-0-debug kernel: PM: suspend entry (deep)
    Feb 14 14:22:26 vg3x-0-4-0-debug kernel: Filesystems sync: 0.000 seconds
    Feb 14 14:22:26 vg3x-0-4-0-debug kernel: Freezing user space processes ... (elapsed 0.003 seconds) done.
    Feb 14 14:22:26 vg3x-0-4-0-debug kernel: OOM killer disabled.
    Feb 14 14:22:26 vg3x-0-4-0-debug kernel: Freezing remaining freezable tasks ... (elapsed 0.001 seconds) done.
    Feb 14 14:22:26 vg3x-0-4-0-debug kernel: pm33xx pm33xx: PM: Kernel suspend failure
    Feb 14 14:22:26 vg3x-0-4-0-debug kernel: OOM killer enabled.
    Feb 14 14:22:26 vg3x-0-4-0-debug kernel: Restarting tasks ... done.
    Feb 14 14:22:26 vg3x-0-4-0-debug kernel: PM: suspend exit
    Feb 14 14:22:26 vg3x-0-4-0-debug lbb-sleep.sh[24792]: rtcwake: short write: Invalid argument

    Just to reiterate few things here:

    The suspend failure happens only after multiple iterations into the sleep test which just calls rtcwake command on each iteration, but when this happens the next time we try to enter sleep the system hangs. Any further patches or steps to collect more debug information is appreciated.

  •  just checking to see, if you have any suggestions on how to collect more debug information to identify the issue here?