UART2 on Beaglebone Black Rev C - What changed from Debian 7 to Debian 8?

788 views
Skip to first unread message

dominik.vi...@gmail.com

unread,
Jun 10, 2016, 4:11:28 PM6/10/16
to BeagleBoard

Hello,

I have an application that uses UART2. It runs fine under Debian 7 ("Wheezy") however it doesn't under Debian 8 ("Jessie", kernel: 4.1.15-ti-rt-r43); nothing arrives at the corresponding tty file (/dev/ttyO2).
For enabling UARTs I declared

cape_enable=capemgr.enable_partno=BB-UART2                    (Debian 7)

cape_enable=bone_capemgr.enable_partno=BB-UART2         (Debian 8)

in /boot/uEnv.txt.

(Note that when I use UART4 instead of UART2 my application runs fine under both operating systems.)

So I tried to figure out the changes from Debian 7 to Debian 8 by looking at the dts files. Looking at cape-universal-00A0.dts revealed:

Debian 7:

    /************************/
    /* UARTs                */
    /************************/

    fragment@10 {
        target = <&uart2>;  /* really uart1 */
        __overlay__ {
            status = "okay";
            pinctrl-names = "default";
            pinctrl-0 = <>;
        };
    };

    fragment@11 {
        target = <&uart3>;  /* really uart2 */
        __overlay__ {
            status = "okay";
            pinctrl-names = "default";
            pinctrl-0 = <>;
        };
    };

Debian 8 (/opt/source/bb.org-overlays/src/arm/cape-universal-00A0.dts):

    /************************/
    /* UARTs                */
    /************************/

    fragment@10 {
        target = <&uart2>;  /* really uart1 */
        __overlay__ {
            status = "okay";
            pinctrl-names = "default";
            pinctrl-0 = <>;
        };
    };

    fragment@11 {
        target = <&uart3>;  /* really uart2 */
        __overlay__ {
            status = "okay";
            pinctrl-names = "default";
            pinctrl-0 = <>;
        };
    };

Debian 8 (/opt/source/bb.org-overlays/src/arm/cape-universal-00A0.dts):

    /************************/
    /* UARTs                */
    /************************/

    fragment@10 {
        target = <&uart1>;
        __overlay__ {
            status = "okay";
            pinctrl-names = "default";
            pinctrl-0 = <>;
        };
    };

    fragment@11 {
        target = <&uart2>;
        __overlay__ {
            status = "okay";
            pinctrl-names = "default";
            pinctrl-0 = <>;
        };
    };

I don't know what this exactly means, especially the "really uart<x>". Can anyone clarify here? Also there are two different cape-universal-00A0.dts files under Debian 8, which one is relevant? I see that in /boot/uEnv.txt the following line is enabled by default: cmdline=coherent_pool=1M quiet cape_universal=enable. Which dts (dtb) file does it refer to?

Comparing /opt/source/bb.org-overlays/src/arm/BB-UART4-00A0.dts and /opt/source/bb.org-overlays/src/arm/BB-UART2-00A0.dts under Debian 8 revealed that apparently both pins have a different multiplexer mode (uart2 -> MUX_MODE1, uart4 -> MUX_MODE6). Does this have any effect? I couldn't find an equivalent dts file for Debian 7.
Probably related: from cape-universal-00A0.dts I see

UART2 (P9_21, P9_22):

            [...]
            P9_21_uart_pin: pinmux_P9_21_uart_pin {
                pinctrl-single,pins = <0x154  0x31>; };     /* Mode 1, Pull-Up, RxActive */

            [...]
            P9_22_uart_pin: pinmux_P9_22_uart_pin {
                pinctrl-single,pins = <0x150  0x31>; };     /* Mode 1, Pull-Up, RxActive */

UART4 (P9_11, P9_13):

            [...]
            P9_11_uart_pin: pinmux_P9_11_uart_pin {
                pinctrl-single,pins = <0x070  0x36>; };     /* Mode 6, Pull-Up, RxActive */

            [...]
            P9_13_uart_pin: pinmux_P9_13_uart_pin {
                pinctrl-single,pins = <0x074  0x36>; };     /* Mode 6, Pull-Up, RxActive */

Is this relevant / exhibiting different behavior?

I also realized that for UART2 there is an additional dts file under Debian 8: /opt/source/bb.org-overlays/src/arm/BB-UART2-RTSCTS-00A0.dts
For UART4 there is no equivalent. How is this related?

The pin multiplexing declarations in cape-universal-00A0.dts (P9_21_pinmux, P9_22_pinmux) seem to remain the same when going from Debian 7 to Debian 8.

So does anyone know the reason why UART2 behaves differently on Debian 8 (compared to Debian 7)?

Many thanks in advance! Cheers,

Dominik

Robert Nelson

unread,
Jun 10, 2016, 4:17:05 PM6/10/16
to Beagle Board, dominik.vi...@gmail.com
3.8.13: wrong usart # (off by one..)

3.14.x -> 4.1.x -> 4.4.x -> mainline: correct usart #

Regards,

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

dominik.vi...@gmail.com

unread,
Jun 13, 2016, 6:13:53 AM6/13/16
to BeagleBoard, dominik.vi...@gmail.com
Does that mean when I used BB-UART2 and /dev/ttyO2 on 3.8.13 I was actually using UART1?

Anyway on 4.1.15 I enabled all UARTs (cape_enable=bone_capemgr.enable_partno=BB-UART1,BB-UART2,BB-UART3,BB-UART4,BB-UART5) in /boot/uEnv.txt and I tried all tty files (ttyO1, ttyO2, ttyO3, ttyO4, ttyO5) however I didn't receive anything on any of the tty files. Only on ttyO2 - ttyO5 I received exactly 1 byte (that I didn't even send) at the very beginning, namely 0x00.

However with 3.8.13 I enable BB-UART2 and use /dev/ttyO2 and it works without problems! So what's the difference here?


(I use pyserial for serial access.)


root@beaglebone:~# dmesg | grep serial
[    3.492130] 44e09000.serial: ttyS0 at MMIO 0x44e09000 (irq = 158, base_baud = 3000000) is a 8250
[    3.500724] 48022000.serial: ttyS1 at MMIO 0x48022000 (irq = 159, base_baud = 3000000) is a 8250
[    3.501692] 48024000.serial: ttyS2 at MMIO 0x48024000 (irq = 160, base_baud = 3000000) is a 8250
[    4.145889] 481a6000.serial: ttyS3 at MMIO 0x481a6000 (irq = 201, base_baud = 3000000) is a 8250
[    4.149061] 481a8000.serial: ttyS4 at MMIO 0x481a8000 (irq = 202, base_baud = 3000000) is a 8250
[    4.151370] 481aa000.serial: ttyS5 at MMIO 0x481aa000 (irq = 203, base_baud = 3000000) is a 8250
[   16.842799] pinctrl-single 44e10800.pinmux: pin 44e108c0.0 already requested by 481aa000.serial; cannot claim for 0-0070


root@beaglebone:~# dmesg | grep bone
[...]
[    3.885891] bone_capemgr bone_capemgr: compatible-baseboard=ti,beaglebone-black - #slots=4
[    3.943363] bone_capemgr bone_capemgr: slot #0: No cape found
[    4.003334] bone_capemgr bone_capemgr: slot #1: No cape found
[    4.063335] bone_capemgr bone_capemgr: slot #2: No cape found
[    4.123333] bone_capemgr bone_capemgr: slot #3: No cape found
[    4.129143] bone_capemgr bone_capemgr: enabled_partno PARTNO 'BB-UART1' VER 'N/A' PR '0'
[    4.129165] bone_capemgr bone_capemgr: slot #4: override
[    4.129181] bone_capemgr bone_capemgr: Using override eeprom data at slot 4
[    4.129197] bone_capemgr bone_capemgr: slot #4: 'Override Board Name,00A0,Override Manuf,BB-UART1'
[    4.129323] bone_capemgr bone_capemgr: enabled_partno PARTNO 'BB-UART2' VER 'N/A' PR '0'
[    4.129337] bone_capemgr bone_capemgr: slot #5: override
[    4.129349] bone_capemgr bone_capemgr: Using override eeprom data at slot 5
[    4.129364] bone_capemgr bone_capemgr: slot #5: 'Override Board Name,00A0,Override Manuf,BB-UART2'
[    4.129474] bone_capemgr bone_capemgr: enabled_partno PARTNO 'BB-UART3' VER 'N/A' PR '0'
[    4.129488] bone_capemgr bone_capemgr: slot #6: override
[    4.129500] bone_capemgr bone_capemgr: Using override eeprom data at slot 6
[    4.129515] bone_capemgr bone_capemgr: slot #6: 'Override Board Name,00A0,Override Manuf,BB-UART3'
[    4.129628] bone_capemgr bone_capemgr: enabled_partno PARTNO 'BB-UART4' VER 'N/A' PR '0'
[    4.129641] bone_capemgr bone_capemgr: slot #7: override
[    4.129653] bone_capemgr bone_capemgr: Using override eeprom data at slot 7
[    4.129668] bone_capemgr bone_capemgr: slot #7: 'Override Board Name,00A0,Override Manuf,BB-UART4'
[    4.129769] bone_capemgr bone_capemgr: enabled_partno PARTNO 'BB-UART5' VER 'N/A' PR '0'
[    4.129783] bone_capemgr bone_capemgr: slot #8: override
[    4.129795] bone_capemgr bone_capemgr: Using override eeprom data at slot 8
[    4.129809] bone_capemgr bone_capemgr: slot #8: 'Override Board Name,00A0,Override Manuf,BB-UART5'
[    4.130608] bone_capemgr bone_capemgr: initialized OK.
[    4.134780] bone_capemgr bone_capemgr: slot #5: dtbo 'BB-UART2-00A0.dtbo' loaded; overlay id #1
[    4.145526] bone_capemgr bone_capemgr: slot #4: dtbo 'BB-UART1-00A0.dtbo' loaded; overlay id #0
[    4.146611] bone_capemgr bone_capemgr: slot #6: dtbo 'BB-UART3-00A0.dtbo' loaded; overlay id #2
[    4.149773] bone_capemgr bone_capemgr: slot #7: dtbo 'BB-UART4-00A0.dtbo' loaded; overlay id #3
[    4.151969] bone_capemgr bone_capemgr: slot #8: dtbo 'BB-UART5-00A0.dtbo' loaded; overlay id #4
[   17.153124] pinctrl-single 44e10800.pinmux: could not request pin 48 (44e108c0.0) from group nxp_hdmi_bonelt_pins  on device pinctrl-single
[...]

pak...@gmail.com

unread,
Mar 7, 2017, 8:17:52 AM3/7/17
to BeagleBoard, dominik.vi...@gmail.com
Hello Dominik,

Did you resolve this issue? I am seeing the same thing at the moment where the cape_mngr at boot up says it loaded the UARTs and the device appear on /dev/ttyO* but I am unable to communicate with the attached device. I am wondering if the fact that I am not seeing a pinmux_uart2_pins in the pinctrl path has anything to do with it.

Checking for: /uEnv.txt ...
Checking for: /boot.scr ...
Checking for: /boot/boot.scr ...
Checking for: /boot/uEnv.txt ...
gpio: pin 55 (gpio 55) value is 1
1550 bytes read in 29 ms (51.8 KiB/s)
Loaded environment from /boot/uEnv.txt
Using: dtb=am335x-boneblack-emmc-overlay.dtb ...
Checking if uname_r is set in /boot/uEnv.txt...
gpio: pin 56 (gpio 56) value is 1
Running uname_boot ...
loading /boot/vmlinuz-4.4.52 ...
8686800 bytes read in 504 ms (16.4 MiB/s)
loading /boot/dtbs/4.4.52/am335x-boneblack-emmc-overlay.dtb ...
54478 bytes read in 160 ms (332 KiB/s)
loading /boot/initrd.img-4.4.52 ...
4079584 bytes read in 267 ms (14.6 MiB/s)
debug: [root=UUID=0abe7613-556f-4720-918c-57548c139814 ro rootfstype=ext4 rootwait fixrtc console=ttyS0,115200 coherent_pool=1M init=/lib/systemd/systemd bone_capemgr.enable_partno=BB-UART1,BB-UART2,BB-UA.
debug: [bootz 0x82000000 0x88080000:3e3fe0 0x88000000] ...
Kernel image @ 0x82000000 [ 0x000000 - 0x848cd0 ]
## Flattened Device Tree blob at 88000000
   Booting using the fdt blob at 0x88000000
   Loading Ramdisk to 8fc1c000, end 8fffffe0 ... OK
   Loading Device Tree to 8fc0b000, end 8fc1b4cd ... OK

Starting kernel ...

[    0.000000] Kernel command line: root=UUID=0abe7613-556f-4720-918c-57548c139814 ro rootfstype=ext4 rootwait fixrtc console=ttyS0,115200 coherent_pool=1M init=/lib/systemd/systemd bone_capemgr.enable_paC
[    3.896062] bone_capemgr bone_capemgr: Baseboard: 'A335BNLT,00C0,3615BBBK0779'
[    3.896082] bone_capemgr bone_capemgr: compatible-baseboard=ti,beaglebone-black - #slots=4
[    3.936815] bone_capemgr bone_capemgr: slot #0: No cape found
[    3.980789] bone_capemgr bone_capemgr: slot #1: No cape found
[    4.024783] bone_capemgr bone_capemgr: slot #2: No cape found
[    4.068802] bone_capemgr bone_capemgr: slot #3: No cape found
[    4.074593] bone_capemgr bone_capemgr: enabled_partno PARTNO 'BB-UART1' VER 'N/A' PR '0'
[    4.082727] bone_capemgr bone_capemgr: slot #4: override
[    4.088073] bone_capemgr bone_capemgr: Using override eeprom data at slot 4
[    4.095077] bone_capemgr bone_capemgr: slot #4: 'Override Board Name,00A0,Override Manuf,BB-UART1'
[    4.104227] bone_capemgr bone_capemgr: enabled_partno PARTNO 'BB-UART2' VER 'N/A' PR '0'
[    4.112366] bone_capemgr bone_capemgr: slot #5: override
[    4.117708] bone_capemgr bone_capemgr: Using override eeprom data at slot 5
[    4.124709] bone_capemgr bone_capemgr: slot #5: 'Override Board Name,00A0,Override Manuf,BB-UART2'
[    4.133814] bone_capemgr bone_capemgr: enabled_partno PARTNO 'BB-UART4' VER 'N/A' PR '0'
[    4.141966] bone_capemgr bone_capemgr: slot #6: override
[    4.147307] bone_capemgr bone_capemgr: Using override eeprom data at slot 6
[    4.154308] bone_capemgr bone_capemgr: slot #6: 'Override Board Name,00A0,Override Manuf,BB-UART4'
[    4.163411] bone_capemgr bone_capemgr: enabled_partno PARTNO 'BB-UART5' VER 'N/A' PR '0'
[    4.171544] bone_capemgr bone_capemgr: slot #7: override
[    4.176887] bone_capemgr bone_capemgr: Using override eeprom data at slot 7
[    4.183887] bone_capemgr bone_capemgr: slot #7: 'Override Board Name,00A0,Override Manuf,BB-UART5'
[    4.192991] bone_capemgr bone_capemgr: enabled_partno PARTNO 'BB-ADC' VER 'N/A' PR '0'
[    4.200952] bone_capemgr bone_capemgr: slot #8: override
[    4.206295] bone_capemgr bone_capemgr: Using override eeprom data at slot 8
[    4.213296] bone_capemgr bone_capemgr: slot #8: 'Override Board Name,00A0,Override Manuf,BB-ADC'
[    4.223033] bone_capemgr bone_capemgr: initialized OK.
[    4.242000] bone_capemgr bone_capemgr: slot #6: dtbo 'BB-UART4-00A0.dtbo' loaded; overlay id #2
[    4.242202] bone_capemgr bone_capemgr: slot #5: dtbo 'BB-UART2-00A0.dtbo' loaded; overlay id #1
[    4.242327] bone_capemgr bone_capemgr: slot #4: dtbo 'BB-UART1-00A0.dtbo' loaded; overlay id #0
[    4.243478] bone_capemgr bone_capemgr: slot #7: dtbo 'BB-UART5-00A0.dtbo' loaded; overlay id #3
[    4.245060] bone_capemgr bone_capemgr: slot #8: dtbo 'BB-ADC-00A0.dtbo' loaded; overlay id #4

0 lrwxrwxrwx 1 root root 5 Sep  1 16:10 ttyO0 -> ttyS0
0 lrwxrwxrwx 1 root root 5 Sep  1 16:10 ttyO1 -> ttyS1
0 lrwxrwxrwx 1 root root 5 Sep  1 16:10 ttyO2 -> ttyS2
0 lrwxrwxrwx 1 root root 5 Sep  1 16:10 ttyO4 -> ttyS4
0 lrwxrwxrwx 1 root root 5 Sep  1 16:10 ttyO5 -> ttyS5

pin 66 (44e10908.0): 4a100000.ethernet (GPIO UNCLAIMED) function cpsw_default group cpsw_default
pin 67 (44e1090c.0): 4a100000.ethernet (GPIO UNCLAIMED) function cpsw_default group cpsw_default
pin 68 (44e10910.0): 4a100000.ethernet (GPIO UNCLAIMED) function cpsw_default group cpsw_default
pin 69 (44e10914.0): 4a100000.ethernet (GPIO UNCLAIMED) function cpsw_default group cpsw_default
pin 70 (44e10918.0): 4a100000.ethernet (GPIO UNCLAIMED) function cpsw_default group cpsw_default
pin 71 (44e1091c.0): 4a100000.ethernet (GPIO UNCLAIMED) function cpsw_default group cpsw_default
pin 72 (44e10920.0): 4a100000.ethernet (GPIO UNCLAIMED) function cpsw_default group cpsw_default
pin 73 (44e10924.0): 4a100000.ethernet (GPIO UNCLAIMED) function cpsw_default group cpsw_default
pin 74 (44e10928.0): 4a100000.ethernet (GPIO UNCLAIMED) function cpsw_default group cpsw_default
pin 75 (44e1092c.0): 4a100000.ethernet (GPIO UNCLAIMED) function cpsw_default group cpsw_default
pin 76 (44e10930.0): 4a100000.ethernet (GPIO UNCLAIMED) function cpsw_default group cpsw_default
pin 77 (44e10934.0): 4a100000.ethernet (GPIO UNCLAIMED) function cpsw_default group cpsw_default
pin 78 (44e10938.0): 4a100000.ethernet (GPIO UNCLAIMED) function cpsw_default group cpsw_default
pin 79 (44e1093c.0): 4a100000.ethernet (GPIO UNCLAIMED) function cpsw_default group cpsw_default
pin 80 (44e10940.0): 4a100000.ethernet (GPIO UNCLAIMED) function cpsw_default group cpsw_default
pin 81 (44e10944.0): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 82 (44e10948.0): 4a101000.mdio (GPIO UNCLAIMED) function davinci_mdio_default group davinci_mdio_default
pin 83 (44e1094c.0): 4a101000.mdio (GPIO UNCLAIMED) function davinci_mdio_default group davinci_mdio_default
pin 84 (44e10950.0): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 85 (44e10954.0): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 86 (44e10958.0): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 87 (44e1095c.0): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 88 (44e10960.0): 48060000.mmc (GPIO UNCLAIMED) function pinmux_mmc1_pins group pinmux_mmc1_pins
pin 89 (44e10964.0): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 90 (44e10968.0): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 91 (44e1096c.0): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 92 (44e10970.0): 44e09000.serial (GPIO UNCLAIMED) function pinmux_uart0_pins group pinmux_uart0_pins
pin 93 (44e10974.0): 44e09000.serial (GPIO UNCLAIMED) function pinmux_uart0_pins group pinmux_uart0_pins
pin 94 (44e10978.0): 4819c000.i2c (GPIO UNCLAIMED) function pinmux_i2c2_pins group pinmux_i2c2_pins
pin 95 (44e1097c.0): 4819c000.i2c (GPIO UNCLAIMED) function pinmux_i2c2_pins group pinmux_i2c2_pins
pin 96 (44e10980.0): 48022000.serial (GPIO UNCLAIMED) function pinmux_bb_uart1_pins group pinmux_bb_uart1_pins
pin 97 (44e10984.0): 48022000.serial (GPIO UNCLAIMED) function pinmux_bb_uart1_pins group pinmux_bb_uart1_pins
pin 98 (44e10988.0): 44e0b000.i2c (GPIO UNCLAIMED) function pinmux_i2c0_pins group pinmux_i2c0_pins
pin 99 (44e1098c.0): 44e0b000.i2c (GPIO UNCLAIMED) function pinmux_i2c0_pins group pinmux_i2c0_pins


Your help would be much appreciated.

Regards,
Pak

pak...@gmail.com

unread,
Mar 7, 2017, 8:49:14 PM3/7/17
to BeagleBoard, dominik.vi...@gmail.com, pak...@gmail.com
Further testing shows that there is a conflict during bootup

[    2.798087] bone_capemgr bone_capemgr: Using override eeprom data at slot 8
[    2.798124] bone_capemgr bone_capemgr: slot #8: 'Override Board Name,00A0,Override Manuf,BB-ADC'
[    2.799100] bone_capemgr bone_capemgr: initialized OK.
[    2.807649] PM: bootloader does not support rtc-only!
[    2.809270] omap_rtc 44e3e000.rtc: setting system clock to 2016-09-01 10:26:24 UTC (1472725584)
[    2.809354] of_cfs_init
[    2.809539] of_cfs_init: OK
[    2.813323] 48022000.serial: ttyS1 at MMIO 0x48022000 (irq = 184, base_baud = 3000000) is a 8250
[    2.818299] 481a8000.serial: ttyS4 at MMIO 0x481a8000 (irq = 186, base_baud = 3000000) is a 8250
[    2.819877] pinctrl-single 44e10800.pinmux: pin 44e10954.0 already requested by 481a8000.serial; cannot claim for 48024000.serial
[    2.819962] pinctrl-single 44e10800.pinmux: pin-85 (48024000.serial) status -22
[    2.820010] pinctrl-single 44e10800.pinmux: could not request pin 85 (44e10954.0) from group pinmux_bb_uart2_pins  on device pinctrl-single
[    2.820064] omap8250 48024000.serial: Error applying setting, reverse things back
[    2.821135] 48024000.serial: ttyS2 at MMIO 0x48024000 (irq = 187, base_baud = 3000000) is a 8250
[    2.823309] 481aa000.serial: ttyS5 at MMIO 0x481aa000 (irq = 188, base_baud = 3000000) is a 8250
[    2.824063] bone_capemgr bone_capemgr: slot #4: dtbo 'BB-UART1-00A0.dtbo' loaded; overlay id #0
[    2.824367] bone_capemgr bone_capemgr: slot #7: dtbo 'BB-UART5-00A0.dtbo' loaded; overlay id #3
[    2.824537] bone_capemgr bone_capemgr: slot #6: dtbo 'BB-UART4-00A0.dtbo' loaded; overlay id #1
[    2.824719] bone_capemgr bone_capemgr: slot #5: dtbo 'BB-UART2-00A0.dtbo' loaded; overlay id #2
[    2.829155] bone_capemgr bone_capemgr: slot #8: dtbo 'BB-ADC-00A0.dtbo' loaded; overlay id #4

I have tried various combinations of BB-UART1, BB-UART2, etc and it works if I just use BB-UART1 and BB-UART2 but as soon as I include BB-UART4 and BB-UART5 I see these messages.

Does anyone else have any idea what's going on?

Regards,
Pak

deanc...@gmail.com

unread,
Apr 6, 2017, 10:55:10 AM4/6/17
to BeagleBoard, dominik.vi...@gmail.com, pak...@gmail.com
Hi,

I am experiencing a similar issue on 4.4.54 - I am attempting to use uarts 1,2,4 and 5 on a custom cape (loading a custom overlay file on startup) - uarts 4 and 5 are both working (RX and TX). Uarts 1 and 2 however are working for RX only.

Did you make any further progress with your issue?

Cheers,
Dean

Dean Claxton

unread,
Apr 6, 2017, 4:35:41 PM4/6/17
to beagl...@googlegroups.com
Thanks Pak,
I've posted a new topic specific to my configuration - I can receive on uart1 and 2 but no transmit. Uart5 and 5 are all good.

Cheers,
Dean

--
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/OthpMkecfCQ/unsubscribe.
To unsubscribe from this group and all its topics, send an email to beagleboard+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/beagleboard/ea6ace57-c115-4712-8e4a-c78a68eca23d%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

maxmike

unread,
Dec 24, 2017, 3:57:05 PM12/24/17
to BeagleBoard
Yes,  Linux beaglebone 4.4.68-ti-r110 #1 SMP Wed Jun 21 04:31:35 UTC 2017 armv7l GNU/Linux has some unexpected problems with UART's

We have a bunch of pcb's coming in and all of a sudden TTYO4 (hardwired) doesn't work. Cannot receive characters. Terminals were checked as active. Program worked fine on 3.8 kernels.
lrwxrwxrwx 1 root root          5 Dec 24 12:29 /dev/ttyO0 -> ttyS0
lrwxrwxrwx 1 root root          5 Dec 24 12:29 /dev/ttyO1 -> ttyS1
lrwxrwxrwx 1 root root          5 Dec 24 12:29 /dev/ttyO2 -> ttyS2
lrwxrwxrwx 1 root root          5 Dec 24 12:29 /dev/ttyO4 -> ttyS4
I think capes load OK:

root@beaglebone:~# dmesg | grep bone
[    0.000000] Kernel command line: console=ttyO0,115200n8 bone_capemgr.disable_partno=BB-BONELT-HDMI,BB-BONELT-HDMIN bone_capemgr.enable_partno=cape-universal root=/dev/mmcblk1p1 ro rootfstype=ext4 rootwait coherent_pool=1M net.ifnames=0 quiet cape_universal=enable
[    2.346745] bone_capemgr bone_capemgr: Baseboard: 'A335BNLT,AIA0,5016BBBI3094'
[    2.346780] bone_capemgr bone_capemgr: compatible-baseboard=ti,beaglebone-black - #slots=4
[    2.385761] bone_capemgr bone_capemgr: slot #0: No cape found
[    2.425756] bone_capemgr bone_capemgr: slot #1: No cape found
[    2.465750] bone_capemgr bone_capemgr: slot #2: No cape found
[    2.505751] bone_capemgr bone_capemgr: slot #3: No cape found
[    2.505785] bone_capemgr bone_capemgr: enabled_partno PARTNO 'cape-universal' VER 'N/A' PR '0'
[    2.505798] bone_capemgr bone_capemgr: slot #4: override
[    2.505812] bone_capemgr bone_capemgr: Using override eeprom data at slot 4
[    2.505827] bone_capemgr bone_capemgr: slot #4: 'Override Board Name,00A0,Override Manuf,cape-universal'
[    2.506195] bone_capemgr bone_capemgr: initialized OK.
[    2.746273] bone_capemgr bone_capemgr: slot #4: dtbo 'cape-universal-00A0.dtbo' loaded; overlay id #0

What can be done?
Reply all
Reply to author
Forward
0 new messages