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.

AM3352: AM3352: ti-sysc: probe of 44e31000.target-module failed with error -16

Part Number: AM3352
Other Parts Discussed in Thread: AM3358

Tool/software:

Hi,

We used SDK 09_01_00_001 on our board am3352,There have sonme error info abot ti-sync:

[ 0.882765] ti-sysc: probe of 44e31000.target-module failed with error -16
[ 0.973457] ti-sysc: probe of 48040000.target-module failed with error -16
[ 1.381886] ti-sysc: probe of 5600fe00.target-module failed with error -110

So,Is there some problems at linux6.1 about ti-sync?Where do we need to modify?

SDK:09_01_00_001
Uboot:2023-04
kernel:6.1

We use default setting in dts:

timer1_target: target-module@31000 { /* 0x44e31000, ap 25 40.0 */
compatible = "ti,sysc-omap2-timer", "ti,sysc";
reg = <0x31000 0x4>,
<0x31010 0x4>,
<0x31014 0x4>;
reg-names = "rev", "sysc", "syss";
ti,sysc-mask = <(SYSC_OMAP2_CLOCKACTIVITY |
SYSC_OMAP2_SOFTRESET |
SYSC_OMAP2_AUTOIDLE)>;
ti,sysc-sidle = <SYSC_IDLE_FORCE>,
<SYSC_IDLE_NO>,
<SYSC_IDLE_SMART>;
ti,syss-mask = <1>;
/* Domains (P, C): wkup_pwrdm, l4_wkup_clkdm */
clocks = <&l4_wkup_clkctrl AM3_L4_WKUP_TIMER1_CLKCTRL 0>;
clock-names = "fck";
#address-cells = <1>;
#size-cells = <1>;
ranges = <0x0 0x31000 0x1000>;

timer1: timer@0 {
compatible = "ti,am335x-timer-1ms";
reg = <0x0 0x400>;
interrupts = <67>;
ti,timer-alwon;
clocks = <&timer1_fck>;
clock-names = "fck";
};
};

timer2_target: target-module@40000 { /* 0x48040000, ap 22 1e.0 */
compatible = "ti,sysc-omap4-timer", "ti,sysc";
reg = <0x40000 0x4>,
<0x40010 0x4>,
<0x40014 0x4>;
reg-names = "rev", "sysc", "syss";
ti,sysc-mask = <SYSC_OMAP4_SOFTRESET>;
ti,sysc-sidle = <SYSC_IDLE_FORCE>,
<SYSC_IDLE_NO>,
<SYSC_IDLE_SMART>,
<SYSC_IDLE_SMART_WKUP>;
/* Domains (P, C): per_pwrdm, l4ls_clkdm */
clocks = <&l4ls_clkctrl AM3_L4LS_TIMER2_CLKCTRL 0>;
clock-names = "fck";
#address-cells = <1>;
#size-cells = <1>;
ranges = <0x0 0x40000 0x1000>;

timer2: timer@0 {
compatible = "ti,am335x-timer";
reg = <0x0 0x400>;
interrupts = <68>;
clocks = <&timer2_fck>;
clock-names = "fck";
};
};

/* Preferred always-on timer for clocksource */
&timer1_target {
clocks = <&l4_wkup_clkctrl AM3_L4_WKUP_TIMER1_CLKCTRL 0>,
<&l4_wkup_clkctrl AM3_L4_WKUP_L4_WKUP_CLKCTRL 0>;
clock-names = "fck", "ick";
ti,no-reset-on-init;
ti,no-idle;
timer@0 {
assigned-clocks = <&timer1_fck>;
assigned-clock-parents = <&sys_clkin_ck>;
};
};

/* Preferred timer for clockevent */
&timer2_target {
clocks = <&l4ls_clkctrl AM3_L4LS_TIMER2_CLKCTRL 0>,
<&l4ls_clkctrl AM3_L4LS_L4_LS_CLKCTRL 0>;
clock-names = "fck", "ick";
ti,no-reset-on-init;
ti,no-idle;
timer@0 {
assigned-clocks = <&timer2_fck>;
assigned-clock-parents = <&sys_clkin_ck>;
};
};

  • Dear :

      Is there any new progress?

  • Hi BU team,

    Boot with the SDK9.3 prebuild wic file on AM3358 GPEVM, also report this error.

    /cfs-file/__key/communityserver-discussions-components-files/791/sdk9.3-launch-log.txt

    root@am335x-evm:~# dmesg |grep "ti-sysc"

    [    1.662654] ti-sysc: probe of 44e31000.target-module failed with error -16

    [    1.751395] ti-sysc: probe of 48040000.target-module failed with error -16

    root@am335x-evm:~#

    Seems it is not a new finding as reported in old SDK also.

    https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1179252/am3352-ti-sysc-probe-of-timers-failed-with-error--16

  • refer this thread to apply patch to output the right point report error.

    https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1478918/am3358-bring-up-sdk9-03-linux-kernel-6-1-y-with-u-boot-2012

    diff --git a/drivers/bus/ti-sysc.c b/drivers/bus/ti-sysc.c
    index 15c6b85b125d..fb002ddfb74f 100644
    --- a/drivers/bus/ti-sysc.c
    +++ b/drivers/bus/ti-sysc.c
    @@ -3299,6 +3299,7 @@ static int sysc_probe(struct platform_device *pdev)
            if (!ddata)
                    return -ENOMEM;
     
    +       dev_info(&pdev->dev, "probling\n");
            ddata->offsets[SYSC_REVISION] = -ENODEV;
            ddata->offsets[SYSC_SYSCONFIG] = -ENODEV;
            ddata->offsets[SYSC_SYSSTATUS] = -ENODEV;

  • Hi,
        It probe failed at time1 and time2,But,if We set to disabled at dts,The kernel can't boot.

        the log is below:

    [ 0.882673] ti-sysc 44e31000.target-module: probling
    [ 0.882769] ti-sysc: probe of 44e31000.target-module failed with error -16
    [ 0.884115] ti-sysc 44e35000.target-module: probling
    [ 0.893852] ti-sysc 44e3e074.target-module: probling
    [ 0.905040] ti-sysc 48022050.target-module: probling
    [ 0.911651] 48022000.serial: ttyS1 at MMIO 0x48022000 (irq = 18, base_baud = 3000000) is a 8250
    [ 0.913427] ti-sysc 48024050.target-module: probling
    [ 0.915757] 48024000.serial: ttyS2 at MMIO 0x48024000 (irq = 19, base_baud = 3000000) is a 8250
    [ 0.922603] ti-sysc 4802a000.target-module: probling
    [ 0.952934] rtc-rs5c372 1-0032: rs5c372a found, 24hr
    [ 0.960000] rtc-rs5c372 1-0032: registered as rtc0
    [ 0.961717] rtc-rs5c372 1-0032: setting system clock to 2025-02-28T05:58:06 UTC (1740722286)
    [ 0.962269] ne1617_probe enter.
    [ 0.962284] ne1617 probe data->client->addr:0x18
    [ 0.962453] ne1617 probe success
    [ 0.963022] at24_probe GPIO eeprom_wp_gpio controller not ready, deferring probe
    [ 0.963135] omap_i2c 4802a000.i2c: bus 1 rev0.11 at 100 kHz
    [ 0.964165] ti-sysc 48030000.target-module: probling
    [ 0.965086] ti-sysc 48038000.target-module: probling
    [ 0.971909] ti-sysc 4803c000.target-module: probling
    [ 0.972814] ti-sysc 48040000.target-module: probling
    [ 0.972888] ti-sysc: probe of 48040000.target-module failed with error -16
    [ 0.974400] ti-sysc 48042000.target-module: probling
    [ 0.976895] ti-sysc 48044000.target-module: probling
    [ 0.992139] ti-sysc 48046000.target-module: probling
    [ 0.994569] ti-sysc 48048000.target-module: probling
    [ 0.996963] ti-sysc 4804a000.target-module: probling
    [ 0.999346] ti-sysc 4804c000.target-module: probling

  • Hello Yang,

    Apologies for the delayed response here.

    First off, do you want to use the DM hardware timer in your design? Or are you simply trying to get rid of error outputs in the boot log?

    What about the SGX530 port?

    Regards,

    Nick

  • I only simply trying to get rid of error outputs in the boot log。
    Our board no  extern monitor connected.
    The gpu at dts is default :
    gpu: gpu@0 {
    compatible = "ti,am3352-sgx530", "img,sgx530";
    status = "disabled";
    reg = <0x0 0x10000>;
    interrupts = <37>;
    };