timer_psled_r5.c is broken
Nobody has claimed this yet.
Assessment
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Newbie friendliness
- 35/100
- Issue type
- Bug
- Clarity
- Needs clarification
- Activity status
- Stale
- Tech stack
- c
- Domain
- embedded-iot
Research direction
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.
Written by the indexing model from the issue text.
Description
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.
- Dominant language
- No language data
- Stars
- 172
- Forks
- 70
- Avg merge
- 9m
- Merged PRs (30d)
- 1
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from Xilinx/Embedded-Design-Tutorials
-
Difficulty 2/5 1-3 hours Newbie friendliness 45/100
-
Difficulty 1/5 Under an hour Newbie friendliness 48/100
-
Difficulty 4/5 3-5 days Newbie friendliness 25/100
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 55/100
Xilinx/Embedded-Design-Tutorials#52 · 3 comments ·
-
Difficulty 4/5 3-5 days Newbie friendliness 28/100
All issues in Xilinx/Embedded-Design-Tutorials
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
zephyrproject-rtos/zephyr#120011 ·
-
Status: Waiting triage Type: Bug
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
nanoframework/Home#1857 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
DiamondLightSource/dodal#2211 ·
-
CVA6 cache increase Open
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 84/100