Hacktoberfest 2026:维护者为十月标记出来的 issue,仍然开放、适合新手。 浏览 Hacktoberfest issue

timer_psled_r5.c is broken

未关闭
#65 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

评估

难度
3/5
预计耗时
1-2 天
新手友好度
35/100
Issue 类型
缺陷
描述清晰度
需要澄清
活跃度
停滞
技术栈
c
领域
embedded-iot

调研方向

Start with timer_psled_r5.c on the 2023.2 branch and compare it with the 2024.2 version, then inspect the generated platform headers used by the build. Re-run the reported build to verify the result; done means timer_psled_r5.c compiles without the listed undeclared XPAR identifiers.

由索引模型根据 Issue 内容生成。

描述

I'm following the tutorial here using 2023.2. When I try to build timer_psled_r5.c from the 2023.2 branch of the tutorial I get the following errors.

[ 50%] Building C object CMakeFiles/tmr_psled_r5.elf.dir/timer_psled_r5.c.obj
 /data/packages/Xilinx/Vitis/2023.2/gnu/armr5/lin/gcc-arm-none-eabi/bin/armr5-none-eabi-gcc  -isystem /srv/bigdisk/jgwohlbier/zcu104/zynqpspl_workspace/zynqpspl_platform/export/zynqpspl_platform/sw/standalone_psu_cortexr5_0/include -isystem /data/packages/Xilinx/Vitis/2023.2/gnu/armr5/lin/gcc-arm-none-eabi/x86_64-oesdk-linux/usr/lib/arm-xilinx-eabi/gcc/arm-xilinx-eabi/12.2.0/include -isystem /data/packages/Xilinx/Vitis/2023.2/gnu/armr5/lin/gcc-arm-none-eabi/x86_64-oesdk-linux/usr/lib/arm-xilinx-eabi/gcc/arm-xilinx-eabi/12.2.0/include-fixed -isystem /data/packages/Xilinx/Vitis/2023.2/gnu/armr5/lin/gcc-arm-none-eabi/armrm-xilinx-eabi/usr/include -O2 -DSDT -mcpu=cortex-r5 -mfloat-abi=hard -mfpu=vfpv3-d16 -DARMR5  -MMD -MP -specs=/srv/bigdisk/jgwohlbier/zcu104/zynqpspl_workspace/zynqpspl_platform/export/zynqpspl_platform/sw/standalone_psu_cortexr5_0/Xilinx.spec -I/srv/bigdisk/jgwohlbier/zcu104/zynqpspl_workspace/zynqpspl_platform/export/zynqpspl_platform/sw/standalone_psu_cortexr5_0/include -Wall -Wextra      -O0  -g3     -U__clang__ -MD -MT CMakeFiles/tmr_psled_r5.elf.dir/timer_psled_r5.c.obj -MF CMakeFiles/tmr_psled_r5.elf.dir/timer_psled_r5.c.obj.d -o CMakeFiles/tmr_psled_r5.elf.dir/timer_psled_r5.c.obj -c /srv/bigdisk/jgwohlbier/zcu104/zynqpspl_workspace/tmr_psled_r5/src/timer_psled_r5.c
 /srv/bigdisk/jgwohlbier/zcu104/zynqpspl_workspace/tmr_psled_r5/src/timer_psled_r5.c: In function 'main':
[ERROR] /srv/bigdisk/jgwohlbier/zcu104/zynqpspl_workspace/tmr_psled_r5/src/timer_psled_r5.c:102:33: error: 'XPAR_XUARTPS_1_DEVICE_ID' undeclared (first use in this function); did you mean 'XPAR_XADCPS_0_DEVICE_ID'?
   102 | #define UART_DEVICE_ID          XPAR_XUARTPS_1_DEVICE_ID
       |                                 ^~~~~~~~~~~~~~~~~~~~~~~~
 /srv/bigdisk/jgwohlbier/zcu104/zynqpspl_workspace/tmr_psled_r5/src/timer_psled_r5.c:174:33: note: in expansion of macro 'UART_DEVICE_ID'
   174 |                                 UART_DEVICE_ID, UART_INT_IRQ_ID);
       |                                 ^~~~~~~~~~~~~~
 /srv/bigdisk/jgwohlbier/zcu104/zynqpspl_workspace/tmr_psled_r5/src/timer_psled_r5.c:102:33: note: each undeclared identifier is reported only once for each function it appears in
   102 | #define UART_DEVICE_ID          XPAR_XUARTPS_1_DEVICE_ID
       |                                 ^~~~~~~~~~~~~~~~~~~~~~~~
 /srv/bigdisk/jgwohlbier/zcu104/zynqpspl_workspace/tmr_psled_r5/src/timer_psled_r5.c:174:33: note: in expansion of macro 'UART_DEVICE_ID'
   174 |                                 UART_DEVICE_ID, UART_INT_IRQ_ID);
       |                                 ^~~~~~~~~~~~~~
[ERROR] /srv/bigdisk/jgwohlbier/zcu104/zynqpspl_workspace/tmr_psled_r5/src/timer_psled_r5.c:109:33: error: 'XPAR_XGPIOPS_0_DEVICE_ID' undeclared (first use in this function); did you mean 'XPAR_XADCPS_0_DEVICE_ID'?
   109 | #define GPIO_DEVICE_ID          XPAR_XGPIOPS_0_DEVICE_ID
       |                                 ^~~~~~~~~~~~~~~~~~~~~~~~
 /srv/bigdisk/jgwohlbier/zcu104/zynqpspl_workspace/tmr_psled_r5/src/timer_psled_r5.c:181:39: note: in expansion of macro 'GPIO_DEVICE_ID'
   181 |         Status = PsGpioSetup(&PsGpio, GPIO_DEVICE_ID);
       |                                       ^~~~~~~~~~~~~~
[ERROR] /srv/bigdisk/jgwohlbier/zcu104/zynqpspl_workspace/tmr_psled_r5/src/timer_psled_r5.c:59:33: error: 'XPAR_TMRCTR_0_DEVICE_ID' undeclared (first use in this function); did you mean 'XPAR_XADCPS_0_DEVICE_ID'?
    59 | #define TMRCTR_DEVICE_ID        XPAR_TMRCTR_0_DEVICE_ID
       |                                 ^~~~~~~~~~~~~~~~~~~~~~~
 /srv/bigdisk/jgwohlbier/zcu104/zynqpspl_workspace/tmr_psled_r5/src/timer_psled_r5.c:192:35: note: in expansion of macro 'TMRCTR_DEVICE_ID'
   192 |                                   TMRCTR_DEVICE_ID,
       |                                   ^~~~~~~~~~~~~~~~
[ERROR] /srv/bigdisk/jgwohlbier/zcu104/zynqpspl_workspace/tmr_psled_r5/src/timer_psled_r5.c:60:33: error: 'XPAR_FABRIC_AXI_TIMER_0_INTERRUPT_INTR' undeclared (first use in this function); did you mean 'XPAR_AXI_TIMER_0_INTERRUPT_PARENT'?
    60 | #define TMRCTR_INTERRUPT_ID     XPAR_FABRIC_AXI_TIMER_0_INTERRUPT_INTR
       |                                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 /srv/bigdisk/jgwohlbier/zcu104/zynqpspl_workspace/tmr_psled_r5/src/timer_psled_r5.c:60:33: note: in definition of macro 'TMRCTR_INTERRUPT_ID'
    60 | #define TMRCTR_INTERRUPT_ID     XPAR_FABRIC_AXI_TIMER_0_INTERRUPT_INTR
       |                                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 /srv/bigdisk/jgwohlbier/zcu104/zynqpspl_workspace/tmr_psled_r5/src/timer_psled_r5.c: In function 'PsGpioSetup':
[ERROR] /srv/bigdisk/jgwohlbier/zcu104/zynqpspl_workspace/tmr_psled_r5/src/timer_psled_r5.c:109:33: error: 'XPAR_XGPIOPS_0_DEVICE_ID' undeclared (first use in this function); did you mean 'XPAR_XADCPS_0_DEVICE_ID'?
   109 | #define GPIO_DEVICE_ID          XPAR_XGPIOPS_0_DEVICE_ID
       |                                 ^~~~~~~~~~~~~~~~~~~~~~~~
 /srv/bigdisk/jgwohlbier/zcu104/zynqpspl_workspace/tmr_psled_r5/src/timer_psled_r5.c:263:46: note: in expansion of macro 'GPIO_DEVICE_ID'
   263 |         GpioConfigPtr = XGpioPs_LookupConfig(GPIO_DEVICE_ID);
       |                                              ^~~~~~~~~~~~~~
 /srv/bigdisk/jgwohlbier/zcu104/zynqpspl_workspace/tmr_psled_r5/src/timer_psled_r5.c:259:49: warning: unused parameter 'DeviceId' [-Wunused-parameter]
   259 | int PsGpioSetup(XGpioPs* PsGpioInstancePtr, u16 DeviceId)
       |                                             ~~~~^~~~~~~~
 /srv/bigdisk/jgwohlbier/zcu104/zynqpspl_workspace/tmr_psled_r5/src/timer_psled_r5.c: In function 'TmrCtrSetupIntrSystem':
 /srv/bigdisk/jgwohlbier/zcu104/zynqpspl_workspace/tmr_psled_r5/src/timer_psled_r5.c:427:38: warning: unused parameter 'DeviceId' [-Wunused-parameter]
   427 |                                  u16 DeviceId,
       |                                  ~~~~^~~~~~~~
 /srv/bigdisk/jgwohlbier/zcu104/zynqpspl_workspace/tmr_psled_r5/src/timer_psled_r5.c:429:37: warning: unused parameter 'TmrCtrNumber' [-Wunused-parameter]
   429 |                                  u8 TmrCtrNumber)
       |                                  ~~~^~~~~~~~~~~~
 /srv/bigdisk/jgwohlbier/zcu104/zynqpspl_workspace/tmr_psled_r5/src/timer_psled_r5.c: In function 'Handler':
 /srv/bigdisk/jgwohlbier/zcu104/zynqpspl_workspace/tmr_psled_r5/src/timer_psled_r5.c:690:20: warning: unused parameter 'CallBackRef' [-Wunused-parameter]
   690 | void Handler(void *CallBackRef, u32 Event, unsigned int EventData)
       |              ~~~~~~^~~~~~~~~~~
 /srv/bigdisk/jgwohlbier/zcu104/zynqpspl_workspace/tmr_psled_r5/src/timer_psled_r5.c:690:37: warning: unused parameter 'Event' [-Wunused-parameter]
   690 | void Handler(void *CallBackRef, u32 Event, unsigned int EventData)
       |                                 ~~~~^~~~~
 /srv/bigdisk/jgwohlbier/zcu104/zynqpspl_workspace/tmr_psled_r5/src/timer_psled_r5.c:690:57: warning: unused parameter 'EventData' [-Wunused-parameter]
   690 | void Handler(void *CallBackRef, u32 Event, unsigned int EventData)
       |                                            ~~~~~~~~~~~~~^~~~~~~~~
 make[2]: *** [CMakeFiles/tmr_psled_r5.elf.dir/build.make:80: CMakeFiles/tmr_psled_r5.elf.dir/timer_psled_r5.c.obj] Error 1
 make[2]: Leaving directory '/srv/bigdisk/jgwohlbier/zcu104/zynqpspl_workspace/tmr_psled_r5/build'
 make[1]: *** [CMakeFiles/Makefile2:86: CMakeFiles/tmr_psled_r5.elf.dir/all] Error 2
 make[1]: Leaving directory '/srv/bigdisk/jgwohlbier/zcu104/zynqpspl_workspace/tmr_psled_r5/build'
 make: *** [Makefile:94: all] Error 2

If I check out the 2024.2 branch of the tutorial and use that file it is better, but still

[ 50%] Building C object CMakeFiles/tmr_psled_r5.elf.dir/timer_psled_r5.c.obj
 /data/packages/Xilinx/Vitis/2023.2/gnu/armr5/lin/gcc-arm-none-eabi/bin/armr5-none-eabi-gcc  -isystem /srv/bigdisk/jgwohlbier/zcu104/zynqpspl_workspace/zynqpspl_platform/export/zynqpspl_platform/sw/standalone_psu_cortexr5_0/include -isystem /data/packages/Xilinx/Vitis/2023.2/gnu/armr5/lin/gcc-arm-none-eabi/x86_64-oesdk-linux/usr/lib/arm-xilinx-eabi/gcc/arm-xilinx-eabi/12.2.0/include -isystem /data/packages/Xilinx/Vitis/2023.2/gnu/armr5/lin/gcc-arm-none-eabi/x86_64-oesdk-linux/usr/lib/arm-xilinx-eabi/gcc/arm-xilinx-eabi/12.2.0/include-fixed -isystem /data/packages/Xilinx/Vitis/2023.2/gnu/armr5/lin/gcc-arm-none-eabi/armrm-xilinx-eabi/usr/include -O2 -DSDT -mcpu=cortex-r5 -mfloat-abi=hard -mfpu=vfpv3-d16 -DARMR5  -MMD -MP -specs=/srv/bigdisk/jgwohlbier/zcu104/zynqpspl_workspace/zynqpspl_platform/export/zynqpspl_platform/sw/standalone_psu_cortexr5_0/Xilinx.spec -I/srv/bigdisk/jgwohlbier/zcu104/zynqpspl_workspace/zynqpspl_platform/export/zynqpspl_platform/sw/standalone_psu_cortexr5_0/include -Wall -Wextra      -O0  -g3     -U__clang__ -MD -MT CMakeFiles/tmr_psled_r5.elf.dir/timer_psled_r5.c.obj -MF CMakeFiles/tmr_psled_r5.elf.dir/timer_psled_r5.c.obj.d -o CMakeFiles/tmr_psled_r5.elf.dir/timer_psled_r5.c.obj -c /srv/bigdisk/jgwohlbier/zcu104/zynqpspl_workspace/tmr_psled_r5/src/timer_psled_r5.c
 /srv/bigdisk/jgwohlbier/zcu104/zynqpspl_workspace/tmr_psled_r5/src/timer_psled_r5.c: In function 'main':
[ERROR] /srv/bigdisk/jgwohlbier/zcu104/zynqpspl_workspace/tmr_psled_r5/src/timer_psled_r5.c:50:33: error: 'XPAR_FABRIC_AXI_TIMER_0_INTR' undeclared (first use in this function)
    50 | #define TMRCTR_INTERRUPT_ID     XPAR_FABRIC_AXI_TIMER_0_INTR
       |                                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
 /srv/bigdisk/jgwohlbier/zcu104/zynqpspl_workspace/tmr_psled_r5/src/timer_psled_r5.c:182:35: note: in expansion of macro 'TMRCTR_INTERRUPT_ID'
   182 |                                   TMRCTR_INTERRUPT_ID,
       |                                   ^~~~~~~~~~~~~~~~~~~
 /srv/bigdisk/jgwohlbier/zcu104/zynqpspl_workspace/tmr_psled_r5/src/timer_psled_r5.c:50:33: note: each undeclared identifier is reported only once for each function it appears in
    50 | #define TMRCTR_INTERRUPT_ID     XPAR_FABRIC_AXI_TIMER_0_INTR
       |                                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
 /srv/bigdisk/jgwohlbier/zcu104/zynqpspl_workspace/tmr_psled_r5/src/timer_psled_r5.c:182:35: note: in expansion of macro 'TMRCTR_INTERRUPT_ID'
   182 |                                   TMRCTR_INTERRUPT_ID,
       |                                   ^~~~~~~~~~~~~~~~~~~
 /srv/bigdisk/jgwohlbier/zcu104/zynqpspl_workspace/tmr_psled_r5/src/timer_psled_r5.c: In function 'PsGpioSetup':
 /srv/bigdisk/jgwohlbier/zcu104/zynqpspl_workspace/tmr_psled_r5/src/timer_psled_r5.c:248:53: warning: unused parameter 'BaseAddr' [-Wunused-parameter]
   248 | int PsGpioSetup(XGpioPs* PsGpioInstancePtr, UINTPTR BaseAddr)
       |                                             ~~~~~~~~^~~~~~~~
 /srv/bigdisk/jgwohlbier/zcu104/zynqpspl_workspace/tmr_psled_r5/src/timer_psled_r5.c: In function 'TmrCtrSetupIntrSystem':
 /srv/bigdisk/jgwohlbier/zcu104/zynqpspl_workspace/tmr_psled_r5/src/timer_psled_r5.c:416:42: warning: unused parameter 'BaseAddr' [-Wunused-parameter]
   416 |                                  UINTPTR BaseAddr,
       |                                  ~~~~~~~~^~~~~~~~
 /srv/bigdisk/jgwohlbier/zcu104/zynqpspl_workspace/tmr_psled_r5/src/timer_psled_r5.c:418:37: warning: unused parameter 'TmrCtrNumber' [-Wunused-parameter]
   418 |                                  u8 TmrCtrNumber)
       |                                  ~~~^~~~~~~~~~~~
 /srv/bigdisk/jgwohlbier/zcu104/zynqpspl_workspace/tmr_psled_r5/src/timer_psled_r5.c: In function 'Handler':
 /srv/bigdisk/jgwohlbier/zcu104/zynqpspl_workspace/tmr_psled_r5/src/timer_psled_r5.c:679:20: warning: unused parameter 'CallBackRef' [-Wunused-parameter]
   679 | void Handler(void *CallBackRef, u32 Event, unsigned int EventData)
       |              ~~~~~~^~~~~~~~~~~
 /srv/bigdisk/jgwohlbier/zcu104/zynqpspl_workspace/tmr_psled_r5/src/timer_psled_r5.c:679:37: warning: unused parameter 'Event' [-Wunused-parameter]
   679 | void Handler(void *CallBackRef, u32 Event, unsigned int EventData)
       |                                 ~~~~^~~~~
 /srv/bigdisk/jgwohlbier/zcu104/zynqpspl_workspace/tmr_psled_r5/src/timer_psled_r5.c:679:57: warning: unused parameter 'EventData' [-Wunused-parameter]
   679 | void Handler(void *CallBackRef, u32 Event, unsigned int EventData)
       |                                            ~~~~~~~~~~~~~^~~~~~~~~
 make[2]: *** [CMakeFiles/tmr_psled_r5.elf.dir/build.make:80: CMakeFiles/tmr_psled_r5.elf.dir/timer_psled_r5.c.obj] Error 1
 make[2]: Leaving directory '/srv/bigdisk/jgwohlbier/zcu104/zynqpspl_workspace/tmr_psled_r5/build'
 make[1]: *** [CMakeFiles/Makefile2:86: CMakeFiles/tmr_psled_r5.elf.dir/all] Error 2
 make[1]: Leaving directory '/srv/bigdisk/jgwohlbier/zcu104/zynqpspl_workspace/tmr_psled_r5/build'
 make: *** [Makefile:94: all] Error 2

There is no variable XPAR_FABRIC_AXI_TIMER_0_INTR defined in any of the headers, and I don't see a suitable replacement.

主要语言
没有语言数据
星标
173
派生
71
平均合并
9 分钟
30 天内合并 PR
1

环境准备

这个项目没有提供开发容器、Dockerfile 或贡献指南,环境需要你自己搭建:先看它的 README,通用步骤见我们的新手贡献指南。

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

Xilinx/Embedded-Design-Tutorials 的其他 Issue

查看 Xilinx/Embedded-Design-Tutorials 的全部 Issue

相似的 Issue

更多 Embedded & IoT Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。