Skip to content

Conversation

@Ivan-Velickovic
Copy link
Contributor

See commit messages for details.

@Ivan-Velickovic Ivan-Velickovic force-pushed the bcm2712 branch 2 times, most recently from 5a4565a to 831f110 Compare October 7, 2025 23:41
@Ivan-Velickovic Ivan-Velickovic force-pushed the bcm2712 branch 5 times, most recently from 33b97e6 to 80dec9e Compare October 8, 2025 11:15
I had this line:

READ_CELL(num_size_cells, curr_range, x + y));

which ended up being evaluated to
addr + (x + y * sizeof(uint32_t))

which gave the completely wrong thing.

Now the macros should work if addr or offset are expressions.

Signed-off-by: Ivan Velickovic <i.velickovic@unsw.edu.au>
The Device Tree nodes for devices on certain platforms does not describe
the actual MMIO address in the 'reg' field. Instead, it can be an offset
of the parent bus address.

Rather than taking the values of 'reg' as the MMIO registers directly,
we have to check that the 'ranges' field exists on the parent and then
use it to potentially translate the child node's address.

I ran into this when porting the Raspberry Pi 5 to sel4test, where
the timer peripheral is allocated via the DTB node unlike other platform
support where the device address/IRQs are hard-coded.

See section 2.3.8 of v0.4 of the Device Tree specification for more
details.

Signed-off-by: Ivan Velickovic <i.velickovic@unsw.edu.au>
My main goal with this patch is to allow for sel4test to work on the
Raspberry Pi 5B, for this reason I have not supported as many
peripherals as there is for BCM2711.

Mainly GPIO is not supported.

My understanding is that the default UART, unlike previous BCM SoCs
supported, is not on the GPIO pins anymore.

The BCM2712 does still have support for the BCM mini UART however
it is now placed on the PCIe bus rather than being directly
connected to the SoC. The default UART for BCM2712 is instead
the PL011 so I've added support for that.

Signed-off-by: Ivan Velickovic <i.velickovic@unsw.edu.au>
@Ivan-Velickovic
Copy link
Contributor Author

@Indanz I believe I've addressed all the feedback now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants