El REGULADOR de destello para el m3329 se debe configurar de tal modo un flash alcanzado tiene, porque la identificación etc. selecto además más jtag del par el lugar 0xb8000090 0xF0005 escribir. Después el flash uno reconoce y puede ser descrito. * el que puede ser herramienta usada: OCDemon o el openwince es algo toda la misma cosa principal PrAcc de los breckis del jtag y la programación del modo de octeto se apoya (con mí a propósito está un drinn de en29lv160at)
adobe lo he traducido con google pues yo con el aleman caput,espero que los que saben mas le den utilidad |
Perdonar , de donde a salido esa informacion, alguien puede explicarlo.
|
Esto es un copy paste del foro aleman lo puse por lo de las direcciones, como uno no sabe demasido crei que pudiera ser util.
|
la informacion la ha colgado adobe talvez guarde la pagina
|
Pues de aqui:
http://www.sat-ulc.com/ulc/thread.php?threadid=39452&sid= Me temo que la cosa se complica, según entiendo, entre la cpu y la flash hay un controlador de dispositivo que al igual que cuando el wrt54g.c borra el watchdog "ejtag_write(0xb8000080,0);" para el de la flash esta en xb8000090. yo he probado con "ejtag_write(0xb8000090,xxxx);" con algunos valores y no detecta la flash pero lee en distinto orden de bytes, o sea que actua sobre la flash. Esperemos a ver que van averiguando. Saludos. |
He escrito un mail al que escribio esta info en ese foro, he encontrado una pagina en la cual se habla de estas direcciones :
bdiGDB configuration file for IDT79S334A board [INIT] ; Setup Internal Bus WM32 0xFFFFE200 0xAA82AAAA ;CPU Port Width Register, Flash 32bit WM32 0xFFFFE204 0x3FFFFFFF ;CPU BTA Register WM32 0xB8000000 0x3FFFFFFF ;BTA Register WM32 0xB8000004 0x00000007 ;Address Latch Timing Register ; WCP0 12 0x10010000 ;Setup Status Register, clear BEV WCP0 13 0x00000000 ;Clear Cause Register WCP0 16 0x00000003 ;Set kseg0 coherency WM32 0xB8000730 0x00000000 ;Disable Watchdog Timer ; ; Init memory controller WM32 0xB8000080 0x1FC00000 ;Memory Base Address Bank 0, Flash WM32 0xB8000084 0xFFC00000 ;Memory Base Mask Bank 0, Flash WM32 0xB8000088 0x04000000 ;Memory Base Address Bank 1, SRAM WM32 0xB800008C 0xFFF00000 ;Memory Base Mask Bank 1, SRAM WM32 0xB8000200 0x00002884 ;Memory Control Bank 0, Flash 32bit WM32 0xB8000204 0x00002863 ;Memory Control Bank 1, SRAM |
Hola a todos, ayer envie un mail al que puso esta informacion en el foro aleman haber si ellos nos pueden hechar una mano esto es lo que me constesto "SPIDER", al parece ellos tambien han podido leer la flash:
> Hi, do you know about this adress 0xb8000090 0xF0005 , Sorry I don´t understand this sentence. As I already written you can access the flash on the board by writing 0xf0005 to the dword address 0x58000090. for e.g. with open wince jtag "poke 0x58000090 0xf0005" then you can access the chip like any other, issue an "detectflash 0x1fc00000" or what ever. > we can read flash, but not write it, if can you help us , please write me . THANKS !!! which tool do you use for accessing the flash? If it is the wrt54g HDM tool, it can't access the flash even with issuing this sequence cause some problems in the PrAcc implementation. Actually you can read the flash but forget about writing. If you guys are the Spanish people who patched the wrt54g tool for reading say it as I have some info for this guys too. |
Haciendo un bucle en el numero de instruccion desde 1 hasta 1F me da las siguientes lineas:
sh-3.1$ wrt54g -probeonly /skipdetect /instrlen:5 /nocwd ==================================== WRT54G/GS EJTAG Debrick Utility v4.8 ==================================== Probing bus ... Instruccion: 00000001 Done Instruction Length set to 5 CPU Chip ID: 00000000000000000000000000000000 (00000000) *** CHIP DETECTION OVERRIDDEN *** Instruccion: 00000002 Done Instruction Length set to 5 CPU Chip ID: 00000000000000000000000000000000 (00000000) *** CHIP DETECTION OVERRIDDEN *** Instruccion: 00000003 Done Instruction Length set to 5 CPU Chip ID: 00000000110000000101001010001000 (00C05288) *** CHIP DETECTION OVERRIDDEN *** Instruccion: 00000004 Done Instruction Length set to 5 CPU Chip ID: 00000000000000000000000000000000 (00000000) *** CHIP DETECTION OVERRIDDEN *** Instruccion: 00000005 Done Instruction Length set to 5 CPU Chip ID: 00000000000000000000000000000000 (00000000) *** CHIP DETECTION OVERRIDDEN *** Instruccion: 00000006 Done Instruction Length set to 5 CPU Chip ID: 00000000000000000000000000000000 (00000000) *** CHIP DETECTION OVERRIDDEN *** Instruccion: 00000007 Done Instruction Length set to 5 CPU Chip ID: 00000000000000000000000000000000 (00000000) *** CHIP DETECTION OVERRIDDEN *** Instruccion: 00000008 Done Instruction Length set to 5 CPU Chip ID: 11111111001000000000001000000000 (FF200200) *** CHIP DETECTION OVERRIDDEN *** Instruccion: 00000009 Done Instruction Length set to 5 CPU Chip ID: 00001000000000000000000000000100 (08000004) *** CHIP DETECTION OVERRIDDEN *** Instruccion: 0000000a Done Instruction Length set to 5 CPU Chip ID: 00000000000001001000000100001000 (00048108) *** CHIP DETECTION OVERRIDDEN *** Instruccion: 0000000b Done Instruction Length set to 5 CPU Chip ID: 00000000000000000000000000000000 (00000000) *** CHIP DETECTION OVERRIDDEN *** Instruccion: 0000000c Done Instruction Length set to 5 CPU Chip ID: 00000000000000000000000000000000 (00000000) *** CHIP DETECTION OVERRIDDEN *** Instruccion: 0000000d Done Instruction Length set to 5 CPU Chip ID: 00000000000000000000000000000000 (00000000) *** CHIP DETECTION OVERRIDDEN *** Instruccion: 0000000e Done Instruction Length set to 5 CPU Chip ID: 00000000000000000000000000000000 (00000000) *** CHIP DETECTION OVERRIDDEN *** Instruccion: 0000000f Done Instruction Length set to 5 CPU Chip ID: 00000000000000000000000000000000 (00000000) *** CHIP DETECTION OVERRIDDEN *** Instruccion: 00000010 Done Instruction Length set to 5 CPU Chip ID: 00000000000000000000000000000000 (00000000) *** CHIP DETECTION OVERRIDDEN *** Instruccion: 00000011 Done Instruction Length set to 5 CPU Chip ID: 00000000000000000000000000000000 (00000000) *** CHIP DETECTION OVERRIDDEN *** Instruccion: 00000012 Done Instruction Length set to 5 CPU Chip ID: 00000000000000000000000000000000 (00000000) *** CHIP DETECTION OVERRIDDEN *** Instruccion: 00000013 Done Instruction Length set to 5 CPU Chip ID: 00000000000000000000000000000000 (00000000) *** CHIP DETECTION OVERRIDDEN *** Instruccion: 00000014 Done Instruction Length set to 5 CPU Chip ID: 00000000000000000000000000000000 (00000000) *** CHIP DETECTION OVERRIDDEN *** Instruccion: 00000015 Done Instruction Length set to 5 CPU Chip ID: 00000000000000000000000000000000 (00000000) *** CHIP DETECTION OVERRIDDEN *** Instruccion: 00000016 Done Instruction Length set to 5 CPU Chip ID: 00000000000000000000000000000000 (00000000) *** CHIP DETECTION OVERRIDDEN *** Instruccion: 00000017 Done Instruction Length set to 5 CPU Chip ID: 00000000000000000000000000000000 (00000000) *** CHIP DETECTION OVERRIDDEN *** Instruccion: 00000018 Done Instruction Length set to 5 CPU Chip ID: 00000000000000000000000000000000 (00000000) *** CHIP DETECTION OVERRIDDEN *** Instruccion: 00000019 Done Instruction Length set to 5 CPU Chip ID: 00000000000000000000000000000000 (00000000) *** CHIP DETECTION OVERRIDDEN *** Instruccion: 0000001a Done Instruction Length set to 5 CPU Chip ID: 00000000000000000000000000000000 (00000000) *** CHIP DETECTION OVERRIDDEN *** Instruccion: 0000001b Done Instruction Length set to 5 CPU Chip ID: 00000000000000000000000000000000 (00000000) *** CHIP DETECTION OVERRIDDEN *** Instruccion: 0000001c Done Instruction Length set to 5 CPU Chip ID: 00000000000000000000000000000000 (00000000) *** CHIP DETECTION OVERRIDDEN *** Instruccion: 0000001d Done Instruction Length set to 5 CPU Chip ID: 00000000000000000000000000000000 (00000000) *** CHIP DETECTION OVERRIDDEN *** Instruccion: 0000001e Done Instruction Length set to 5 CPU Chip ID: 00000000000000000000000000000000 (00000000) *** CHIP DETECTION OVERRIDDEN *** - EJTAG IMPCODE ....... : 00000000110000000101001010001000 (00C05288) - EJTAG Version ....... : 1 or 2.0 - EJTAG DMA Support ... : No Issuing Processor / Peripheral Reset ... Done Enabling Memory Writes ... Done Halting Processor ... <Processor Entered Debug Mode!> ... Done Clearing Watchdog ... Skipped Probing Flash at (Flash Window: 0x1fc00000) ... Done *** Unknown or NO Flash Chip Detected *** *** REQUESTED OPERATION IS COMPLETE *** La 3 es ya conocida, y la 8, 9 y A dan otras cosas, por si ayuda. |
Hola, si miras en este manual o en el wrt54g.h veras que son
IDT™ Interprise™ 79RC32434 Integrated Communications Processor User Reference Manual // --- Some EJTAG Instruction Registers --- #define INSTR_EXTEST 0x00 #define INSTR_IDCODE 0x01 #define INSTR_SAMPLE 0x02 #define INSTR_IMPCODE 0x03 #define INSTR_ADDRESS 0x08 #define INSTR_DATA 0x09 #define INSTR_CONTROL 0x0A #define INSTR_BYPASS 0xFF Este manual no es de nuestro Ali pero sirve para hacernos una idea de lo que estamos tocando Con JTAG Tools 0.6-cvs-20051228, he sacado esta lectura, equivalente a la mostrada por zivago40. jtag> cable ppdev /dev/parport0 DLC5 Initializing Xilinx DLC5 JTAG Parallel Cable III on ppdev port /dev/parport0 jtag> discovery Detecting IR length ... 5 Detecting DR length for IR 11111 ... 1 Detecting DR length for IR 00000 ... -1 Detecting DR length for IR 00001 ... -1 Detecting DR length for IR 00010 ... -1 Detecting DR length for IR 00011 ... -1 Detecting DR length for IR 00100 ... 1 Detecting DR length for IR 00101 ... 1 Detecting DR length for IR 00110 ... 1 Detecting DR length for IR 00111 ... 1 Detecting DR length for IR 01000 ... 32 Detecting DR length for IR 01001 ... 32 Detecting DR length for IR 01010 ... 32 Detecting DR length for IR 01011 ... -1 Detecting DR length for IR 01100 ... -1 Detecting DR length for IR 01101 ... -1 Detecting DR length for IR 01110 ... -1 Detecting DR length for IR 01111 ... -1 Detecting DR length for IR 10000 ... -1 Detecting DR length for IR 10001 ... -1 Detecting DR length for IR 10010 ... -1 Detecting DR length for IR 10011 ... -1 Detecting DR length for IR 10100 ... -1 Detecting DR length for IR 10101 ... -1 Detecting DR length for IR 10110 ... -1 Detecting DR length for IR 10111 ... -1 Detecting DR length for IR 11000 ... -1 Detecting DR length for IR 11001 ... -1 Detecting DR length for IR 11010 ... -1 Detecting DR length for IR 11011 ... -1 Detecting DR length for IR 11100 ... -1 Detecting DR length for IR 11101 ... -1 Detecting DR length for IR 11110 ... -1 Sabemos que tenemos acceso a la memoria flash y que para leerla o escribirla hay que ejecutar, mandándole instrucción a instrucción a la Cpu Ali comenzando por la dirección 0xff200200 el programita ya codificado en binario que esta está en wrt54g.h esto se hace colocando la instrucción en el registro 0x08 y la dirección en el 0x09 y en el 0x0a es el de control. Todo esto es necesario porque no dispone de DMA. Para poder escribir, borrar, leer el Id de la flash hace falta escribir en ella y es aquí donde fallamos, también he de decir que usamos una utilidad no diseñada especificamente para el Ali. Tampoco disponemos de información de esta chip, la única información de este tipo de chips que tengo es la referenciada al principio y según esta, la flash es un dispositivo, manejada por un controlador de dispositivos con unos registros para configurar el acceso a cada dispositivo. The device controller on the RC32434 device provides a glueless interface to: SRAMs, ROMs/PROMs/ EEPROMs, dual port memories, and many peripheral devices. The device controller generates all of the signals required to support both Intel and Motorola style peripherals and can directly control up to six devices. Additional devices may be supported through external decoding of the address bus. Parece ser que si el ali funciona de forma similar al del manual, hace falta borrar el bit de WP (protección de escritura) en el registro correspondiente para poder seguir. Saludos. |
Aqui pongo estas direcciones sacada del ali-usb, tal vez sean de utilidad:
0B8000070 0B8001030 0B8001000 0B8001004 0B8000084 0B8000080 -----> segun el wrt54 es para "Clear Watchdog" 0B8000034 0B800007C ff200200 ff20003c ff203000 |
Y esto es una lectura de esa zona de registros, se observa que hay datos en las direcciones que aparecen en el USB.
- Selected Area Start ........ : b8000000 - Selected Area Length ....... : 00040000 *** You Selected to Backup the CFE.BIN *** ========================= Backup Routine Started ========================= Saving CFE.BIN.SAVED_20070602_063715 to Disk... [ 0% Backed Up] b8000000: 00000000 00000000 00000000 00000000 [ 0% Backed Up] b8000010: 00000000 00000000 00000000 00000000 [ 0% Backed Up] b8000020: 00000000 00000000 00000000 00000000 [ 0% Backed Up] b8000030: 00000000 00000000 00000000 00000000 [ 0% Backed Up] b8000040: 0001dfea 00000000 7fffffff 00000000 [ 0% Backed Up] b8000050: 007f4000 00000000 80000000 00000000 [ 0% Backed Up] b8000060: 00000000 00000000 00000000 00000000 [ 0% Backed Up] b8000070: 0004221b 00000000 00000000 00000000 [ 0% Backed Up] b8000080: 15040000 c1b33505 00000000 00000000 [ 0% Backed Up] b8000090: 003f0004 00000000 00000000 00000000 [ 0% Backed Up] b80000a0: 002aaaaa 00000000 0000ffff 00000000 [ 0% Backed Up] b80000b0: 00000000 00000000 00000000 00000000 [ 0% Backed Up] b80000c0: 00000000 00000000 00000000 00000000 [ 0% Backed Up] b80000d0: 00000000 00000000 00000000 00000000 [ 0% Backed Up] b80000e0: 00000000 00000000 00000000 00000000 [ 0% Backed Up] b80000f0: 00000000 00000000 00000000 00000000 |
Hola, segun he podido ver con el wrt54g , cuando hacemos un "backup" el registro EJTAG_CONTROL es el siguiente:
EJTAG_CONTROL....... : 00000000001001001100000100001000 (0024c108) Podemos observar los bits que tenemos activos : bit:3----->DM (modo debug) bit:8----->¿? (segun MPIS deveria estar a 0) bit:14---->ProbTrap (vector debug 1=dmseg at 0xFFFF FFFF FF20 0200) bit:15----->ProbeN (control servicio procesador) bit:18----->PraCC (acceder al procesador) bit:21----->Half (estado interno del clock 1=parado) Con esta configuracion del EJTAG_CONTROL tenemos acceso junto a las rutinas Pracc a la lectura de la flash. Pero cuando queremos grabar la flash, segun las pruebas que he hecho la lectura del EJTAG_CONTROL es la misma: EJTAG_CONTROL....... : 00000000001001001100000100001000 (0024c108) Aqui es donde temenos el problema, con esta configuracion vemos como el bit 19 (PRnW) lo tenemos a 0, el cual nos dice que el procesador esta en modo lectura. |
Hola a todos !!!, he escrito un mail al programador del bus ejtag del proyecto openwince (jtag-0.6), el cual tiene soporte para pracc, pero desafortunadamente no funciona con nuestro ALI, bueno me ha constetado con celeridad aqui pongo lo que me dice:
On Mon, Jun 04, 2007 at 05:17:50PM +0000, wrote: > ejtag.c(139) No processor access, ctrl=00000000001000001000000100001000 This means the program expects the target CPU to execute in debug mode, but the target CPU is doing something else (not fetching instructions through the JTAG cable). There could be many reasons, like a hardware watchdog timer which needs to be disabled quickly. > We have this error "ejtag.c(139) No procesor access", We only can read > flash with software "wrt54gv48" with Pracc routine, we put this new line: I have no idea how PrAcc flash read can work at all, if the CPU failed to enter the debug mode. > Halting Processor ... <Processor did NOT enter Debug Mode!> ... Done This basically means the same thing as "No processor access". > You can see ALI M3329 hasn't dma, we need to work with pracc routines, we > saw in the EJTAG_CONTROL the bit 19 Prnw=0, who put it in write mode ?, we Prnw=0 is correct (read mode according to the EJTAG spec, 1 is write mode). One possible reason why reading works but writing doesn't is using wrong access width (16-bit writes on 8-bit flash or vice versa). For reads, it is fastest to use 32 bits, but for writes, the width must be correct (in my patch, you can specify it by adding an offset to the address). > search about this ALI M3329 but nothing, ,we need some new idea for we can I'm afraid I can't help much without access to hardware, documentation _and_ a lot of time to play with it (unfortunately, I'm very busy). And, I was hoping my changes to openwince-jtag would be merged upstream, but the project seems to be dead. Marek Pues esto lo que me ha contestado, haver si hay alguien que domine el ingles y nos ponemos en contacto haver si nos dan alguna pista para seguir con este proyecto. |
He subido al up5 dos archivos que hablan de los registros de control del ejtag, uno de IDT y otro de procesadores MIPs de 32bits. Se llaman MD00016-2B-4K-SUM-01.17.zip y 79RC32364_MA_38374.zip. Para quien quiera saber lo del estado de los bits esta bien y mientras encontramos otra cosa para entretenerse no es mal. Saludos
|
Hola,
Marek propone como causa de que no se pueda escribir en la flash el que deba de ser accedida mediante un ancho de 8 bits, no nos puede ayudar porque no tiene ni tiempo, ni documentación, ni aparatito para jugar con el. De mis observaciones deduzco que es una cpu con lo que respecta al JTAG muy simple, no tiene IDCODE y si os fijáis solo tiene IMPCODE, CONTROL, ADDRESS y DATA, lo justito para poder hacer algo con el. En modo debug ya esta cuando arranca con el puente hacia adelante, o sea que no hay que preocuparse por ponerlo en modo debug, el hacer rutina PrAcc distinta no tiene dificultad en el wrt54g.h solo buscar un ensamblador para mips y la colocamos en el sitio adecuado. El WathDog, no se que decir, pues si la lee sin interrumpirse creo que esta desactivado o ni siquiera tiene. Así que yo sugiero para los que tienen el deco patas arriba y además conocimientos y equipo de pruebas que verifiquen si hay actividad el la patilla de la flash de WE cuando se le solicita la detección, reset o programación de la memoria, pues en el caso de que esa señal no este activada para escritura entonces el primer problema que hay que solucionar es activar el controlador de la flash para habilitar escrituras. De la info de zivago40, muy buena, como esa debería de estar para el ali, pero parece que la tienen reservada para uso interno; también Spider-man del foro alemán en contestación a manolo_321 comenta algo del acceso al a flash de 8 bits y el colocar en 0xb8000090 -> 0xf0005 esto en los IDT corresponde a la zona de controles de dispositivo. Un saludo. |
Hola a todos !!!!, tengo dos noticias, haber si con la ayuda de Spider y Hairy lo conseguimos, la primera es que "Spider" me ha enviado una modificacion del wrt54g, a qui pongo lo que me envio:
> Hi Spider!! we are working with "wrt54gv48" software, you search in > http://(No permitidos enlaces) this file "jtag-m3329". > I already know :) BUT there are some problems with your changes... for e.g. the 0xff300000 read issue you fixed is just because the switches are used the wrong way, there is no bug. and the PrAcc segfault is also only because of this miss use. I have changed the tool a little bit more to make it working. BUT don't use IMPCODE for detection!!this is just bad practice... detect, reading and (probably) erasing is working, but writing needs some feet back. So if you like, try it. La segunda es de Hairy: You may already have known this - but the debrick utility *should* be able to work on most all MIPS based processor. Some MIPS processors, of course, do not support DMA mode - but they all support PrAcc mode. The problem is the PrAcc mode is very slow by nature because it has to "feed" MIPS instructions to the processor that contain meaningful instrucions that get executed by the host (on the host). That complicates things over DMA mode where you can do things much easier... I know that someone has already done a bit of poking around on the ALI M3329 chip with respect to the JTAG debrick utility. I have attached that for you to try. I am not sure about why they made any changes (short of the Chip ID) - but all I can guess is that they were trying to avoid allowing instructions beyond a range... as the line they added was in the ExecuteDebugModule routine and it reads: if (offset > 0x3fff) offset = 0; Anyhow - I'm short on time tonight - so I'll just email this over in hopes this helps... Let me know if you get anywhere using this version or not and if you are still having trouble tomorrow I might be able to dig into things to try and help... Cheers, -hairydairymaid P.D voy a probar y os cuento. |
Buenas noticias,
Nuestro amigo Spider-Man (del foro aleman) ha modificado el wrt54g con la parte de PrAcc del openwince-jtag brecis y añadido lo del 0xb8000090 0xf0005" y yo como la flash de mi deco es una Mx le he añadido su definición y sorpresa!! detecta la flash y la lee con esta llamada ./wrt54g -backup:wholeflash /instrlen:5 /skipdetect /alienable. La detecta pues después de la detección he puesto para que me escriba en pantalla en código leído y es el de la flash, cosa que antes era la primera dirección de la memoria y como que para poder leer el código hay que escribir el ella pues creo que debe de funcionar en todos los modos y si no solo será cuestión de unos pequeños ajustes. En el up 5 lo dejo con las modificaciones de la flash MX. "wrt-ali.zip" Así que a probar los que lo tengan muerto, pues el mio vive y no arriesgo a borrar nada. Saludos. |
No he podido aguantarme y he borrado el ultimo sector -erase:nvram al leerlo antes de borrar salen datos, después ffffffffffffffffffffffff cuando lo arranco borrado me sale lo de PAgE en el display y si lo leo después ya tiene datos, ahora la estoy grabando el nvram que según esta configurado es el ultimo sector de la flash voy por el 26% va muy lento.
Edito para seguir la prueba, No graba bien, Graba esto: Erasing block: 35 (addr = 1fdf0000)...Done Loading NVRAM.BIN to Flash Memory... [ 0% Flashed] 1fdf0000: 12345678 00000000 03060164 03030303 y lee despues: Saving NVRAM.BIN.SAVED_20070606_093249 to Disk... [ 0% Backed Up] 1fdf0000: ff34ff78 ff00ff00 ff06ff64 ff03ff03 Edito por haber hecho mas pruebas, Me modificado la función para grabar la flash "void sflash_write_word" en modo byte y este es el resultado: ./wrt54g -flash:nvram /instrlen:5 /skipdetect /alienable Total Blocks to Erase: 1 Erasing block: 35 (addr = 1fdf0000)...Done Loading NVRAM.BIN to Flash Memory... [ 0% Flashed] 1fdf0000: 12345678 00000000 03060164 03030303 [ 0% Flashed] 1fdf0010: 00000000 00000300 00000000 03010000 [ 0% Flashed] 1fdf0020: 01002601 00000003 00000000 00000000 Y leo: ./wrt54g -backup:nvram /instrlen:5 /skipdetect /alienable ========================= Backup Routine Started ========================= Saving NVRAM.BIN.SAVED_20070606_100847 to Disk... [ 0% Backed Up] 1fdf0000: 12345678 00000000 03060164 03030303 [ 0% Backed Up] 1fdf0010: 00000000 00000300 00000000 03010000 [ 0% Backed Up] 1fdf0020: 01002601 00000003 00000000 00000000 O sea que graba correctamente, pero como lo hace en modo byte va más lento. Ahora ya sabemos que funciona el Jtag para el ali y también como lo hace, a ver si alguién se anima y mejora la rutina pracc para hacerla más rápida. Lo empaqueto y lo dejo en el 5 con nombre wrt-ali-graba.zip. Saludos. |
Cita:
Ya que esta, sabeis si puede influir el que le haya cambiado la memoria MX por la AMD y no la reconozca al encender y no pueda hacer nada con ella??? |
Y a mi que no me funciona el JTAG y con el deco muerto..... :(
Esta tarde voy a pedir un pc viejo le meto Ubuntu y a ver si me reconoce el JTAG, con un liveCD se puede hacer? es que tengo un Pc viejo pero sin HDD A ver si para mañana tengo un deco resucictado :D Cuando dices que tarda mucho, a cuanto te refiers más o menos? Que buen curro jubamo!!!!!! |
enhorabuena jubano por este logro tan importante y al resto de compañero que lo han intentado y claro es una ayuda inestemable repito felicidades a todos ahora a probar ya me he estado intentado pero no me entero con esto de linux bueno haber si leo un poco mas saludos
|
[QUOTE=omnitron;2910474]Y a mi que no me funciona el JTAG y con el deco muerto..... :(
Esta tarde voy a pedir un pc viejo le meto Ubuntu y a ver si me reconoce el JTAG, con un liveCD se puede hacer? es que tengo un Pc viejo pero sin HDD A ver si para mañana tengo un deco resucictado :D Cuando dices que tarda mucho, a cuanto te refiers más o menos? Que buen curro jubamo!!!!!![/QUOTE] Prueba con knoppix es mas rapido y a mi me ha dado menos problemas que ubuntu. El enlace me parece es [url]www.knoppix.com[/url] aunke en google no tienes problemas. Sin HDD no se si correra, para eso mejor, creo yo, RIP Linux, es un sistema muy pequeño que no tiene interfaz grafica (tampoco te hace falta). |
Lento: en 1 minuto graba 1400 bytes pues 2mB -> aprox 24 horas. en mi P3 a 500 mhz linux.
En la ultima reforma de dice la lectura del devid y si no la reconoce lo hace hasta 30 veces tu amd la debería de reconocer o al menos leer un codigo válido, de todas formas si es Boot como la mx que llevan utiliza /fc:1 Probing Flash at (Flash Window: 0x1fc00000) ... 0x00c2 0x0049 Done Recordad que con el compilador que comentó zivago40 se puede compilar para Xp. Para xeloa le hice una versión para el cable que ella utilizaba y podía leer. HairyDairyMaid, Marek, Spider_Man y algo de mi parte que he ido recogiendo de vosotros hemos hecho que funcione. Creo que si le quitamos la comprobación de si tiene giveio al compilarlo, también anda en w98, al menos arranca. EDITO: Teniendo en cuenta que FFFFFFFF lo salta y el firmware tiene casi la mitad pues tarda 12 Horas en grabar, Casi na!! Os recuerdo que en un pc con amd 1800Mhz también iba y por supuesto mas rápido. Este programa tal como esta es una adaptación para flashear el WRT54G y si queremos flashear solo alguna parte, ejemplo los que le pusieron otro booloader del principio habria que definir esa zona y asi con -flash:bootloader listo, pero también se pueden poner bloques definidos manualmente con: /window:0x1fc00000 ... custom flash window base (in HEX) /start:0x1fXXXXXXX .... custom start location (in HEX) /length:0x1fXXXXXXX ... custom length (in HEX) Creo que hay tema para rato. Saludos |
[QUOTE=jubamo;2910523]Lento: en 1 minuto graba 1400 bytes pues 2mB -> aprox 24 horas. en mi P3 a 500 mhz linux.
En la ultima reforma de dice la lectura del devid y si no la reconoce lo hace hasta 30 veces tu amd la debería de reconocer o al menos leer un codigo válido, de todas formas si es Boot como la mx que llevan utiliza /fc:1 Probing Flash at (Flash Window: 0x1fc00000) ... 0x00c2 0x0049 Done Recordad que con el compilador que comentó zivago40 se puede compilar para Xp. Para xeloa le hice una versión para el cable que ella utilizaba y podía leer. HairyDairyMaid, Marek, Spider_Man y algo de mi parte que he ido recogiendo de vosotros hemos hecho que funcione. Creo que si le quitamos la comprobación de si tiene giveio al compilarlo, también anda en w98, al menos arranca. EDITO: Teniendo en cuenta que FFFFFFFF lo salta y el firmware tiene casi la mitad pues tarda 12 Horas en grabar, Casi na!! Saludos[/QUOTE] No reconoce ninguna de las dos, en la amd sale 0xdf y con la mx 0x00, sigue sin activar ninguna patilla de la memoria y tengo que quitarle el reset del cable porque sino no lee nada, ni siquiera el impcode. |
Para utilizar el reset debes de usar /wiggler y este cable tiene otro conexionado,
en mis pruebas lo tengo al aire y lo uso sin la opción /wiggler. Si te lee el impcode es porque tienes acceso por Jtag asi que si tienes la memoria original o una equivalente deberia de funcionar, a no ser que este averiado o alguna pista mal. Fuerzala con /fc:XX a una que sea igual por si acaso. De todas formas espera a que vayan comentando experiencias, pues esto solo lo he probado yo de momento. |
[QUOTE=jubamo;2910557]Para utilizar el reset debes de usar /wiggler y este cable tiene otro conexionado,
en mis pruebas lo tengo al aire y lo uso sin la opción /wiggler. Si te lee el impcode es porque tienes acceso por Jtag asi que si tienes la memoria original o una equivalente deberia de funcionar, a no ser que este averiado o alguna pista mal. Fuerzala con /fc:XX a una que sea igual por si acaso. De todas formas espera a que vayan comentando experiencias, pues esto solo lo he probado yo de momento.[/QUOTE] Gracias, ya probare el viernes porque mañana tengo examenes. El cable es el wiggler igual que tu y sin la opcion. Estoy pensando que puede ser que la memoria este mal, pero eso ya otro dia. |
Muchas gracias a todos, por vuestro tiempo y empeño en este proyecto que ahora parece ver luz despues de buscar y buscar y pruebas.
De todas formas que habra intentar de automatizar el leer, borrar y grabar de una manera mas simple. sin comandos. Y dejar claro el cableado para usar con la compilación realizada. Muchas gracias a todos |
sois unos genios sobre todo jubamo que le ha puesto la guinda al pastel,enhorabuena y ahora a provarlo pues me he conseguido un deco muerto ,y te pido ayuda jubamo con mis dudas :
-como puedo adaptar la actualizacion de la flash que as incorporado en el ultimo archivo que has subido al upload a el exe que me colgaste en su dia? -para borrar toda la flash que comandos son? perdona por tanta pregunta pero sigo un poco cateta |
Cita:
viene a ser del estilo del anterior. Hay un error pues no es wrt54g.exe el ejecutable sino xeloa.exe, bueno espero que no tengais problemas lo he compilado para w98 y tambien lee. Saludos y suerte en la resurrección de los sl65 ali. |
I can not speak spanish so i translated your posts. ... and i read, that you can write to the flash of the ali chip. Where can i find the uploaded files? I haven't found it yet.
|
gracias por todo,me estoi bajando el archivo,y si todo me va bien te comento el resultado mañana pues dejare grabando la flash toda la noche gracias de nuevo
|
borg231 all you have to do is click on the link of the top of the page where is written "RECURSOS SAT" on the number 5, once in the upload page you have to download the file named wrt-ali-graba.zip
|
saludos xeloa por que no la lees primero y observas que zona es la del boot para asi probar con gravacion en booot haber si se pueden recuperar asi saludos
saludos jubano ya tengo la compilacion de linux y la de xeloa a esta ultima hay que añadir algo de las ultimas modificaciones para leer y gravar esos ficheros de txt o no hay que hacer nada solo probar con el cable adecuado???? |
borg231 all you have to do is click on the link of the top of the page where is written "RECURSOS SAT" on the number 5, once in the upload page you have to download the file named wrt-ali-graba.zip
|
[QUOTE=barrigaverde;2910891]saludos xeloa por que no la lees primero y observas que zona es la del boot para asi probar con gravacion en booot haber si se pueden recuperar asi saludos
saludos jubano ya tengo la compilacion de linux y la de xeloa a esta ultima hay que añadir algo de las ultimas modificaciones para leer y gravar esos ficheros de txt o no hay que hacer nada solo probar con el cable adecuado????[/QUOTE] Si no me he equivocado tanto para xp w98 linux el esquema de cable es el que teneis alli, si quereis probar solo lo del final de la memoria: xeloa -XXXX:nvram /skipdetect /instrlen:5 /alienable donde XXX puede ser backup, erase, flash; teneis info sobre su uso al principio del archivo wrt54g.c lo unico que hecho es definir en el .h el cable wiggler a mi modo segun el esquema y en el .c marcarlo por defecto. Espero que de verdad funcione, pues tengo el mio en la UVI depues de borrale unos sectores del principio, ahora se esta grabando. xeloa primero haces unas pruebas en la zona nvram y lo que dice varrigaverde mira primero lo que tiene mal, pues si es poco te puedes ahorrar tiempo. Saludos |
Thanks now I can try to compile it. Hope mingw works
|
Bueno pues si que funciona, le ha costado 78 minutos (P3 a 500) en grabar los 128 Kb primeros que había borrado por error y ya lo tiene la abuela viendo los toros de "canal andalucia".
Pues animo y a recuperalo que ya tenemos un Jtag. No se que ocurre que no lo encontraba en el 5 y lo he vuelto a poner: [url]http://(No permitidos enlaces)/index.php?action=download&pid=106579[/url] para esta versión (NO ES LA ESTANDAR) fijaros en el esquema y el leeme.txt, es una versión para xeloa para que sin tocar su cable le funcione Ok. Saludos. |
pues lo siento no me va me da error aplicacion no se si sera por lo del drives lo he copia do en system32/drives, no se si hay que hacer algo mas sobre lo que entiendo de la direccion que hay que indicarle a la aplicacion donde esta el driver no se donde ponermo mi ingles es muy pesimo lo siento???
|
jubamo como selecciones la parte que desea sea gravada en memoria???
|
Para seleccionar la parte de la memoria he utilizado las parte definidas para el ruter wrt54g, pero puedes usar la opcion:
/window:0x1fc00000 ... custom flash INICIO (in HEX) /start:XXXXXXXX .... INICIO BLOQUE(in HEX) /length:XXXXXXXX ... LONGITUD (in HEX) En este caso debemos tener un archivo "CUSTOM.BIN" que empiece con lo que queremos grabar. Lo de el error si es de giveio.sys es que debes de cargar el driver para Xp alli lo tienes explicado, ahora eso si no uses el de w98 para Xp, no te irá. Respecto del manejo ya hay gente que lo ha utilizado y creo que en posts anteriores comentaron lo del driver para Xp. Saludos. |
La franja horaria es GMT +2. Ahora son las 19:44. |
Powered por vBulletin™ Version 3.8.10
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.
Traducido por vBsoporte - vBulletin en español
ZackYFileS - Foros de Debate