Old school Quanta Mesh LB9A aka Pronto 3290 aka Pica8 3290

shortman

New Member
Nov 17, 2018
8
1
3
Beware of switching to 1gb ram with old firmware. I ran a memory test from the diagnostics tests and it trashed my boot flash. I am trying to jtag it now but that is slow without the register file that configures the hardware so ram and flash are both online. So far i found settings for ram and local bus seems to be remapped to 0xe000000. I'm building a reg file for all that now.
 

fohdeesha

Kaini Industries
Nov 20, 2016
2,587
2,776
113
31
fohdeesha.com
Beware of switching to 1gb ram with old firmware. I ran a memory test from the diagnostics tests and it trashed my boot flash. I am trying to jtag it now but that is slow without the register file that configures the hardware so ram and flash are both online. So far i found settings for ram and local bus seems to be remapped to 0xe000000. I'm building a reg file for all that now.
what's the processor, ram size, and flash size? BDI2000? I might have a config for you

are you trying to get the memory controller online just to use the "workspace" option? in my experience it doesn't actually speed up flash programming that much, the biggest limiting factor is just how slow the jtag interface is. the biggest thing you can do is just make sure JTAGCLOCK is set to 0 (16mhz). maybe 5 minutes to write a 1MB bootloader back
 

shortman

New Member
Nov 17, 2018
8
1
3
I have a config/register file that allows flash programming and memory usage but thanks for the offer. Due to probe license restrictions(meaning i don't have one), i can not use any of the advanced feature set. I had to write a c program to generate a peek and poke style script to flash the 8mb u-boot image. Version 3 of that script is running now. It will take two hours to replace the u-boot. Then i can reprogram the flash completely in seconds.

On another note version 1 was going to take 34hrs and version 2 four hours. I can live with two since i shouldn't need it again.
 

fohdeesha

Kaini Industries
Nov 20, 2016
2,587
2,776
113
31
fohdeesha.com
34hrs!? That's nuts, I think the longest I've ever had was maybe 3 hours - what's the JTAG unit? I know the BDI2000 didn't have any licenses so maybe something else. Or maybe these switches aren't even powerPC like I thought they were?
 

shortman

New Member
Nov 17, 2018
8
1
3
Well it turns out what i was trying to do didn't work. Now i have modified version 1 of the script and it will take 12hrs but this should work.

So when i say peek/poke i mean that i am having to drive jtag/cop interface with 9600baud serial as follows:
Write 16bit 00aa wait 90ms
Write 16bit 0055 wait 90ms
Write 16bit 00a0 wait 90ms
Write 16bit data wait 90ms
Next word...it is taking a while but it is all i have right now.

LB9 old switch is running MPC8541 which i verifed by pulling the heatsink. I read that newer LB9's may have P2020.

12hrs has started. Now how many hours will it run before jtag/probe craps out again?? At least i can pick back up where ever it dies in this simple type of operation.
 

fohdeesha

Kaini Industries
Nov 20, 2016
2,587
2,776
113
31
fohdeesha.com
what JTAG unit are you using where you have to manually script flash reads and writes? That sounds super odd. on a BDI2000 I can write a 1MB bootloader to an MPC8541 by just running::

erase 0xfff00000 0x20000 8
prog 0xfff00000 ibm-uboot.bin bin

takes about 5 minutes at default jtag clock
 

shortman

New Member
Nov 17, 2018
8
1
3
So JTAG'ing is done. I am back to the state I was before with mostly LB9A firmware and latest ONIE 18.09L u-boot but configured with old firmware u-boot-env. I have replaced the software image on the NOR flash filesystem with LB9 software. I have a 2.6.35 Kernel for LB9A and I have been attempting to merge the LB9 ONIE device tree with LB9A device tree and I have been able to get the enet working again when booted to Linux but there appears to be no driver for /dev/i2cDev which is number 242. I am not sure if this kernel from the LB9A has all the same pieces are not but the switch fabric does seem to initialize and appears to act like a basic switch. Fans will not slow and I fear that modifications to switch fabric will fail as the output on the screen is constantly complaining that it can not write to /dev/i2cDev. At this point I am not sure that device tree is correct or the kernel from LB9A will work on this switch.

If anyone with an older Quanta LB9 switch would be willing to help. I need the NOR Flash dump from an LB9 running QNOS2 and it is easy to get but slow.

Connect serial port to switch.
Stop the boot process by hitting spacebar at the count down prompt of u-boot.
Turn on serial port logging (every app is different but easy in TeraTerm)
run command 'printenv'
run command 'md.l 0xFC000000 0x00800000' <- this command will take a while at 115200 serial baud rate
Save log output, gzip, and send to me.
This would be a great help in getting my switch back up and working.
Thanks
 

shortman

New Member
Nov 17, 2018
8
1
3
All my debug seems to end with the fact that the i2c driver for LB9A located in the initrd image is not compatible with the old LB9 switch. It complains at load time and the module file is i2cDev.ko but module identifies as quanta_lb9a which appears to be a big clue.

Finally, I did try to fully flash to 18.12L version of ONIE but the trial key fails to install because this version of the LB9 does not have the flash chip from 0xFC000000-0xFDFFFFFF which appears to be where they are storing license(/dev/mtd3 only on this version.)

One nice thing about all this debug is that during the investigation I was able to obtain a Windriver Ice 2 JTAG probe fully loaded with most processor support and cables for only $35 (no software.)
But i can mostly drive it from telnet and scripts.
 

shortman

New Member
Nov 17, 2018
8
1
3
Ok, I finally found LB9_v.1.4.17.00 file on the internet which contains 2.6.35 kernel and initrd for LB9 with the i2cDrv.ko that I needed. It also contained the 1.4.17.00 version of LB9 software which I can not use because that version needs a license. So I have my "cheap" LB9 switch up and running again using:
1. 18.09L ONIE Uboot
2. jffs2 from LB9A with software image replaced with LB9 1.4.02.05
3. Uboot env mostly from LB9A with tweaks
4. 2.6.35 kernel and initrd from LB9_v1.4.17.00
5. hand tweaked version of DTB using 18.09L ONIE DTB compared to LB9A DTB
6. I also had to move the DTB location as the tweaks made it too large to fit in the 0xFFF40000 location it was in so I placed it at the end of the kernel in 0xFFF20000.

Note to self. Never flash hardware without understanding how to restore it first.
 
  • Like
Reactions: Terry Wallace

Terry Wallace

PsyOps SysOp
Aug 13, 2018
186
115
43
Central Time Zone
OK so if I have an LB9 thats running onie boot with qnos5 (not workable as it needs the license) what steps do I need to follow to get my switch into a usable state like yours ?
 

digity

Member
Jun 3, 2017
48
1
8
52
I picked up a Quanta T1048 LB9A off eBay and having a hard time getting this set up to simply function as a smart or basic managed switch (with web UI). The only thing I've been successful with so far is assigning the serviceport an IP and enabling SSH server. It has U-Boot version 2009.06 (has a year 2011 release timestamp) and Fastpath is 5.4. It didn't come with a CF card, so I bought one but it's not detected at boot (Verbatim 2 GB, formatted as ext2).

Any ideas how to get basic functionality out of this? I don't care what firmware (or OS?) it runs and I'm even okay with having to manage this via CLI - I just want it to do the basics.