Port-mips archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: BusBlaster V3c for MIPS?
On Sat, 29 Jul 2023, down in the bunny hole wrote:
> > Do you actually want to debug YAMON
> > because something does not work as expected?
> > Or what do you want to achieve?
>
> two goals
> 1) debug an existing version of YaMon, as it integrates a gdb-stub
> which doesn't work as expected.
That may well be the case since GDB has moved forward, although back in
the day it was fine. We used it for bare-metal regression testing just
fine. Have you tried the most recent version of YAMON? What version has
the board come with?
> 2) reprogram a second board, as its ROM doesn't contain YaMon but a
> rather custom firmware (probably related to VxWorks but I am not sure)
That's normally done via the parallel port. All you need is a
straight-through (pin-to-pin) male-male DB25-DB25 cable, and of course
another machine with a parallel port. Since you write you have two Atlas
boards, you can well use one to reprogram the other, once you have booted
it into an OS, with the `cat' command. Images come as text files in the
Motorola S-Record format.
The procedure is described in the manual (it's the same as with Malta:
essentially you flip the PROG rocker switch, the dot-matrix display will
show "Flash DL", `cat' the firmware to the parallel port, the display will
indicate progress, followed by "Complete", at which point you flip the
PROG switch back to boot the board). The download process is all handled
entirely in hardware, by an on-board FPGA chip, so you can't brick the
board really.
> > NB Atlas is weird, the Philips STB chip is a quirky PITA
> > which is why we dropped support for this system from Linux long ago.
>
> I see negative comments on the MIPS wiki against the Atlas board.
> I never owned an Atlas board, yesterday I retrieved two boards
> (different revisions) from an industrial dumpster, but when I was a
> student, we had an Atlas board in our universitary laboratory.
Lucky you, if I had one I might have revived Linux kernel support, just
for the sake of schadenfreude!
> I don't have any bad memories about it: around 2009, we didn't run
> GNU/linux on the board (kernel 2.4? 2.6?), we programmed in assembly
> (GNU/AS + GNU/LD) on our host computers (i586 GNU/Linux) and loaded
> the elf binary via ethernet into the board.
That's the procedure that was used with regression-testing too (though
test cases were C or C++ programs; I think we didn't have Fortran support
back then). Atlas has a SCSI interface too, but I don't remember if it
could be used to boot an OS.
YAMON surely had support for ATA (IDE), so maybe you could boot from an
add-on PCI ATA interface. Malta surely can boot from onboard ATA, as I
used it routinely, and a second-stage bootloader has been written by a
colleague of mine that supports some filesystems (at least EXT2, maybe
other ones) via the YAMON API.
> We wrote some metal-bare application, compiled static with a simple
> lib-c and a super simple crt0.S, things that used nothing but the CPU,
> the small alphanumeric display on the mobo, the serial and the timer;
> in some lab exercises we also used COP0 for CPU exceptions, and may be
> limited use, but I don't remember anything that wasn't described by
> the book "See MIPS run".
>
> What's the problem with Atlas?
I don't remember the exact details anymore as it was 15+ years ago, but
as I say the issue was with the Philips chip, which was a pain to handle
in the kernel. I think it had errata of some kind, making it unreliable
beyond just being awkward by design. We surely pulled our hair about it
and were quite happy to use Malta boards instead.
For simple bare-metal apps where you could have largely if not entirely
ignored the Philips chip I guess it was OK. E.g. the dot matrix display
and the debug UART are both directly accessible via the CPU bus and then
the so-called CBUS auxiliary CPU core card interface to the mainboard.
For the regular UART, Ethernet, USB and most other peripherals you need to
take the PCI route and then via the Philips chip.
Since you mention MIPS32r2, as a matter of interest, what core cards have
the two Atlases come with? CoreLV with a 4KEc CPU? I guess these would
be the newest one would ever use with an Atlas, as many later core cards
were incompatible for some reason, and by then Atlas had been deprecated
anyway.
Maciej
Home |
Main Index |
Thread Index |
Old Index