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 registrador | Largura |
---|---|---|
0x00 | DR | 12 |
0x04 | RSR | 4 |
0x18 | FR | 9 |
0x20 | ILPR | 8 |
0x24 | IBRD | 16 |
0x28 | FBRD | 6 |
0x2c | LCR_H | 8 |
0x30 | CR | 16 |
0x34 | IFLS | 6 |
0x38 | IMSC | 11 |
0x3c | RIS | 11 |
0x40 | MIS | 11 |
0x44 | ICR | 11 |
0x48 | DMACR | 3 |
- Também existem alguns registradores de ID que foram omitidos por brevidade.