Um driver UART melhor

O PL011 na verdade tem um monte de outros registradores, e adicionar deslocamentos para construir ponteiros para acesså-los é propenso a erros e difícil de ler. Além disso, alguns deles são campos de bits que seria bom acessar de forma estruturada.

Deslocamento (offset)Nome do registradorLargura
0x00DR12
0x04RSR4
0x18FR9
0x20ILPR8
0x24IBRD16
0x28FBRD6
0x2cLCR_H8
0x30CR16
0x34IFLS6
0x38IMSC11
0x3cRIS11
0x40MIS11
0x44ICR11
0x48DMACR3
  • TambĂ©m existem alguns registradores de ID que foram omitidos por brevidade.