Re: HOW2: Repair Pogo E02 with Raspberry PI (1,2 or 3) JTAG and OpenOCD April 11, 2021 07:15AM |
Registered: 4 years ago Posts: 25 |
console=console=ttyS0,115200 mtdparts=nand_mtd:0xc0000@0(uboot)ro,0x7f00000@0x100000(root)
Creating 4 MTD partitions on "nand_mtd": 0x00000000-0x00100000 : "u-boot" 0x00100000-0x00400000 : "uImage" 0x00400000-0x00800000 : "uInitrd_m" 0x00800000-0x08000000 : "root"
heevaplug_init target halted in ARM state due to debug-request, current mode: Supervisor cpsr: 0x000000d3 pc: 0xffff0000 MMU: disabled, D-Cache: disabled, I-Cache: disabled > nand probe 0 NAND flash device 'NAND 128MiB 3.3V 8-bit (Samsung)' found > nand info 0 #0: NAND 128MiB 3.3V 8-bit (Samsung) pagesize: 2048, buswidth: 8, erasesize: 131072 ....... a lot of blocks > nand list #0: NAND 128MiB 3.3V 8-bit (Samsung) pagesize: 2048, buswidth: 8, blocksize: 131072, blocks: 1024 > nand erase 0 0 0x800000 erased blocks 0 to 63 on NAND flash device #0 'NAND 128MiB 3.3V 8-bit' > nand write 0 u-boot-mtd.bin 0 oob_softecc_kw wrote file u-boot-mtd.bin to NAND flash 0 up to offset 0x00100000 in 40.270664s (25.428 KiB/s) > nand write 0 uImage-mtd.bin 0x100000 oob_softecc_kw wrote file uImage-mtd.bin to NAND flash 0 up to offset 0x00400000 in 120.705383s (25.450 KiB/s) > nand write 0 uinitrd_m-mtd.bin 0x400000 oob_softecc_kw wrote file uinitrd_m-mtd.bin to NAND flash 0 up to offset 0x00800000 in 160.762421s (25.479 KiB/s)
_ ____ _ | | __ _ / ___(_) ___ | | / _` | | | |/ _ \ | |___ (_| | |___| | __/ |_____\__,_|\____|_|\___| _ _ ____ _ | | | | | __ ) ___ ___ | |_ | | | |___| _ \ / _ \ / _ \| __| | |_| |___| |_) | (_) | (_) | |_ \___/ |____/ \___/ \___/ \__| ** MARVELL BOARD: ASTON_WS_GN3 REV: 2 LE Hold rear button - long : FAIL U-Boot 1.1.4 (Jul 27 2011 - 17:43:51) Marvell version: 3.4.16 LaCie 1.5.22 256MB U-Boot code: 06000000 -> 0607FFF0 BSS: -> 060CE600 Soc: MV88F6281 Rev 3 (DDR2) CPU running @ 800Mhz L2 running @ 400Mhz SysClock = 200Mhz , TClock = 166Mhz DRAM CAS Latency = 3 tRP = 3 tRAS = 9 tRCD=3 DRAM CS[0] base 0x00000000 size 256MB DRAM Total size 256MB 16bit width Flash: 0 kB Addresses 98M - 0M are saved for the U-Boot usage. Mem malloc Initialization (98M - 97M): Done NAND:128 MB *** Warning - bad CRC or NAND, using default environment CPU : Marvell Feroceon (Rev 1) Streaming disabled Write allocate disabled Module 0 is MII USB 0: host mode PCI 0: PCI Express Root Complex Interface PEX interface detected Link X1 Net: egiga0 [PRIME], egiga1 Waiting for LUMP (3) no lump receive; continuing Hit any key to stop autoboot: 0 Reset IDE: Marvell Serial ATA Adapter Integrated Sata device found ** Bad partition 1 ** ## Checking Image at 00800000 ... Bad Magic Number NAND read: device 0 offset 0x100000, size 0x300000 reading NAND page at offset 0x100000 failed 3145728 bytes read: ERROR ** Bad partition 1 ** ## Checking Image at 01200000 ... Bad Magic Number NAND read: device 0 offset 0x400000, size 0x400000 reading NAND page at offset 0x400000 failed 4194304 bytes read: ERROR ## Booting image at 00800000 ... Bad Magic Number Waiting for LUMP (0) Abort no lump receive; continuing Marvell>>
Marvell>> saveenv Saving Environment to NAND... Erasing Nand...Writing to Nand... done Marvell>>
_ ____ _ | | __ _ / ___(_) ___ | | / _` | | | |/ _ \ | |___ (_| | |___| | __/ |_____\__,_|\____|_|\___| _ _ ____ _ | | | | | __ ) ___ ___ | |_ | | | |___| _ \ / _ \ / _ \| __| | |_| |___| |_) | (_) | (_) | |_ \___/ |____/ \___/ \___/ \__| ** MARVELL BOARD: ASTON_WS_GN3 REV: 2 LE Hold rear button - long : FAIL U-Boot 1.1.4 (Jul 27 2011 - 17:43:51) Marvell version: 3.4.16 LaCie 1.5.22 256MB U-Boot code: 06000000 -> 0607FFF0 BSS: -> 060CE600 Soc: MV88F6281 Rev 3 (DDR2) CPU running @ 800Mhz L2 running @ 400Mhz SysClock = 200Mhz , TClock = 166Mhz DRAM CAS Latency = 3 tRP = 3 tRAS = 9 tRCD=3 DRAM CS[0] base 0x00000000 size 256MB DRAM Total size 256MB 16bit width Flash: 0 kB Addresses 98M - 0M are saved for the U-Boot usage. Mem malloc Initialization (98M - 97M): Done NAND:128 MB CPU : Marvell Feroceon (Rev 1) Streaming disabled Write allocate disabled Module 0 is MII USB 0: host mode PCI 0: PCI Express Root Complex Interface PEX interface detected Link X1 Net: egiga0 [PRIME], egiga1 Waiting for LUMP (3) no lump receive; continuing Hit any key to stop autoboot: 0 Reset IDE: Marvell Serial ATA Adapter Integrated Sata device found ** Bad partition 1 ** ## Checking Image at 00800000 ... Bad Magic Number NAND read: device 0 offset 0x100000, size 0x300000 reading NAND page at offset 0x100000 failed 3145728 bytes read: ERROR ** Bad partition 1 ** ## Checking Image at 01200000 ... Bad Magic Number NAND read: device 0 offset 0x400000, size 0x400000 reading NAND page at offset 0x400000 failed 4194304 bytes read: ERROR ## Booting image at 00800000 ... Bad Magic Number Waiting for LUMP (0) Abort no lump receive; continuing Marvell>>
Marvell>> run load_kernel_mtd=nand read.jffs2 0x800000 0x100000 0x300000 NAND read: device 0 offset 0x100000, size 0x300000 reading NAND page at offset 0x100000 failed 3145728 bytes read: ERROR Marvell>> run load_initrd_mtd=nand read.jffs2 0x1200000 0x400000 0x400000 NAND read: device 0 offset 0x400000, size 0x400000 reading NAND page at offset 0x400000 failed 4194304 bytes read: ERROR Marvell>>
Re: HOW2: Repair Pogo E02 with Raspberry PI (1,2 or 3) JTAG and OpenOCD April 11, 2021 08:25AM |
Registered: 4 years ago Posts: 25 |
Re: HOW2: Repair Pogo E02 with Raspberry PI (1,2 or 3) JTAG and OpenOCD April 11, 2021 08:34AM |
Registered: 4 years ago Posts: 25 |
================================================================================ ## uboot layout (mtd0) ## ================================================================================ offset Block 0 (128K) 0x0 ------------| | Block 1 (128K) 0x20000 | | Block 2 (128K) 0x40000 uboot | size 0xa0000 | Block 3 (128K) 0x60000 | | uboot 5 Blocks with 128K Block 4 (128K) 0x80000 | Block 5 (128K) 0xa0000 -----------|--> uboot env | size 0x20000 Block 6 (128K) 0xc0000 -----------|--> uboot env 1 Block with 128K nothing here, only FF Block 7 (128K) 0xe0000 -----------| nothing here, only FF 128K x 8 = 1024K = 1M to 0x100000 1M = 8 Blocks (0-7) ================================================================================
Re: HOW2: Repair Pogo E02 with Raspberry PI (1,2 or 3) JTAG and OpenOCD April 11, 2021 04:32PM |
Admin Registered: 14 years ago Posts: 19,688 |
Re: HOW2: Repair Pogo E02 with Raspberry PI (1,2 or 3) JTAG and OpenOCD April 13, 2021 09:08AM |
Registered: 4 years ago Posts: 25 |
Re: HOW2: Repair Pogo E02 with Raspberry PI (1,2 or 3) JTAG and OpenOCD May 05, 2023 12:42PM |
Registered: 2 years ago Posts: 1 |
ad@raspberrypi:~ $ sudo openocd -f pogo.cfg Open On-Chip Debugger 0.12.0+dev-00164-g682f927f8 (2023-05-03-18:34) Licensed under GNU GPL v2 For bug reports, read http://openocd.org/doc/doxygen/bugs.html Info : auto-selecting first available session transport "jtag". To override use 'transport select <transport>'. Warn : use 'feroceon.cpu' as target identifier, not '0' pogo_load_uboot Info : Listening on port 6666 for tcl connections Info : Listening on port 4444 for telnet connections Info : BCM2835 GPIO JTAG/SWD bitbang driver Info : clock speed 200 kHz Info : JTAG tap: feroceon.cpu tap/device found: 0x20a023d3 (mfg: 0x1e9 (Marvell Semiconductors), part: 0x0a02, ver: 0x2) Info : Embedded ICE version 0 Info : feroceon.cpu: hardware has 1 breakpoint/watchpoint unit Info : starting gdb server for feroceon.cpu on 3333 Info : Listening on port 3333 for gdb connections Info : accepting 'telnet' connection on tcp/4444 DEPRECATED! use 'adapter [de]assert' not 'jtag_reset' DEPRECATED! use 'adapter [de]assert' not 'jtag_reset' target halted in ARM state due to debug-request, current mode: Supervisor cpsr: 0x600000d3 pc: 0x0ff5a3b8 MMU: disabled, D-Cache: disabled, I-Cache: enabled invalid command name "soft"
# We need to assert DBGRQ while holding nSRST down. # However DBGACK will be set only when nSRST is released. # Furthermore, the JTAG interface doesn't respond at all when # the CPU is in the WFI (wait for interrupts) state, so it is # possible that initial tap examination failed. So let's # re-examine the target again here when nSRST is asserted which # should then succeed. jtag_reset 0 1 feroceon.cpu arp_examine halt 0 jtag_reset 0 0 wait_halt
Re: HOW2: Repair Pogo E02 with Raspberry PI (1,2 or 3) JTAG and OpenOCD May 13, 2025 09:06PM |
Registered: 5 weeks ago Posts: 40 |
> DEPRECATED! use 'adapter driver' not 'interface' > DEPRECATED! use 'bcm2835gpio peripheral_base' not > 'bcm2835gpio_peripheral_base' > DEPRECATED! use 'bcm2835gpio speed_coeffs' not > 'bcm2835gpio_speed_coeffs' > DEPRECATED! use 'adapter gpio tck; adapter gpio > tms; adapter gpio tdi; adapter gpio tdo' not > 'bcm2835gpio_jtag_nums' > DEPRECATED! use 'adapter gpio swclk; adapter gpio > swdio' not 'bcm2835gpio_swd_nums' > DEPRECATED! use 'adapter gpio trst' not > 'bcm2835gpio_trst_num' > DEPRECATED! use 'adapter speed' not 'adapter_khz' > Warn : DEPRECATED: auto-selecting transport
Re: HOW2: Repair Pogo E02 with Raspberry PI (1,2 or 3) JTAG and OpenOCD May 14, 2025 01:06AM |
Admin Registered: 14 years ago Posts: 19,688 |
Re: HOW2: Repair Pogo E02 with Raspberry PI (1,2 or 3) JTAG and OpenOCD May 19, 2025 02:40PM |
Registered: 5 weeks ago Posts: 40 |
# Pogoplug E02 # modification joerg_999 14.03.2016 # use this pogo.cfg taken from sheevaplug to use with Raspi direct or Buspirate jtag adapter # use raspberrypi-native mode # we use the Pins from SPI Interface (violett) 19,21,23,26 and 22, + 20 for GND # see GPIO schematic Raspi Raspi GPIO # source [find interface/buspirate.cfg] # source [find interface/sysfsgpio-raspberrypi.cfg] source [find interface/raspberrypi123-native.cfg] source [find target/feroceon.cfg] ...
uboot.2023.04-tld-1.pogo_v4.environment uboot.2023.04-tld-1.pogo_v4.kwbThey are sym-linked as uboot-env.bin and uboot.kwb respectively.
peter@pi400:~$ sudo openocd -f pogo_e02.cfg Open On-Chip Debugger 0.12.0+dev-00994-g744955e5b (2025-05-13-19:41) Licensed under GNU GPL v2 For bug reports, read http://openocd.org/doc/doxygen/bugs.html DEPRECATED! use 'adapter driver' not 'interface' DEPRECATED! use 'bcm2835gpio peripheral_base' not 'bcm2835gpio_peripheral_base' DEPRECATED! use 'bcm2835gpio speed_coeffs' not 'bcm2835gpio_speed_coeffs' DEPRECATED! use 'adapter gpio tck; adapter gpio tms; adapter gpio tdi; adapter gpio tdo' not 'bcm2835gpio_jtag_nums' DEPRECATED! use 'adapter gpio swclk; adapter gpio swdio' not 'bcm2835gpio_swd_nums' DEPRECATED! use 'adapter gpio trst' not 'bcm2835gpio_trst_num' DEPRECATED! use 'adapter speed' not 'adapter_khz' Warn : DEPRECATED: auto-selecting transport "jtag". Use 'transport select jtag' to suppress this message. pogo_load_uboot Info : Listening on port 6666 for tcl connections Info : Listening on port 4444 for telnet connections Info : BCM2835 GPIO JTAG/SWD bitbang driver Info : clock speed 200 kHz Info : JTAG tap: feroceon.cpu tap/device found: 0x20a023d3 (mfg: 0x1e9 (Marvell Semiconductors), part: 0x0a02, ver: 0x2) Info : Embedded ICE version 0 Info : feroceon.cpu: hardware has 1 breakpoint/watchpoint unit Info : [feroceon.cpu] Examination succeed Info : [feroceon.cpu] starting gdb server on 3333 Info : Listening on port 3333 for gdb connections
$ telnet localhost 4444 Trying ::1... Connection failed: Connection refused Trying 127.0.0.1... Connected to localhost. Escape character is '^]'. Open On-Chip Debugger > pogo_init DEPRECATED! use 'adapter [de]assert' not 'jtag_reset' DEPRECATED! use 'adapter [de]assert' not 'jtag_reset' target halted in Thumb state due to debug-request, current mode: Supervisor cpsr: 0x400000f3 pc: 0xffff0ba6 MMU: enabled, D-Cache: enabled, I-Cache: enabled > soft_reset_halt [feroceon.cpu] requesting target halt and executing a soft reset target halted in ARM state due to debug-request, current mode: Supervisor cpsr: 0x400000d3 pc: 0x00000000 MMU: disabled, D-Cache: disabled, I-Cache: disabled > nand probe 0 NAND flash device 'NAND 128MiB 3.3V 8-bit (Hynix)' found > nand erase 0 0x0 0xa0000 erased blocks 0 to 4 on NAND flash device #0 'NAND 128MiB 3.3V 8-bit' > nand write 0 uboot.kwb 0 oob_softecc_kw timed out while waiting for target halted error executing hosted NAND write Unable to write data to NAND device failed writing file uboot.kwb to NAND flash 0 at offset 0x00000000
Re: HOW2: Repair Pogo E02 with Raspberry PI (1,2 or 3) JTAG and OpenOCD May 20, 2025 12:16PM |
Registered: 5 weeks ago Posts: 40 |
# Raspi4 BCM2837 (1800Mhz): bcm2835gpio_speed_coeffs 292407 72
Re: HOW2: Repair Pogo E02 with Raspberry PI (1,2 or 3) JTAG and OpenOCD May 20, 2025 02:46PM |
Admin Registered: 14 years ago Posts: 19,688 |
Re: HOW2: Repair Pogo E02 with Raspberry PI (1,2 or 3) JTAG and OpenOCD May 20, 2025 03:57PM |
Registered: 5 weeks ago Posts: 40 |
Re: HOW2: Repair Pogo E02 with Raspberry PI (1,2 or 3) JTAG and OpenOCD June 03, 2025 09:01PM |
Registered: 5 weeks ago Posts: 40 |
Re: HOW2: Repair Pogo E02 with Raspberry PI (1,2 or 3) JTAG and OpenOCD June 03, 2025 11:52PM |
Admin Registered: 14 years ago Posts: 19,688 |
Re: HOW2: Repair Pogo E02 with Raspberry PI (1,2 or 3) JTAG and OpenOCD June 04, 2025 12:47AM |
Registered: 5 weeks ago Posts: 40 |
Re: HOW2: Repair Pogo E02 with Raspberry PI (1,2 or 3) JTAG and OpenOCD June 04, 2025 02:57PM |
Admin Registered: 14 years ago Posts: 19,688 |
Quote
This should be adapted to the Pogo 02 tutorial in the 1st post.
#Dram initalization for SINGLE x16 CL=3 @ 200MHz (need CL=3 @ 200MHz?) DATA 0xffd01400 0x43000618 # DDR Configuration register DATA 0xffd01404 0x34143000 # DDR Controller Control Low
mww 0xD0001400 0x43000C30 ;# DDR SDRAM Configuration Register mww 0xD0001404 0x39543000 ;# Dunit Control Low Register
mww 0xD0010000 0x01111111 ;# MPP 0 to 7 mww 0xD0010004 0x11113322 ;# MPP 8 to 15 mww 0xD0010008 0x00001111 ;# MPP 16 to 23
01111111 11113311 00551111
Re: HOW2: Repair Pogo E02 with Raspberry PI (1,2 or 3) JTAG and OpenOCD June 04, 2025 09:24PM |
Admin Registered: 14 years ago Posts: 19,688 |
mww 0xD0010418 0x003E07CF ;# NAND Read Parameters REgister mww 0xD001041C 0x000F0F0F ;# NAND Write Parameters Register mww 0xD0010470 0x01C7D943 ;# NAND Flash Control Register
Re: HOW2: Repair Pogo E02 with Raspberry PI (1,2 or 3) JTAG and OpenOCD June 04, 2025 09:57PM |
Admin Registered: 14 years ago Posts: 19,688 |
> mww 0xD0010418 0x003E07CF ;# NAND Read Parameters > REgister > mww 0xD001041C 0x000F0F0F ;# NAND Write Parameters > Register > mww 0xD0010470 0x01C7D943 ;# NAND Flash Control > Register >
Re: HOW2: Repair Pogo E02 with Raspberry PI (1,2 or 3) JTAG and OpenOCD June 04, 2025 10:37PM |
Registered: 5 weeks ago Posts: 40 |
Re: HOW2: Repair Pogo E02 with Raspberry PI (1,2 or 3) JTAG and OpenOCD June 09, 2025 08:05PM |
Registered: 5 weeks ago Posts: 40 |
> pogo_init DEPRECATED! use 'adapter [de]assert' not 'jtag_reset' DEPRECATED! use 'adapter [de]assert' not 'jtag_reset' target halted in Thumb state due to debug-request, current mode: Supervisor cpsr: 0x400000f3 pc: 0xffff0ba6 MMU: enabled, D-Cache: enabled, I-Cache: enabled > soft_reset_halt [feroceon.cpu] requesting target halt and executing a soft reset target halted in ARM state due to debug-request, current mode: Supervisor cpsr: 0x400000d3 pc: 0x00000000 MMU: disabled, D-Cache: disabled, I-Cache: disabled > nand probe 0 NAND flash device 'NAND 128MiB 3.3V 8-bit (Hynix)' found > nand erase 0 0x0 0xa0000 erased blocks 0 to 4 on NAND flash device #0 'NAND 128MiB 3.3V 8-bit' > nand write 0 uboot.kwb 0 oob_softecc_kw timeout waiting for SYSCOMP & DBGACK, last DBG_STATUS: 0 Unable to write data to NAND device failed writing file uboot.kwb to NAND flash 0 at offset 0x00000000 >
# Pogoplug v4 edited from a base of the Pogoplug E02 # modification shermbug 09.06.2025 based on the below and this file from @bodhi: https://forum.doozan.com/file.php?3,file=7310,filename=kwbimage.cfg,download=1 # modification joerg_999 14.03.2016 # use this pogo.cfg taken from sheevaplug to use with Raspi direct or Buspirate jtag adapter # use raspberrypi-native mode # we use the Pins from SPI Interface (violett) 19,21,23,26 and 22, + 20 for GND # see GPIO schematic Raspi Raspi GPIO # source [find interface/buspirate.cfg] # source [find interface/sysfsgpio-raspberrypi.cfg] source [find interface/raspberrypi123-native.cfg] source [find target/feroceon.cfg] $_TARGETNAME configure \ -work-area-phys 0x100000 \ -work-area-size 65536 \ -work-area-backup 0 #arm7_9 dcc_downloads enable # this assumes the hardware default peripherals location before u-Boot moves it set _FLASHNAME $_CHIPNAME.flash nand device $_FLASHNAME orion 0 0xd8000000 proc pogo_init { } { # We need to assert DBGRQ while holding nSRST down. # However DBGACK will be set only when nSRST is released. # Furthermore, the JTAG interface doesn't respond at all when # the CPU is in the WFI (wait for interrupts) state, so it is # possible that initial tap examination failed. So let's # re-examine the target again here when nSRST is asserted which # should then succeed. jtag_reset 0 1 feroceon.cpu arp_examine halt 0 jtag_reset 0 0 wait_halt arm mcr 15 0 0 1 0 0x00052078 mww 0xffd01400 0x43000618 ;# Updated DDR SDRAM Configuration Register mww 0xffd01404 0x34143000 ;# Updated Dunit Control Low Register mww 0xffd01408 0x11012227 ;# Updated DDR SDRAM Timing (Low) Register mww 0xffd0140c 0x00000819 ;# Updated DDR SDRAM Timing (High) Register mww 0xffd01410 0x00000001 ;# Updated DDR SDRAM Address Control Register mww 0xffd01414 0x00000000 ;# Updated DDR SDRAM Open Pages Control Register mww 0xffd01418 0x00000000 ;# Updated DDR SDRAM Operation Register mww 0xffd0141c 0x00000632 ;# Updated DDR SDRAM Mode Register mww 0xffd01420 0x00000040 ;# Updated DDR SDRAM Extended Mode Register mww 0xffd01424 0x0000F07F ;# Updated (DDR DDR Controller Control High) Dunit Control High Register # mww 0xD0001428 0x00085520 ;# Dunit Control High Register # mww 0xD000147c 0x00008552 ;# Dunit Control High Register mww 0xffd01428 0x00085520 ;# Added DDR2 ODT Read Timing (default values) mww 0xffd0147c 0x00008552 ;# Added DDR2 ODT Write Timing (default values) mww 0xFFD01500 0x00000000 ;# Added CS[0]n Base address to 0x0 mww 0xFFD01504 0x07FFFFF1 ;# Updated CS0n Size Register # mww 0xD0001508 0x10000000 ;# CS1n Base Register mww 0xFFD0150C 0x00000000 ;# Updated CS1n Size Register mww 0xFFD01514 0x00000000 ;# Updated CS2n Size Register mww 0xFFD0151C 0x00000000 ;# Updated CS3n Size Register mww 0xffd01494 0x00030000 ;# Updated DDR2 SDRAM ODT Control (Low) Register mww 0xffd01498 0x00000000 ;# Updated DDR2 SDRAM ODT Control (High) REgister mww 0xffd0149c 0x0000e803 ;# Updated (CPU ODT Control) DDR2 Dunit ODT Control Register mww 0xffd01480 0x00000001 ;# Updated DDR SDRAM Initialization Control Register mww 0xD0020204 0x00000000 ;# Main IRQ Interrupt Mask Register mww 0xD0020204 0x00000000 ;# " mww 0xD0020204 0x00000000 ;# " mww 0xD0020204 0x00000000 ;# " mww 0xD0020204 0x00000000 ;# " mww 0xD0020204 0x00000000 ;# " mww 0xD0020204 0x00000000 ;# " mww 0xD0020204 0x00000000 ;# " mww 0xD0020204 0x00000000 ;# " mww 0xD0020204 0x00000000 ;# " mww 0xD0020204 0x00000000 ;# " mww 0xD0020204 0x00000000 ;# " mww 0xD0020204 0x00000000 ;# " mww 0xD0020204 0x00000000 ;# " mww 0xD0020204 0x00000000 ;# " mww 0xD0020204 0x00000000 ;# " mww 0xD0020204 0x00000000 ;# " mww 0xD0020204 0x00000000 ;# " mww 0xD0020204 0x00000000 ;# " mww 0xD0020204 0x00000000 ;# " mww 0xD0020204 0x00000000 ;# " mww 0xD0020204 0x00000000 ;# " mww 0xD0020204 0x00000000 ;# " mww 0xD0020204 0x00000000 ;# " mww 0xD0020204 0x00000000 ;# " mww 0xD0020204 0x00000000 ;# " mww 0xD0020204 0x00000000 ;# " mww 0xD0020204 0x00000000 ;# " mww 0xD0020204 0x00000000 ;# " mww 0xD0020204 0x00000000 ;# " mww 0xD0020204 0x00000000 ;# " mww 0xD0020204 0x00000000 ;# " mww 0xD0020204 0x00000000 ;# " mww 0xD0020204 0x00000000 ;# " mww 0xD0020204 0x00000000 ;# " mww 0xD0020204 0x00000000 ;# " mww 0xD0020204 0x00000000 ;# " mww 0xD0010000 0x01111111 ;# Updated MPP 0 to 7 mww 0xD0010004 0x11113311 ;# Updated MPP 8 to 15 mww 0xD0010008 0x00551111 ;# Updated MPP 16 to 23 mww 0xD0010418 0x003E07CF ;# NAND Read Parameters REgister mww 0xD001041C 0x000F0F0F ;# NAND Write Parameters Register mww 0xD0010470 0x01C7D943 ;# NAND Flash Control Register } proc pogo_reflash_uboot { } { # reflash the u-Boot binary and reboot into it pogo_init nand probe 0 nand erase 0 0x0 0xa0000 nand write 0 uboot.kwb 0 oob_softecc_kw resume } proc pogo_reflash_uboot_env { } { # reflash the u-Boot environment variables area pogo_init nand probe 0 nand erase 0 0xc0000 0x20000 nand write 0 uboot-env.bin 0xc0000 oob_softecc_kw resume } proc pogo_load_uboot { } { # load u-Boot into RAM and execute it pogo_init load_image uboot.kwb verify_image uboot.kwb resume 0x800200 }
Re: HOW2: Repair Pogo E02 with Raspberry PI (1,2 or 3) JTAG and OpenOCD June 09, 2025 09:24PM |
Admin Registered: 14 years ago Posts: 19,688 |
Quote
Pogo V4 kwbimage.cfg
#Dram initalization for SINGLE x16 CL=3 @ 200MHz (need CL=3 @ 200MHz?)
DATA 0xffd01400 0x43000618 # DDR Configuration register
DATA 0xffd01404 0x34143000 # DDR Controller Control Low
Pogo E02 JTAG cfg
mww 0xD0001400 0x43000C30 ;# DDR SDRAM Configuration Register
mww 0xD0001404 0x39543000 ;# Dunit Control Low Register
And so on for each value you can find matching address.
mww 0xD0001400 0x43000618 ;# DDR SDRAM Configuration Register mww 0xD0001404 0x34143000 ;# Dunit Control Low Register
Re: HOW2: Repair Pogo E02 with Raspberry PI (1,2 or 3) JTAG and OpenOCD June 09, 2025 09:59PM |
Registered: 12 years ago Posts: 19 |
Re: HOW2: Repair Pogo E02 with Raspberry PI (1,2 or 3) JTAG and OpenOCD June 09, 2025 10:30PM |
Registered: 5 weeks ago Posts: 40 |
mww 0xffd01424 0x0000F07F ;# Updated (DDR DDR Controller Control High) Dunit Control High Register # mww 0xD0001428 0x00085520 ;# Dunit Control High Register # mww 0xD000147c 0x00008552 ;# Dunit Control High Register
mww 0xffd01428 0x00085520 ;# Added DDR2 ODT Read Timing (default values) mww 0xffd0147c 0x00008552 ;# Added DDR2 ODT Write Timing (default values) mww 0xFFD01500 0x00000000 ;# Added CS[0]n Base address to 0x0
Re: HOW2: Repair Pogo E02 with Raspberry PI (1,2 or 3) JTAG and OpenOCD June 09, 2025 10:39PM |
Registered: 5 weeks ago Posts: 40 |
Re: HOW2: Repair Pogo E02 with Raspberry PI (1,2 or 3) JTAG and OpenOCD June 09, 2025 10:48PM |
Registered: 5 weeks ago Posts: 40 |
Re: HOW2: Repair Pogo E02 with Raspberry PI (1,2 or 3) JTAG and OpenOCD June 09, 2025 11:36PM |
Admin Registered: 14 years ago Posts: 19,688 |
> mww 0xffd01424 0x0000F07F ;# Updated (DDR DDR > Controller Control High) Dunit Control High > Register > # mww 0xD0001428 0x00085520 ;# Dunit Control High > Register > # mww 0xD000147c 0x00008552 ;# Dunit Control High > Register >>
> mww 0xffd01428 0x00085520 ;# Added DDR2 ODT Read > Timing (default values) > mww 0xffd0147c 0x00008552 ;# Added DDR2 ODT Write > Timing (default values) > mww 0xFFD01500 0x00000000 ;# Added CS[0]n Base > address to 0x0 >>
mww 0xD0001428 0x00085520 ;# Added DDR2 ODT Read mww 0xD000147c 0x00008552 ;# Added DDR2 ODT Write mww 0xD0001500 0x00000000 ;# Added CS[0]n Base
Re: HOW2: Repair Pogo E02 with Raspberry PI (1,2 or 3) JTAG and OpenOCD June 09, 2025 11:43PM |
Admin Registered: 14 years ago Posts: 19,688 |
Re: HOW2: Repair Pogo E02 with Raspberry PI (1,2 or 3) JTAG and OpenOCD June 09, 2025 11:59PM |
Admin Registered: 14 years ago Posts: 19,688 |
> mww 0xffd01424 0x0000F07F ;# Updated (DDR DDR > Controller Control High) Dunit Control High > Register > # mww 0xD0001428 0x00085520 ;# Dunit Control High > Register > # mww 0xD000147c 0x00008552 ;# Dunit Control High > Register >
Re: HOW2: Repair Pogo E02 with Raspberry PI (1,2 or 3) JTAG and OpenOCD June 10, 2025 01:04AM |
Registered: 5 weeks ago Posts: 40 |
DATA 0xffd01420 0x00000040 # DDR Extended Mode # bit0: 0, DDR DLL enabled # bit1: 0, DDR drive strenght normal # bit2: 0, DDR ODT control lsd (disabled) # bit5-3: 000, required # bit6: 1, DDR ODT control msb, (disabled) # bit9-7: 000, required # bit10: 0, differential DQS enabled # bit11: 0, required # bit12: 0, DDR output buffer enabled # bit31-13: 0 required DATA 0xffd01424 0x0000F07F # DDR Controller Control High # bit2-0: 111, required # bit3 : 1 , MBUS Burst Chop disabled # bit6-4: 111, required # bit7 : 0 # bit8 : 0 , no sample stage # bit9 : 0 , no half clock cycle addition to dataout # bit10 : 0 , 1/4 clock cycle skew enabled for addr/ctl signals # bit11 : 0 , 1/4 clock cycle skew disabled for write mesh # bit15-12: 1111 required # bit31-16: 0 required DATA 0xffd01428 0x00085520 # DDR2 ODT Read Timing (default values) DATA 0xffd0147c 0x00008552 # DDR2 ODT Write Timing (default values)
Re: HOW2: Repair Pogo E02 with Raspberry PI (1,2 or 3) JTAG and OpenOCD June 10, 2025 02:42PM |
Admin Registered: 14 years ago Posts: 19,688 |
> DATA 0xffd01420 0x00000040 # DDR Extended Mode > # bit0: 0, DDR DLL enabled > # bit1: 0, DDR drive strenght normal > # bit2: 0, DDR ODT control lsd (disabled) > # bit5-3: 000, required > # bit6: 1, DDR ODT control msb, (disabled) > # bit9-7: 000, required > # bit10: 0, differential DQS enabled > # bit11: 0, required > # bit12: 0, DDR output buffer enabled > # bit31-13: 0 required > > DATA 0xffd01424 0x0000F07F # DDR Controller > Control High > # bit2-0: 111, required > # bit3 : 1 , MBUS Burst Chop disabled > # bit6-4: 111, required > # bit7 : 0 > # bit8 : 0 , no sample stage > # bit9 : 0 , no half clock cycle addition to > dataout > # bit10 : 0 , 1/4 clock cycle skew enabled for > addr/ctl signals > # bit11 : 0 , 1/4 clock cycle skew disabled for > write mesh > # bit15-12: 1111 required > # bit31-16: 0 required > > DATA 0xffd01428 0x00085520 # DDR2 ODT Read Timing > (default values) > DATA 0xffd0147c 0x00008552 # DDR2 ODT Write Timing > (default values) >>