RE: [uCsimm] writing ethernet frames/overclocking

From: Thomas Peter-apt090 (apt090@lmpsil02.comm.mot.com)
Date: Fri Jul 07 2000 - 10:10:42 EDT


Alfred,
  If you only need a little more out the dragonball, you can consider
overclocking it. I have mine running at 24mhz. This screws up the timing
on the serial port though, so that would have to be fixed, which I don't
know how to do off the top of my head. Overclocking is easy though, just

while(PLLFSR & 0x800)); //wait for clock to go low
PLLFSR = 0x0123; //default
PLLFSR = 0x0734; //24mhz
PLLFSR = 0x063d; //28mhz
PLLFSR = 0x0546; //32mhz

Then on exit set it to the default value above. These values were chosen so
that I could get exactly an eight khz interrupt out of the dragonball for
sending data out of the spi port. If you look in Motorola's usr manual for
the dragonball you can see how the UART's prescalars work. They just divide
the system clock down to the standard rates. All you need to do is choose a
clock frequency and divider that will give you the 56kbps you need. It
should be doable. In fact I need to try this myself, so feel free to post
if you try it. I will do the same. This method will only mess with the
serial port, the ethernet controller doesn't use the DragonBall's clock.
Good luck and I hope this helps.

Peter Thomas

-----Original Message-----
From: Reynolds, Alfred [mailto:Alfred.Reynolds@dsto.defence.gov.au]
Sent: Thursday, July 06, 2000 8:34 PM
To: 'ucsimm@uclinux.com'
Subject: [uCsimm] writing ethernet frames

I am currently getting a 16kbps stream off the serial port (in 56kbps
bursts) and putting it into ethernet frames and sending them on their merry
way (and vice vesa). After "fixing" the char driver so it didn't respond to
the magic numbers ( 0x3 , ..., look in drivers/char/68328serial.c I think,
in the rx_char part) things are dandy.
BUT, the poor little simm is going flat tack just bundling up the packets
and sending them. No smart processing or anything. I am reading the serial
port using the standard linux driver, and I am writing the ethernet frames
using the SOCK_PACKET socket type. I would like to make the uCsimm do a
little more processing, and surely reading some data and writing packets
can't be that hard.
Has any one implemented writing straight to the ethernet (dodging the linux
"stack")? Anyone got some hints on how to squeeze that little more out of
the simm? I have done the usual tricks for optimisation (minimising
memcpy's, select used, ...) but does anyone have any hints?

Thanks,
Alfred
This message resent by the ucsimm@uclinux.com list server
http://www.uClinux.com/
This message resent by the ucsimm@uclinux.com list server http://www.uClinux.com/



This archive was generated by hypermail 2b30 : Sun Apr 07 2002 - 00:01:37 EST