[roll] Roll fuchsia [kernel][dev] Add a post-vm initialization step for bootstrap drivers

This allows the interrupt controllers to use the mmu to map their
registers which removes the need for physboot to map and/or set up
periphmap.

Since the GICs and plics are initialized later, any driver that needs to
register an interrupt also needs to do so in this stage, and a new LK
init level INTC is created for any drivers doing work in an init hook.

To accomplish this the following drivers needed modifications:
generic32 watchdog
arm generic timer
gicv2
gicv3
plic

Ultimately, this will allow the GICv3 driver to properly detect how big its
redirector aperture is by directly reading the version from the device
itself and then computing how much mmio it needs to map.

Original-Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/1392963
Original-Revision: 2ae2c0043afdaf18f5e47c31632079f17d74f9b7
GitOrigin-RevId: b3585e6a2fe99d89ed9ba0d6532c76a5b9f795a5
Change-Id: I4a2ce1af00f3543ef3bea96e5d06d952b7811f1a
1 file changed
tree: 9e5519cbb8afbc46b3e752d5e99de82ee47d260f
  1. ctf/
  2. git-hooks/
  3. infra/
  4. third_party/
  5. cobalt
  6. flower
  7. jiri.lock
  8. MILESTONE
  9. minimal
  10. prebuilts
  11. README.md
  12. stem
  13. test_durations
README.md

Integration

This repository contains Fuchsia's Global Integration manifest files.

Making changes

All changes should be made to the internal version of this repository. Our infrastructure automatically updates this version when the internal one changes.

Currently all changes must be made by a Google employee. Non-Google employees wishing to make a change can ask for assistance in one of the communication channels documented at get involved.

Obtaining the source

First install Jiri.

Next run:

$ jiri init
$ jiri import minimal https://fuchsia.googlesource.com/integration
$ jiri update

Third party

Third party projects should have their own subdirectory in ./third_party.