[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [MiNT] FEC Ethernet driver patch for Coldfires



On 15/02/2015 10:32, Markus Fröschle wrote:
Goal is to make the m548x eval board a "headless MiNT machine".

Excellent! I also aim that goal.
I call it "FreeMiNT for non-Atari hardware", which includes the M5484LITE evaluation board and Amiga.

The missing part for the M5484LITE was the network driver, and this is exactly what you are providing today :-)

the m548x currently still dies too soon in the MiNT boot process

I already work on that. There are several reasons.

1) EmuTOS keyboard driver currently uses polling, while FreeMiNT requires a keyboard driver using interrupts (when NO_AKP_KEYBOARD=0). I have an EmuTOS patch for that, it seems to be OK, and I plan to commit it after the upcoming 0.9.4 release.

Then FreeMiNT may hang because of:
2) Missing MFP hardware for serial ports and timers.
3) CPU cache flags messing.
4) Optional hardware detection (ST-ESCC serial port)
5) Floppy VBL emulation
6) Milan assembler keyboard routine uses non-ColdFire instructions.

I worked on that long ago, and I don't remember exactly the result, but IIRC I somehow got FreeMiNT working on the M5484LITE and WinUAE.

Of course, I need to clean up all those patches before sending them here for commit. And I'm currently busy with the upcoming EmuTOS release, so this will not happen very soon.

please find attached a patch to the Coldfire FEC ethernet driver. While the
Firebee functionality is untouched, it adds a machine detection (evaluate
MCH_ cookie)

Excellent!
A few remarks:

1) Please provide patches in unified diff format (diff -u).

2) Please provide minimal patches. Mainly, do not provide changes where you only replaced tabs by spaces.

3) You read COOKIE__MCH by peeking at 0x5a0. The clean way is to use:
s_system (S_GETCOOKIE, COOKIE__MCH ...
You can search for COOKIE__MCH in the xdd sources to see good examples.

4) Please use the FALCON define instead of the hardcoded 0x00030000L value.

--
Vincent Rivière