Backup e restauração da NAND?
2 participantes
Open Zeebo :: GERAL :: Open Zeebo
Página 1 de 1
Backup e restauração da NAND?
Vi recentemente que o O3 conseguiu realizar um dump da nand do console, inclusive disponibilizou o código pela wiki.
A questão é a seguinte: Existe uma forma de restaurar esse dump da nand para o console? Assim como costuma-se fazer no Nintendo Wii.
Seria uma boa, caso corrompesse algum arquivo ou assinatura em uma "fuçada" pelo sistema via Jtag. Assim poderíamos fazer mais testes sem medo de perder nosso sistema =p...
EDIT: Pelo que vi, ele copia a nand para a ram do zeebo, e dai captura para o PC. Existe maneira de fazer o caminho inversos?
A questão é a seguinte: Existe uma forma de restaurar esse dump da nand para o console? Assim como costuma-se fazer no Nintendo Wii.
Seria uma boa, caso corrompesse algum arquivo ou assinatura em uma "fuçada" pelo sistema via Jtag. Assim poderíamos fazer mais testes sem medo de perder nosso sistema =p...
EDIT: Pelo que vi, ele copia a nand para a ram do zeebo, e dai captura para o PC. Existe maneira de fazer o caminho inversos?
Lucas Mousinho- Membro
- Mensagens : 19
Data de inscrição : 24/03/2011
Localização : Belém / Pará
Re: Backup e restauração da NAND?
Não vou te dizer "sim!", porque ainda não o fiz. Mas, sim, não tem motivo nenhum para não funcionar.
Só ainda não testei, pois o dumper que coloquei lá no repo só contempla as funções de leitura e ainda não tive tempo de escrever um "writer". E, o RevSkills que teria esta função, atualmente não funciona.
O processo de escrita é um pouco mais complicado. Para NANDs, se você quiser alterar um byte, você deve primeiro apagar todo o bloco que aquele byte está e gravar todas as páginas novamente. No caso da NAND do Zeebo, um bloco tem 128 kB, que corresponde a 64 páginas de 2 kB. Então, para persistir 1 byte, deve-se mexer em 128 kB. Infelizmente não dá só para mover da RAM para a NAND. O código deve fazer todo este procedimento.
A abordagem do dumper e do RevSkills são diferentes, e o dumper foi feito para melhor entender o controlador de NAND do MSM. Foi o caminho "mais díficil". Provavelmente vou largar o dumper em asm que roda no console e escrever outro que comunica diretamente com o OpenOCD, e copia os blocos iterativamente, direto para o PC. Assim, apagar e escrever a NAND será só mais um pequeno passo para implementar.
Só ainda não testei, pois o dumper que coloquei lá no repo só contempla as funções de leitura e ainda não tive tempo de escrever um "writer". E, o RevSkills que teria esta função, atualmente não funciona.
O processo de escrita é um pouco mais complicado. Para NANDs, se você quiser alterar um byte, você deve primeiro apagar todo o bloco que aquele byte está e gravar todas as páginas novamente. No caso da NAND do Zeebo, um bloco tem 128 kB, que corresponde a 64 páginas de 2 kB. Então, para persistir 1 byte, deve-se mexer em 128 kB. Infelizmente não dá só para mover da RAM para a NAND. O código deve fazer todo este procedimento.
A abordagem do dumper e do RevSkills são diferentes, e o dumper foi feito para melhor entender o controlador de NAND do MSM. Foi o caminho "mais díficil". Provavelmente vou largar o dumper em asm que roda no console e escrever outro que comunica diretamente com o OpenOCD, e copia os blocos iterativamente, direto para o PC. Assim, apagar e escrever a NAND será só mais um pequeno passo para implementar.
Open Zeebo :: GERAL :: Open Zeebo
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos
|
|