SIGN IN SIGN UP

aarch64: add serial port interrupt handling for basic interactivity (#948)

* Interrupts from the PL011 serial port are now configured
  in the GIC and handled similarly to COM serial ports on x86_64.

* The `device_manager` implements serial port configuration
  for aarch64 too.

* `deferred_interrupt_tasks` is now supported on aarch64.

* COM1 (the main UART serial port on aarch64 boards with a PL011 device)
  now listens for incoming data and spawns a new `hull` shell upon receiving inputs.
  * Log messages still appear while this console runs, but since we don't yet
    support dynamically loading/linking applications on aarch64,
    you cannot actually do anything with the `hull` shell.

* Note: we can revert some changes of commit 4e8a63f once relocations
  (linking and loading) are supported on aarch64, namely the changes
  that add a direct dependency on `hull`.

* Ensure correct FIFO mode & interrupt settings in `serial_port_basic`.

Co-authored-by: Kevin Boos <kevinaboos@gmail.com> fb27c24f7d47b69c90650116c7e6c355c5fd836f
K
kevinaboos committed
c837f59fbf2fba04830249b53caec00e5c8f854c
Parent: 28a963c