Page MenuHomeFreeBSD

arm64: update early printf support
AbandonedPublic

Authored by jchandra on Feb 4 2019, 7:44 PM.
Tags
None
Referenced Files
Unknown Object (File)
Dec 23 2023, 1:19 AM
Unknown Object (File)
Nov 12 2023, 2:16 AM
Unknown Object (File)
Oct 17 2023, 5:19 AM
Unknown Object (File)
Aug 24 2023, 4:58 PM
Unknown Object (File)
Jul 4 2023, 2:20 AM
Unknown Object (File)
Jun 9 2023, 10:02 PM
Unknown Object (File)
May 11 2023, 12:38 PM
Unknown Object (File)
Mar 4 2023, 12:06 AM
Subscribers

Details

Reviewers
andrew
manu
jchandra
Group Reviewers
arm64
Summary

Using mov to load the UART address limits the possible values for
SOCDEV_PA and SOCDEV_VA. Change to use ldr.

[RFC, trying to see if this will be useful for others]

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Skipped
Unit
Tests Skipped
Build Status
Buildable 22342

Event Timeline

I've been thinking about reserving a fixed VA on arm64 for this and reworking how we set the range for EARLY_PRINTF. The idea would be we only need to set the physical address, the virtual address base will be fixed, with the offset dependent on the physical address.

My idea is to then rework EARLY_PRINTF to be set in the config with something like:

options SOCDEV_PA=0x12345000
options EARLY_PRINTF=pl011

It would then enable EARLY_PRINTF in the pl011 driver with a physical base of 0x12345000.

Having said this, I'm happy with this to get it working for now.

This revision is now accepted and ready to land.Feb 4 2019, 8:58 PM
This comment was removed by jchandra.

Dropping this for now. We need better EARLY_PRINTF support like andrew noted above before adding this.