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.

J722SXH01EVM: Using u-boot DTS file to control board peripherals

Part Number: J722SXH01EVM


Tool/software:

Hi team,

linux_sdk version: ti-processor-sdk-linux-adas-j722s-evm-11_00_00_08

I'm new to device tree and linux. I'm trying switch ON user_led1 on j722s-evm board from u-boot.


I've made following changes in ti-u-boot-2025.01+git/dts/upstream/src/arm64/ti/k3-j722s-evm.dts

/ { 
    led0: user_led0 {
        compatible = "gpio-leds";
        pinctrl-names = "default";
        pinctrl-0 = <&main_led_pins_default>;

        led_0 {
            label = "user-led0";
            gpios = <&main_gpio1 49 GPIO_ACTIVE_HIGH>;
            default-state = "on";
        };
    };
};

&main_pmx0 {

    main_led_pins_default: main-led-default-pins {  /* TARUN changes */
        pinctrl-single,pins = <
            J722S_IOPAD(0x244, PIN_OUTPUT, 7) /* (A24) GPIO1_49 */
        >;
    };
};

&main_gpio1 {
    status = "okay";
};

Below is my u-boot logs:

U-Boot SPL 2025.01-ti (Jun 23 2025 - 14:01:07 +0530)
SYSFW ABI: 4.0 (firmware rev 0x000b '11.0.9--v11.00.09+ (Fancy Rat)')
SPL initial stack usage: 17048 bytes
Trying to boot from MMC2
Authentication passed
Authentication passed
Authentication passed
Authentication passed
Authentication passed
Starting ATF on ARM64 core...

NOTICE:  BL31: v2.12.0(release):11.00.09-dirty
NOTICE:  BL31: Built : 12:35:58, Mar 24 2025

U-Boot SPL 2025.01-ti (Jun 23 2025 - 14:00:54 +0530)
SYSFW ABI: 4.0 (firmware rev 0x000b '11.0.9--v11.00.09+ (Fancy Rat)')
Trying to boot from MMC2
Authentication passed
Authentication passed


U-Boot 2025.01-ti (Jun 23 2025 - 14:00:54 +0530)

SoC:   J722S SR1.0 HS-FS
Model: Texas Instruments J722S EVM
DRAM:  2 GiB
Core:  104 devices, 29 uclasses, devicetree: separate
MMC:   mmc@fa10000: 0, mmc@fa00000: 1
Loading Environment from nowhere... OK
In:    serial@2800000
Out:   serial@2800000
Err:   serial@2800000
Net:   eth0: ethernet@8000000port@1
Hit any key to stop autoboot:  0 
=> 
=> 
=> gpio status -a
Bank gpio@4201000_:
gpio@4201000_0: input: 0 [ ]
gpio@4201000_1: input: 0 [ ]
gpio@4201000_2: input: 0 [ ]
gpio@4201000_3: input: 0 [ ]
gpio@4201000_4: input: 0 [ ]
gpio@4201000_5: input: 0 [ ]
gpio@4201000_6: input: 0 [ ]
gpio@4201000_7: input: 0 [ ]
gpio@4201000_8: input: 0 [ ]
gpio@4201000_9: input: 1 [ ]
gpio@4201000_10: input: 0 [ ]
gpio@4201000_11: input: 0 [ ]
gpio@4201000_12: input: 0 [ ]
gpio@4201000_13: input: 0 [ ]
gpio@4201000_14: input: 0 [ ]
gpio@4201000_15: input: 0 [ ]
gpio@4201000_16: input: 0 [ ]
gpio@4201000_17: input: 1 [ ]
gpio@4201000_18: input: 1 [ ]
gpio@4201000_19: input: 1 [ ]
gpio@4201000_20: input: 1 [ ]
gpio@4201000_21: input: 0 [ ]
gpio@4201000_22: input: 0 [ ]
gpio@4201000_23: input: 0 [ ]

Bank gpio@23_:
gpio@23_0: input: 1 [ ]
gpio@23_1: input: 0 [ ]
gpio@23_2: input: 0 [ ]
gpio@23_3: input: 0 [ ]
gpio@23_4: input: 1 [ ]
gpio@23_5: input: 0 [ ]
gpio@23_6: input: 0 [ ]
gpio@23_7: input: 0 [ ]
gpio@23_8: input: 0 [ ]
gpio@23_9: input: 0 [ ]
gpio@23_10: input: 0 [ ]
gpio@23_11: input: 0 [ ]
gpio@23_12: input: 1 [ ]
gpio@23_13: input: 0 [ ]
gpio@23_14: input: 1 [ ]
gpio@23_15: output: 1 [ ]
gpio@23_16: input: 1 [ ]
gpio@23_17: input: 1 [ ]
gpio@23_18: input: 0 [ ]
gpio@23_19: input: 1 [ ]
gpio@23_20: input: 0 [ ]
gpio@23_21: input: 1 [ ]
gpio@23_22: input: 0 [ ]
gpio@23_23: input: 0 [ ]

Bank gpio@20_:
gpio@20_0: input: 0 [ ]
gpio@20_1: input: 0 [ ]
gpio@20_2: input: 0 [ ]
gpio@20_3: input: 0 [ ]
gpio@20_4: input: 0 [ ]
gpio@20_5: input: 0 [ ]
gpio@20_6: input: 0 [ ]
gpio@20_7: input: 0 [ ]
gpio@20_8: input: 0 [ ]
gpio@20_9: input: 0 [ ]
gpio@20_10: input: 0 [ ]
gpio@20_11: input: 1 [ ]
gpio@20_12: input: 1 [ ]
gpio@20_13: input: 1 [ ]
gpio@20_14: input: 0 [ ]
gpio@20_15: input: 0 [ ]

Bank gpio@600000_:
gpio@600000_0: input: 0 [ ]
gpio@600000_1: input: 0 [ ]
gpio@600000_2: input: 0 [ ]
gpio@600000_3: input: 0 [ ]
gpio@600000_4: input: 0 [ ]
gpio@600000_5: input: 0 [ ]
gpio@600000_6: input: 0 [ ]
gpio@600000_7: input: 0 [ ]
gpio@600000_8: input: 0 [ ]
gpio@600000_9: input: 0 [ ]
gpio@600000_10: input: 0 [ ]
gpio@600000_11: input: 0 [ ]
gpio@600000_12: input: 0 [ ]
gpio@600000_13: input: 0 [ ]
gpio@600000_14: input: 0 [ ]
gpio@600000_15: input: 1 [ ]
gpio@600000_16: input: 1 [ ]
gpio@600000_17: input: 1 [ ]
gpio@600000_18: input: 1 [ ]
gpio@600000_19: input: 1 [ ]
gpio@600000_20: input: 1 [ ]
gpio@600000_21: input: 1 [ ]
gpio@600000_22: input: 1 [ ]
gpio@600000_23: input: 0 [ ]
gpio@600000_24: input: 0 [ ]
gpio@600000_25: input: 0 [ ]
gpio@600000_26: input: 0 [ ]
gpio@600000_27: input: 0 [ ]
gpio@600000_28: input: 0 [ ]
gpio@600000_29: input: 0 [ ]
gpio@600000_30: input: 0 [ ]
gpio@600000_31: input: 0 [ ]
gpio@600000_32: input: 0 [ ]
gpio@600000_33: input: 0 [ ]
gpio@600000_34: input: 0 [ ]
gpio@600000_35: input: 0 [ ]
gpio@600000_36: input: 0 [ ]
gpio@600000_37: input: 0 [ ]
gpio@600000_38: input: 0 [ ]
gpio@600000_39: input: 0 [ ]
gpio@600000_40: input: 0 [ ]
gpio@600000_41: input: 0 [ ]
gpio@600000_42: input: 0 [ ]
gpio@600000_43: input: 0 [ ]
gpio@600000_44: input: 0 [ ]
gpio@600000_45: input: 0 [ ]
gpio@600000_46: input: 0 [ ]
gpio@600000_47: input: 0 [ ]
gpio@600000_48: input: 0 [ ]
gpio@600000_49: input: 0 [ ]
gpio@600000_50: input: 0 [ ]
gpio@600000_51: input: 0 [ ]
gpio@600000_52: input: 0 [ ]
gpio@600000_53: input: 0 [ ]
gpio@600000_54: input: 0 [ ]
gpio@600000_55: input: 0 [ ]
gpio@600000_56: input: 0 [ ]
gpio@600000_57: input: 0 [ ]
gpio@600000_58: input: 0 [ ]
gpio@600000_59: input: 0 [ ]
gpio@600000_60: input: 0 [ ]
gpio@600000_61: input: 0 [ ]
gpio@600000_62: input: 0 [ ]
gpio@600000_63: input: 0 [ ]
gpio@600000_64: input: 0 [ ]
gpio@600000_65: input: 0 [ ]
gpio@600000_66: input: 0 [ ]
gpio@600000_67: input: 1 [ ]
gpio@600000_68: input: 0 [ ]
gpio@600000_69: input: 0 [ ]
gpio@600000_70: input: 0 [ ]
gpio@600000_71: input: 0 [ ]
gpio@600000_72: input: 0 [ ]
gpio@600000_73: input: 0 [ ]
gpio@600000_74: input: 0 [ ]
gpio@600000_75: input: 0 [ ]
gpio@600000_76: input: 0 [ ]
gpio@600000_77: input: 0 [ ]
gpio@600000_78: input: 0 [ ]
gpio@600000_79: input: 0 [ ]
gpio@600000_80: input: 1 [ ]
gpio@600000_81: input: 0 [ ]
gpio@600000_82: input: 0 [ ]
gpio@600000_83: input: 0 [ ]
gpio@600000_84: input: 0 [ ]
gpio@600000_85: input: 1 [ ]
gpio@600000_86: input: 0 [ ]

Bank gpio@601000_:
gpio@601000_0: input: 0 [ ]
gpio@601000_1: input: 0 [ ]
gpio@601000_2: input: 0 [ ]
gpio@601000_3: input: 0 [ ]
gpio@601000_4: input: 0 [ ]
gpio@601000_5: input: 0 [ ]
gpio@601000_6: input: 0 [ ]
gpio@601000_7: input: 0 [ ]
gpio@601000_8: input: 0 [ ]
gpio@601000_9: input: 0 [ ]
gpio@601000_10: input: 0 [ ]
gpio@601000_11: input: 0 [ ]
gpio@601000_12: input: 0 [ ]
gpio@601000_13: input: 0 [ ]
gpio@601000_14: input: 0 [ ]
gpio@601000_15: input: 0 [ ]
gpio@601000_16: input: 0 [ ]
gpio@601000_17: input: 0 [ ]
gpio@601000_18: input: 0 [ ]
gpio@601000_19: input: 0 [ ]
gpio@601000_20: input: 1 [ ]
gpio@601000_21: input: 0 [ ]
gpio@601000_22: input: 0 [ ]
gpio@601000_23: input: 0 [ ]
gpio@601000_24: input: 0 [ ]
gpio@601000_25: input: 0 [ ]
gpio@601000_26: input: 1 [ ]
gpio@601000_27: input: 1 [ ]
gpio@601000_28: input: 1 [ ]
gpio@601000_29: input: 1 [ ]
gpio@601000_30: input: 0 [ ]
gpio@601000_31: input: 0 [ ]
gpio@601000_32: input: 0 [ ]
gpio@601000_33: input: 0 [ ]
gpio@601000_34: input: 0 [ ]
gpio@601000_35: input: 0 [ ]
gpio@601000_36: input: 0 [ ]
gpio@601000_37: input: 0 [ ]
gpio@601000_38: input: 0 [ ]
gpio@601000_39: input: 0 [ ]
gpio@601000_40: input: 0 [ ]
gpio@601000_41: input: 0 [ ]
gpio@601000_42: input: 1 [ ]
gpio@601000_43: input: 1 [ ]
gpio@601000_44: input: 1 [ ]
gpio@601000_45: input: 1 [ ]
gpio@601000_46: input: 0 [ ]
gpio@601000_47: input: 1 [ ]
gpio@601000_48: input: 0 [ ]
gpio@601000_49: input: 0 [ ]
gpio@601000_50: input: 0 [ ]
gpio@601000_51: input: 0 [ ]
gpio@601000_52: input: 0 [ ]
gpio@601000_53: input: 0 [ ]
gpio@601000_54: input: 0 [ ]
gpio@601000_55: input: 0 [ ]
gpio@601000_56: input: 0 [ ]
gpio@601000_57: input: 0 [ ]
gpio@601000_58: input: 0 [ ]
gpio@601000_59: input: 0 [ ]
gpio@601000_60: input: 0 [ ]
gpio@601000_61: input: 0 [ ]
gpio@601000_62: input: 0 [ ]
gpio@601000_63: input: 0 [ ]
gpio@601000_64: input: 0 [ ]
gpio@601000_65: input: 0 [ ]
gpio@601000_66: input: 0 [ ]
gpio@601000_67: input: 0 [ ]
gpio@601000_68: input: 0 [ ]
gpio@601000_69: input: 0 [ ]
gpio@601000_70: input: 0 [ ]
gpio@601000_71: input: 0 [ ]
gpio@601000_72: input: 0 [ ]
=>

Can you please let me changes I need to do.

Regards,

Tarun C

  • Hi Tarun,

    The LED will turn on in the Linux kernel due to the (Linux) gpio-leds driver.

    You are currently in the u-boot shell which comes before Linux.

    The device tree that you need to change is the Linux device-tree, not the u-boot device tree. 

    Best,
    Jared