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.

Again! How do i develop UART program on Beaglebone black board installed ti-sdk-am335x-evm-07.00.00.00-Linux?

Dear Yordan Kovachev ,and

Thank you very much your last guides for me!  Forgive me .i 'm a beginner of linux.
I notice am335x-boneblack.dts inclding am33xx.dtsi and am335x-bone-common.dtsi.
In your opinion all uarts are configured in am33xx.dtsi . If i want to use uart1,  i just need adding uart1_pins and enabling uart1 as following:


uart0_pins: pinmux_uart0_pins {
    pinctrl-single,pins = <
    0x170 (PIN_INPUT_PULLUP | MUX_MODE0)    /* uart0_rxd.uart0_rxd */
    0x174 (PIN_OUTPUT_PULLDOWN | MUX_MODE0)    /* uart0_txd.uart0_txd */
            >;
        };
uart1_pins: pinmux_uart1_pins {
    pinctrl-single,pins = <
    0x170 (PIN_INPUT_PULLUP | MUX_MODE0)    /* uart0_rxd.uart0_rxd */     In here 0x170 must be modifying to a right nummber
      0x174(PIN_OUTPUT_PULLDOWN | MUX_MODE0)    /* uart0_txd.uart0_txd */ In here  0x174 must be modifying to a right nummber
            >;
        };

.....................
.....................


    ocp {
        uart0: serial@44e09000 {
            pinctrl-names = "default";
            pinctrl-0 = <&uart0_pins>;

            status = "okay";
        };

                   uart1: serial@48022000 {
            pinctrl-names = "default";
            pinctrl-0 = <&uart1_pins>;

            status = "okay";
        };
........................................

...................................


Am i right?


In addition, after i finish modifying the .dts files.
I will compile .dts files to dtbo files by dtc tools.
The problem is what i should do in the next steps?
I mean how i should use .dtbo files?
You know the capemanager isn't supported in the ti-sdk-am335x-evm-07.00.00.00 .
It doesn't like  in the  Angstrom.


    # cat /sys/devices/bone_capemgr.*/slots  

    0: 54:PF---   
    1: 55:PF---   
    2: 56:PF---   
    3: 57:PF---   
    4: ff:P-O-L Bone-LT-eMMC-2G,00A0,Texas Instrument,BB-BONE-EMMC-2G  
    5: ff:P-O-L Bone-Black-HDMI,00A0,Texas Instrument,BB-BONELT-HDMI  

Do i install a cape manager in the ti-sdk-am335x-evm-07.00.00.00 in any way? And after it I load the .dtbo files.
What should i do?

 Thank you!

             3xxx

  • Hi 3xxx,

    You can first align pin mux. Definition for uart1 will be:
    uart1_pins_default: pinmux_uart1_pins_default {
    pinctrl-single,pins = <
    0x178 (PIN_INPUT | MUX_MODE0) /* uart1_ctsn.uart1_ctsn */
    0x17C (PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* uart1_rtsn.uart1_rtsn */
    0x180 (PIN_INPUT_PULLUP | MUX_MODE0) /* uart1_rxd.uart1_rxd */
    0x184 (PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* uart1_txd.uart1_txd */
    >;
    };
    uart1_pins_sleep: pinmux_uart1_pins_sleep {
    pinctrl-single,pins = <
    0x178 (PIN_INPUT_PULLDOWN | MUX_MODE7)
    0x17C (PIN_INPUT_PULLDOWN | MUX_MODE7)
    0x180 (PIN_INPUT_PULLDOWN | MUX_MODE7)
    0x184 (PIN_INPUT_PULLDOWN | MUX_MODE7)
    >;
    };

    for full functionality or for 3 wire:
    uart1_pins_default: pinmux_uart1_pins_default {
    pinctrl-single,pins = <
    0x180 (PIN_INPUT_PULLUP | MUX_MODE0) /* uart1_rxd.uart1_rxd */
    0x184 (PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* uart1_txd.uart1_txd */
    >;
    };
    uart1_pins_sleep: pinmux_uart1_pins_sleep {
    pinctrl-single,pins = <
    0x180 (PIN_INPUT_PULLDOWN | MUX_MODE7)
    0x184 (PIN_INPUT_PULLDOWN | MUX_MODE7)
    >;
    };
    NEXT:
    uart1: serial@48022000 {
    pinctrl-names = "default", "sleep";
    pinctrl-0 = <&uart1_pins_default>;
    pinctrl-1 = <&uart1_pins_sleep>;

    status = "okay";
    };

    You have to compile these file not to .dtbo. When you compile they will be .dtb
    These dtb file you have to copy in rootfs to boot directory.
    You have to compile all this with:
    make -j4 zImage; make am335x-boneblack.dtb;

    and after compiling you will see:
    Kernel: arch/arm/boot/zImage is ready
    DTC arch/arm/boot/dts/am335x-boneblack.dtb

    BR
    Ivan