A machine in my possesion has memory starting at 0x8000000000
which is just shortly after what 39 bits of virtual address
space can handle. IO ports, like UART, are inside of those
first 39 bits though.
Our bootup code requires an identity mapped TTBR0 until it
jumps into kernel VA space. To be able to cope with those areas
we need to use 48 bit VA space for TTBR0 and add another
pagetable level by starting the translation at L0.
This way we can create 2 512GiB identitiy mappings to handle
the first 39 bits and the space our kernel runs in.