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.

[参考译文] DRA821U:Sciclient_rmIrqSet Does#39;t Work (QNX + RTOS SDK8.0)

Guru**** 2551070 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1136180/dra821u-sciclient_rmirqset-does-t-work-qnx-rtos-sdk8-0

器件型号:DRA821U

各位专家:

根据以下链接:

e2e.ti.com/.../3878362

我通过 tiboot3配置了 GPIO MUX 寄存器、这是一种权变措施。

这是一个坏主意、每次需要新的 GPIO 中断时都会更新引导加载程序。

TIPSDK-QNX 8.0上是否有修补程序?

我尝试了以下代码、但失败了:

--------

/*main GPIO0_49中断*/
uint32_t GPIO_bank = 49/16;

uint32_t 中断= 395 /CSLR_COMPUT_CLUSTER0_GIC500SS_SPI_GPIOMUX_INTRTR0_OUTP_8 + 3;

memset (&rmIrqReq、0、sizeof (rmIrqReq));
rmIrqReq.valid_params |= TISCI_MSG_value_RM_DST_ID_VALID;
rmIrqReq.valid_params |= TISCI_MSG_value_RM_DST_HOST_IRQ_VALID;
rmIrqReq.secondary_host= TISCI_MSG_VALUE RM 未使用次要主机;
rmIrqReq.dst_id = TISCI_DEV_COMPUTE_CLUSTER0_GIC500SS;
rmIrqReq.src_id = TISCI_DEV_GPIO0;
中断= CSLR_COMPUT_CLUSTER0_GIC500SS_SPI_GPIOMUX_INTR0_OUTP_8 + GPIO_Bbank;

rmIrqReq.src_index = GPIO_bank;
rmIrqReq.dst_host_IRQ =中断;

if (0 = Sciclient_rmIrqSet (&rmIrqReq、&rmIrqResp、SCICLIENT_SERVICE_WAIT_FOREVY)){
 printf ("Sciclient_rmIrqSet 失败\n");
 返回1;

--------

Sciclient_rmIrqSet 返回0、但与 GPIOMUX_INTRTR0相关的寄存器保持为0、如下所示、

J7200-EVM@QNX://# devmem3 -b 0x00a00000 -c 200
paddr:0x00A00000 val:0x66948100
paddr:0x00A00004 val:0x00000000
paddr:0x00A00008 val:0x00000000
paddr:0x00A0000C val:0x00000000
paddr:0x00A00010 val:0x00000000
paddr:0x00A00014 val:0x00000000
paddr:0x00A00018 val:0x00000000
paddr:0x00A0001C val:0x00000000
paddr:0x00A00020 val:0x00000000
paddr:0x00A00024 val:0x00000000
paddr:0x00A00028 val:0x00000000
paddr:0x00A0002C val:0x00000000
paddr:0x00A00030 val:0x00000000
paddr:0x00A00034 val:0x00000000
paddr:0x00A00038 val:0x00000000
paddr:0x00A0003C val:0x00000000
paddr:0x00A00040 val:0x00000000
paddr:0x00A00044 val:0x00000000
paddr:0x00A00048 val:0x00000000
paddr:0x00A0004C val:0x00000000
paddr:0x00A00050 val:0x00000000
paddr:0x00A00054 val:0x00000000
paddr:0x00A00058 val:0x00000000
paddr:0x00A0005C val:0x00000000
paddr:0x00A00060 val:0x00000000
paddr:0x00A00064 val:0x00000000
paddr:0x00A00068 val:0x00000000
Paddr:0x00A0006C val:0x00000000
paddr:0x00A00070 val:0x00000000
paddr:0x00A00074 val:0x00000000
paddr:0x00A00078 val:0x00000000
paddr:0x00A0007C val:0x00000000
paddr:0x00A00080 val:0x00000000
paddr:0x00A00084 val:0x00000000
paddr:0x00A00088 val:0x00000000
paddr:0x00A0008C val:0x00000000
paddr:0x00A00090 val:0x00000000
paddr:0x00A00094 val:0x00000000
paddr:0x00A00098 val:0x00000000
paddr:0x00A0009C val:0x00000000
paddr:0x00A000A0 val:0x00000000
paddr:0x00A000A4 val:0x00000000
paddr:0x00A000A8 val:0x00000000
paddr:0x00A000AC val:0x00000000
paddr:0x00A000B0 val:0x00000000
paddr:0x00A000B4 val:0x00000000
paddr:0x00A000B8 val:0x00000000
paddr:0x00A000BC val:0x00000000
paddr:0x00A000C0 val:0x00000000
paddr:0x00A000C4 val:0x00000000
Paddr:0x00A000C8 val:0x00000000
paddr:0x00A000CC val:0x00000000
paddr:0x00A000D0 val:0x00000000
paddr:0x00A000D4 val:0x00000000
paddr:0x00A000D8 val:0x00000000
paddr:0x00A000DC val:0x00000000
paddr:0x00A000E0 val:0x00000000
paddr:0x00A000E4 val:0x00000000
paddr:0x00A000E8 val:0x00000000
paddr:0x00A000EC val:0x00000000
paddr:0x00A000F0 val:0x00000000
paddr:0x00A000F4 val:0x00000000
paddr:0x00A000F8 val:0x00000000
paddr:0x00A000FC val:0x00000000
paddr:0x00A00100 val:0x00000000
paddr:0x00A00104 val:0x00000000
paddr:0x00A00108 val:0x00000000
paddr:0x00A0010C val:0x00000000
paddr:0x00A00110 val:0x00000000
paddr:0x00A00114 val:0x00000000
paddr:0x00A00118 val:0x00000000
paddr:0x00A0011C val:0x00000000
paddr:0x00A00120 val:0x00000000
paddr:0x00A00124 val:0x00000000
paddr:0x00A00128 val:0x00000000
paddr:0x00A0012C val:0x00000000
paddr:0x00A00130 val:0x00000000
paddr:0x00A00134 val:0x00000000
paddr:0x00A00138 val:0x00000000
paddr:0x00A0013C val:0x00000000
paddr:0x00A00140 val:0x00000000
paddr:0x00A00144 val:0x00000000
paddr:0x00A00148 val:0x00000000
paddr:0x00A0014C val:0x00000000
paddr:0x00A00150 val:0x00000000
paddr:0x00A00154 val:0x00000000
paddr:0x00A00158 val:0x00000000
paddr:0x00A0015C val:0x00000000
paddr:0x00A00160 val:0x00000000
paddr:0x00A00164 val:0x00000000
paddr:0x00A00168 val:0x00000000
paddr:0x00A0016C val:0x00000000
paddr:0x00A00170 val:0x00000000
paddr:0x00A00174 val:0x00000000
paddr:0x00A00178 val:0x00000000
paddr:0x00A0017C val:0x00000000
paddr:0x00A00180 val:0x00000000
paddr:0x00A00184 val:0x00000000
paddr:0x00A00188 val:0x00000000
paddr:0x00A0018C val:0x00000000
paddr:0x00A00190 val:0x00000000
paddr:0x00A00194 val:0x00000000
paddr:0x00A00198 val:0x00000000
paddr:0x00A0019C val:0x00000000
paddr:0x00A001A0 val:0x00000000
paddr:0x00A001A4 val:0x00000000
paddr:0x00A001A8 val:0x00000000
paddr:0x00A001AC val:0x00000000
paddr:0x00A001B0 val:0x00000000
paddr:0x00A001B4 val:0x00000000
paddr:0x00A001B8 val:0x00000000
paddr:0x00A001BC val:0x00000000
Paddr:0x00A001C0 val:0x00000000
paddr:0x00A001C4 val:0x00000000
Paddr:0x00A001C8 val:0x00000000
Paddr:0x00A001CC val:0x00000000
paddr:0x00A001D0 val:0x00000000
paddr:0x00A001D4 val:0x00000000
paddr:0x00A001D8 val:0x00000000
Paddr:0x00A001DC val:0x00000000
paddr:0x00A001E0 val:0x00000000
paddr:0x00A001E4 val:0x00000000
Paddr:0x00A001E8 val:0x00000000
paddr:0x00A001EC val:0x00000000
Paddr:0x00A001F0 val:0x00000000
paddr:0x00A001F4 val:0x00000000
paddr:0x00A001F8 val:0x00000000
paddr:0x00A001FC val:0x00000000
paddr:0x00A00200 val:0x00000000
paddr:0x00A00204 val:0x00000000
paddr:0x00A00208 val:0x00000000
paddr:0x00A0020C val:0x00000000
paddr:0x00A00210 val:0x00000000
paddr:0x00A00214 val:0x00000000
paddr:0x00A00218 val:0x00000000
paddr:0x00A0021C val:0x00000000
paddr:0x00A00220 val:0x00000000
paddr:0x00A00224 val:0x00000000
paddr:0x00A00228 val:0x00000000
paddr:0x00A0022C val:0x00000000
paddr:0x00A00230 val:0x00000000
paddr:0x00A00234 val:0x00000000
paddr:0x00A00238 val:0x00000000
paddr:0x00A0023C val:0x00000000
paddr:0x00A00240 val:0x00000000
paddr:0x00A00244 val:0x00000000
paddr:0x00A00248 val:0x00000000
paddr:0x00A0024C val:0x00000000
paddr:0x00A00250 val:0x00000000
paddr:0x00A00254 val:0x00000000
paddr:0x00A00258 val:0x00000000
paddr:0x00A0025C val:0x00000000
paddr:0x00A00260 val:0x00000000
paddr:0x00A00264 val:0x00000000
paddr:0x00A00268 val:0x00000000
paddr:0x00A0026C val:0x00000000
paddr:0x00A00270 val:0x00000000
paddr:0x00A00274 val:0x00000000
paddr:0x00A00278 val:0x00000000
paddr:0x00A0027C val:0x00000000
paddr:0x00A00280 val:0x00000000
paddr:0x00A00284 val:0x00000000
paddr:0x00A00288 val:0x00000000
paddr:0x00A0028C val:0x00000000
paddr:0x00A00290 val:0x00000000
paddr:0x00A00294 val:0x00000000
paddr:0x00A00298 val:0x00000000
paddr:0x00A0029C val:0x00000000
paddr:0x00A002A0 val:0x00000000
paddr:0x00A002A4 val:0x00000000
paddr:0x00A002A8 val:0x00000000
paddr:0x00A002AC val:0x00000000
paddr:0x00A002B0 val:0x00000000
paddr:0x00A002B4 val:0x00000000
paddr:0x00A002B8 val:0x00000000
paddr:0x00A002BC val:0x00000000
Paddr:0x00A002C0 val:0x00000000
paddr:0x00A002C4 val:0x00000000
Paddr:0x00A002C8 val:0x00000000
paddr:0x00A002CC val:0x00000000
Paddr:0x00A002D0 val:0x00000000
paddr:0x00A002D4 val:0x00000000
Paddr:0x00A002D8 val:0x00000000
paddr:0x00A002DC val:0x00000000
paddr:0x00A002E0 val:0x00000000
paddr:0x00A002E4 val:0x00000000
paddr:0x00A002E8 val:0x00000000
paddr:0x00A002EC val:0x00000000
paddr:0x00A002F0 val:0x00000000
paddr:0x00A002F4 val:0x00000000
paddr:0x00A002F8 val:0x00000000
paddr:0x00A002FC val:0x00000000
paddr:0x00A00300 val:0x00000000
paddr:0x00A00304 val:0x00000000
paddr:0x00A00308 val:0x00000000
paddr:0x00A0030C val:0x00000000
paddr:0x00A00310 val:0x00000000
paddr:0x00A00314 val:0x00000000
paddr:0x00A00318 val:0x00000000
paddr:0x00A0031C val:0x00000000

但是、如果我在 tiboot3中使用0x00010094对寄存器0x00A00030进行硬编码、则中断效果良好。

谢谢、

建强

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    是否有人根据以下链接在 QNX 上成功?

    e2e.ti.com/.../4050161

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    正确的我:

    Sciclient_rmIrqSet 返回-1

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    调用 Raw 函数将返回-1并在 slog 中获取错误:

    1月01日00:00:15.898   tisci_mgr.36881  slog   55  ti_sci_msg_xfer (254):在 ACK 上 sciclient 服务调用失败

    /*main GPIO0_49中断*/
    uint32_t GPIO_bank = 49/16;
    uint32_t 中断= 395 /CSLR_COMPUT_CLUSTER0_GIC500SS_SPI_GPIOMUX_INTRTR0_OUTP_8 + 3;
    int32_t r;

    memset (&rmIrqReq、0、sizeof (rmIrqReq));
    rmIrqReq.valid_params |= TISCI_MSG_value_RM_DST_ID_VALID;
    rmIrqReq.valid_params |= TISCI_MSG_value_RM_DST_HOST_IRQ_VALID;
    rmIrqReq.secondary_host= TISCI_MSG_VALUE RM 未使用次要主机;
    rmIrqReq.ia_id = 0xFFU;
    rmIrqReq.dst_id = TISCI_DEV_COMPUTE_CLUSTER0_GIC500SS;
    rmIrqReq.src_id = TISCI_DEV_GPIO0;
    中断= CSLR_COMPUT_CLUSTER0_GIC500SS_SPI_GPIOMUX_INTR0_OUTP_8 + GPIO_Bbank;

    rmIrqReq.src_index = GPIO_bank;
    rmIrqReq.dst_host_IRQ =中断;

    r = Sciclient_rmIrqSetRaw (&rmIrqReq、&rmIrqResp、SCICLIENT_SERVICE_WAIT_FOREVY);
    如果(0!= r){
    printf ("Sciclient_rmIrqSet 失败、r=%d\n"、r);
    返回1;

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我需要将其修复、因为我不想重建引导加载程序(tidoot3中的变通方法)、然后在发布发行版之前进行验证。

    我们的电路板已经开发了7个以上版本、所有这些引导加载程序 彼此不兼容、因为使用的 SoC (GP、HS 5alm、HS 5balm)、使用的 DDR 大小(2g DDR 仅在 CS 上)等 。

    验证这些引导加载程序需要我花费大量时间。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 TI:

    你有更新吗?

    谢谢

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    有人可以提供帮助吗?

    非常感谢!

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我还尝试了以下更改、所有更改都失败了。

    /*主 GPIO 中断路由器*/

    .start_resource = 0、
    num_resource = 8、
    .type = RESSASG_UTYPE (J7200_dev_GPIOMUX_INTRTR0、
    RESSASG_subtype_IR_OUTPUT)、
    .host_id = host_ID_MCU_0_R5_0、=> host_ID_A72_2/0/1/3
    }、

    .start_resource = 8、               ==>output_8 ??????????????????
    num_resource = 8、
    .type = RESSASG_UTYPE (J7200_dev_GPIOMUX_INTRTR0、
    RESSASG_subtype_IR_OUTPUT)、
    host_id = host_ID_MCU_0_R5_2,=>host_ID_A72_2/0/1/3
    }、

    .start_resource = 16、
    num_resource = 8、
    .type = RESSASG_UTYPE (J7200_dev_GPIOMUX_INTRTR0、
    RESSASG_subtype_IR_OUTPUT)、
    host_id = host_ID_main_0_R5_0,=>host_ID_A72_2/0/1/3
    }、

    .start_resource = 24、
    num_resource = 8、
    .type = RESSASG_UTYPE (J7200_dev_GPIOMUX_INTRTR0、
    RESSASG_subtype_IR_OUTPUT)、
    host_id = host_ID_main_0_R5_2,=>host_ID_A72_2/0/1/3
    }、

    .start_resource = 32、
    num_resource = 16、
    .type = RESSASG_UTYPE (J7200_dev_GPIOMUX_INTRTR0、
    RESSASG_subtype_IR_OUTPUT)、
    host_id = host_ID_A72_2,=>host_ID_A72_2/0/1/3
    }、

    .start_resource = 48、
    num_resource = 16、
    .type = RESSASG_UTYPE (J7200_dev_GPIOMUX_INTRTR0、
    RESSASG_subtype_IR_OUTPUT)、
    .host_id = host_ID_A72_3、
    }、