Tabela de conteúdos
UART
O console expõe os pinos RX (GPIO 45) e TX (GPIO 46) da UART1 (“porta serial”) nos pads logo abaixo da antena. Ela pode ser usada como console para o kernel do Linux. Não se conhece uso oficial desta porta pela Z Inc.
Uso
Configuração da porta
Por default, estes pinos são configurados para serem usados pela UART1DM, que compartilha o módulo da UART padrão, porém, com capacidade de atingir velocidades maiores. Por motivos de simplicidade, eles podem ser configurados no modo UART, através de alteração no OEMSBL (permanente) ou via JTAG (temporário).
Para configuração via JTAG, execute os seguintes comandos no OpenOCD (conectado ao tap do ARM9):
mww phys 0xa9000020 45 mww phys 0xa9000024 5 mww phys 0xa9000020 46 mww phys 0xa9000024 5
Via OEMSBL, faça as seguintes modificações na imagem OEMSBL2 e escreva de volta na NAND:
Offset 0x270e4, altere os bytes de: 12 2D 06 00 para 11 2D 02 00 Offset 0x270e8, altere os bytes de: 13 2E 07 00 para 11 2E 02 00
Ativação do módulo
Como o bloco de UART do SoC está desativado, é necessário rotear o clock para este módulo. Não há documentação que explique exatamente de qual branch o clock virá, mas acreditamos que com a configuração demonstrada abaixo, seja o TCXO:
mww phys 0xa86000e0 0x30
Para configurar os parâmetros de comunicação da UART, use como referência: https://gitorious.org/lk-msm7200a-htc-wince/lk-msm7200a-htc-wince/blobs/master/platform/msm_shared/uart.c?p=lk-msm7200a-htc-wince:lk-msm7200a-htc-wince.git;a=blob;f=platform/msm_shared/uart.c;h=cdd96680c65f1c2d27fee3b3afb7343b04a91ff7;hb=e9d089077e17488d1d7266cb594610c536017e0d