TDMSSK3358 and Bone Debian

41 views
Skip to first unread message

Ray Willis

unread,
Jan 14, 2021, 7:02:25 PM1/14/21
to BeagleBoard

All,
I'm trying to figure out how to get the TDMSSK3358 (or AM335x Starter Kit) working with Bone Debian. There is a devicetree overlay that is set up to supposedly use it, am335x-evmsk.dts, but I have not been able to get it to work even with the latest build.

When it runs, it loads u-boot just fine, but dumps to Linux shell after attempting to load the Kernel.  I've attached my putty log. I've found similar issues in forum posts that were supposedly a faulty voltage supply or bent pin for the uSD Card. I do not think this is the case as the Linux Arago (built via Yocto) still runs fine... that it comes with.

A little more info for context:
This Dev System runs only from uSD Card, it does not utilize the emmc. When it fails, the linux shell stays shown on the display (Linux Icon with blinking cursor). I do have basic shell commands.

I think the fault lies in that the devicetree is still not correct. It is somewhat set up as a traditional device for using emmc first and if the uSD Card Detect (CD) goes low it will switch the boot up order. Typical Beaglebone Black requires a SW be pressed also to switch the boot up order upon boot up.

The failure is basically the Kernel doesn't see /dev/mmcblk0p1 for rootfs. I can check /dev in shell but no memory location is there.... not mmcblk, sda, sdb, or other. The original Arago OS uses a separate Boot/Root partition (unlike Bone Debian) but that shouldn't matter as boot is actually running. It's almost as if it tries to access the SD Card pins for what's designated for mmc2 in the pinmux but can't read the data.

Has anyone else tackled this and had it work, or can someone provide more insight?

from my log attached:
.....
[    2.899401] omap_hsmmc 48060000.mmc: Got CD GPIO
......
Gave up waiting for root file system device.  Common problems:
 - Boot args (cat /proc/cmdline)
   - Check rootdelay= (did the system wait long enough?)
 - Missing modules (cat /proc/modules; ls /dev)
ALERT!  /dev/mmcblk0p1 does not exist.  Dropping to a shell!
(initramfs)

Any help is appreciated on this.

Regards,
Raymond Willis Jr.

Ray Willis

unread,
Jan 14, 2021, 7:06:08 PM1/14/21
to BeagleBoard
Ooops. Now I attached the log file. :)
tmdssk335x_putty.log

Dennis Lee Bieber

unread,
Jan 15, 2021, 11:02:29 AM1/15/21
to Beagleboard
On Thu, 14 Jan 2021 16:02:25 -0800 (PST), in
gmane.comp.hardware.beagleboard.user "'Ray Willis' via BeagleBoard"
<beagleboard-/JYPxA39Uh5...@public.gmane.org> wrote:


>I think the fault lies in that the devicetree is still not correct. It is
>somewhat set up as a traditional device for using emmc first and if the uSD
>Card Detect (CD) goes low it will switch the boot up order. Typical
>Beaglebone Black requires a SW be pressed also to switch the boot up order
>upon boot up.
>
The BBB hasn't required use of the boot-select switch for eMMC/uSD for
quite some time -- like the last release of Wheezy (Debian 7). As long as
the eMMC has been flashed with a "modern" image, u-boot (while loading from
eMMC) will switch to using the uSD card to complete the boot process
(device tree, etc.).


--
Dennis L Bieber

Robert Nelson

unread,
Jan 15, 2021, 11:11:30 AM1/15/21
to Beagle Board
There's an override for a 2 partition setup: in /boot/uEnv.txt

uenv_root=/dev/mmcblk0p2

Regards,

--
Robert Nelson
https://rcn-ee.com/

Raymond Willis

unread,
Jan 16, 2021, 3:27:19 PM1/16/21
to Beagle Board
I don't want this to run via separate root / boot partitions as it did way back. There should be no reason (anything hardware) that it shouldn't run with the newest Debian with am335x-evmsk.dts.

I ran debug in the command line options of uEnv.txt and got the following. This was right before it defaulting to shell:
.......
+ mkdir -m 0755 /run/initramfs
+ [ -n /run/initramfs/initramfs.debug ]
+ exec
[    3.070539] systemd-udevd[123]: Starting version 241
[    3.085221] systemd-udevd[124]: Network interface NamePolicy= disabled on kernel command line, ignoring.
[    3.108769] systemd-udevd[124]: /usr/lib/udev/rules.d/50-udev-default.rules:18: Invalid GROUP operation
[    3.133753] systemd-udevd[124]: /usr/lib/udev/rules.d/50-udev-default.rules:19: Invalid GROUP operation
[    3.153806] systemd-udevd[124]: /usr/lib/udev/rules.d/50-udev-default.rules:20: Invalid GROUP operation
[    3.173970] systemd-udevd[124]: /usr/lib/udev/rules.d/50-udev-default.rules:21: Invalid GROUP operation
[    3.193984] systemd-udevd[124]: /usr/lib/udev/rules.d/50-udev-default.rules:22: Invalid GROUP operation
[    3.213997] systemd-udevd[124]: /usr/lib/udev/rules.d/50-udev-default.rules:23: Invalid GROUP operation
[    3.234000] systemd-udevd[124]: /usr/lib/udev/rules.d/50-udev-default.rules:24: Invalid GROUP operation
[    3.253952] systemd-udevd[124]: /usr/lib/udev/rules.d/50-udev-default.rules:25: Invalid GROUP operation


This is 50-udev-defualt.rules file:

# do not edit this file, it will be overwritten on update

# run a command on remove events
ACTION=="remove", ENV{REMOVE_CMD}!="", RUN+="$env{REMOVE_CMD}"
ACTION=="remove", GOTO="default_end"

SUBSYSTEM=="virtio-ports", KERNEL=="vport*", ATTR{name}=="?*", SYMLINK+="virtio-ports/$attr{name}"

# select "system RTC" or just use the first one
SUBSYSTEM=="rtc", ATTR{hctosys}=="1", SYMLINK+="rtc"
SUBSYSTEM=="rtc", KERNEL=="rtc0", SYMLINK+="rtc", OPTIONS+="link_priority=-100"

SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", IMPORT{builtin}="usb_id", IMPORT{builtin}="hwdb --subsystem=usb"
ENV{MODALIAS}!="", IMPORT{builtin}="hwdb --subsystem=$env{SUBSYSTEM}"

ACTION!="add", GOTO="default_end"

SUBSYSTEM=="tty", KERNEL=="ptmx", GROUP="tty", MODE="0666"
SUBSYSTEM=="tty", KERNEL=="tty", GROUP="tty", MODE="0666"
SUBSYSTEM=="tty", KERNEL=="tty[0-9]*", GROUP="tty", MODE="0620"
SUBSYSTEM=="tty", KERNEL=="sclp_line[0-9]*", GROUP="tty", MODE="0620"
SUBSYSTEM=="tty", KERNEL=="ttysclp[0-9]*", GROUP="tty", MODE="0620"
SUBSYSTEM=="tty", KERNEL=="3270/tty[0-9]*", GROUP="tty", MODE="0620"
SUBSYSTEM=="vc", KERNEL=="vcs*|vcsa*", GROUP="tty"
KERNEL=="tty[A-Z]*[0-9]|ttymxc[0-9]*|pppox[0-9]*|ircomm[0-9]*|noz[0-9]*|rfcomm[0-9]*", GROUP="dialout"

SUBSYSTEM=="mem", KERNEL=="mem|kmem|port", GROUP="kmem", MODE="0640"

SUBSYSTEM=="input", GROUP="input"
SUBSYSTEM=="input", KERNEL=="js[0-9]*", MODE="0664"

SUBSYSTEM=="video4linux", GROUP="video"
SUBSYSTEM=="graphics", GROUP="video"
SUBSYSTEM=="drm", KERNEL!="renderD*", GROUP="video"
SUBSYSTEM=="dvb", GROUP="video"
SUBSYSTEM=="media", GROUP="video"
SUBSYSTEM=="cec", GROUP="video"

SUBSYSTEM=="drm", KERNEL=="renderD*", GROUP="render", MODE="0660"
SUBSYSTEM=="kfd", GROUP="render", MODE="0660"

SUBSYSTEM=="sound", GROUP="audio", \
  OPTIONS+="static_node=snd/seq", OPTIONS+="static_node=snd/timer"

SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", MODE="0664"

SUBSYSTEM=="firewire", ATTR{units}=="*0x00a02d:0x00010*", GROUP="video"
SUBSYSTEM=="firewire", ATTR{units}=="*0x00b09d:0x00010*", GROUP="video"
SUBSYSTEM=="firewire", ATTR{units}=="*0x00a02d:0x010001*", GROUP="video"
SUBSYSTEM=="firewire", ATTR{units}=="*0x00a02d:0x014001*", GROUP="video"

KERNEL=="parport[0-9]*", GROUP="lp"
SUBSYSTEM=="printer", KERNEL=="lp*", GROUP="lp"
SUBSYSTEM=="ppdev", GROUP="lp"
KERNEL=="lp[0-9]*", GROUP="lp"
KERNEL=="irlpt[0-9]*", GROUP="lp"
SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ENV{ID_USB_INTERFACES}=="*:0701??:*", GROUP="lp"

SUBSYSTEM=="block", GROUP="disk"
SUBSYSTEM=="block", KERNEL=="sr[0-9]*", GROUP="cdrom"
SUBSYSTEM=="scsi_generic", SUBSYSTEMS=="scsi", ATTRS{type}=="4|5", GROUP="cdrom"
KERNEL=="sch[0-9]*", GROUP="cdrom"
KERNEL=="pktcdvd[0-9]*", GROUP="cdrom"
KERNEL=="pktcdvd", GROUP="cdrom"

SUBSYSTEM=="scsi_generic|scsi_tape", SUBSYSTEMS=="scsi", ATTRS{type}=="1|8", GROUP="tape"
SUBSYSTEM=="scsi_generic", SUBSYSTEMS=="scsi", ATTRS{type}=="0", GROUP="disk"
KERNEL=="qft[0-9]*|nqft[0-9]*|zqft[0-9]*|nzqft[0-9]*|rawqft[0-9]*|nrawqft[0-9]*", GROUP="disk"
KERNEL=="loop-control", GROUP="disk", OPTIONS+="static_node=loop-control"
KERNEL=="btrfs-control", GROUP="disk"
KERNEL=="rawctl", GROUP="disk"
SUBSYSTEM=="raw", KERNEL=="raw[0-9]*", GROUP="disk"
SUBSYSTEM=="aoe", GROUP="disk", MODE="0220"
SUBSYSTEM=="aoe", KERNEL=="err", MODE="0440"

KERNEL=="rfkill", MODE="0664"
KERNEL=="tun", MODE="0666", OPTIONS+="static_node=net/tun"

KERNEL=="fuse", MODE="0666", OPTIONS+="static_node=fuse"

# The static_node is required on s390x and ppc (they are using MODULE_ALIAS)
KERNEL=="kvm", GROUP="kvm", MODE="0660", OPTIONS+="static_node=kvm"

SUBSYSTEM=="ptp", ATTR{clock_name}=="KVM virtual PTP", SYMLINK += "ptp_kvm"

LABEL="default_end"


If I go off of those line numbers and GROUP failure.... it doesn't like GROUP="video" for some reason. I'll disable video in uEnv.txt and see if that makes a difference. But I doubt that's it. I'm also trying a different uSD Card (manufacturer) just in case.

Regards,
Ray


--
For more options, visit http://beagleboard.org/discuss
---
You received this message because you are subscribed to a topic in the Google Groups "BeagleBoard" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/beagleboard/XIE572WmROE/unsubscribe.
To unsubscribe from this group and all its topics, send an email to beagleboard+unsub...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/beagleboard/CAOCHtYhjDZzD8frznWm9TF25_kQ4VFFS%2Bz%2BkrRHnL%3DGq8XpSbQ%40mail.gmail.com.

Reply all
Reply to author
Forward
0 new messages