Subject: Re: awakening Cabletron EA41x
To: None <port-mac68k@netbsd.org>
From: Kazuyuki Inanaga <happyday@pp.iij4u.or.jp>
List: port-mac68k
Date: 11/06/2006 09:46:18
very sorry for making noise,
continued On 2006/11/06, at 9:35, Kazuyuki Inanaga wrote.

add net default: gateway 192.168.1.1
(snip)
Setting date via ntp.
20 Oct 02:25:27 ntpdate[173]: step time server 210.173.160.57 offset  
33.670660 sec
         "device enable failed", see ntpdate is working! :)

ifconfig se0 (EA419)
se0: flags=8863<UP,BROADCAST,NOTRAILERS,RUNNING,SIMPLEX,MULTICAST>  
mtu 1500
         address: 00:00:1d:08:47:d4
         inet 192.168.1.42 netmask 0xffffff00 broadcast 192.168.1.255
         inet6 fe80::200:1dff:fe08:47d4%se0 prefixlen 64 scopeid 0x2

ftp get base.tgz (from ftp.iij.ad.jp, same as Quadra above)
150 Opening BINARY mode data connection for 'base.tgz' (22037614 bytes).
100% |*************************************| 21521 KB  180.30 KB/s     
00:00 ETA
22037614 bytes received in 01:59 (180.12 KB/s)

180.12 KB/s is slow, though, no error, no collision is happened.

The strange line in the dmesg;
 > Configuring network interfaces: se0se0: device enable faild
appears on _every_ kernel dmesg including GENERIC / Quadra800.
I don't care that because Ian Dall wrote in 'if_se.c';

 > * This driver is also a bit unusual. It must look like a network
 > * interface and it must also appear to be a scsi device to the scsi
 > * system. Hence there are cases where there are two entry points. eg
 > * sestart is to be called from the scsi subsytem and se_ifstart from
 > * the network interface subsystem. ...


Making INSTALLSBC kernel for EA41x

1) in the config file:
         change sbc0 flags 0x1 to 0x0
	add se* in SCSI devices section (see GENERICSBC conf)

2) src/sys/dev/scsipi/if_se.c
	copy and save 'if_se.c'
	delete 'XS_CTL_ASYNC' at the line 488 and 585
	back to the original after making INSTALLSBC kernel

Without to delete XS_CTL_ASYNC, Sysinst complains;
 >panic: scsipi_execute_xs: XS_CTL_ASYNC but no buf
I'm sure to delete XS_CTL_ASYNC makes no error in Sysinst method.

     ... In Japanese, we say those mad works as "doronawa".
Luckily I got a success, I hope someone to brush up "doronawa"
much clean and to support se* in INSTALL kernels.


About sbc0 flags

'flags=0x1<PDMA>' increases file system performance better, right?
If so, flags=0x0 got worse than 0x1?

For making myself sure, I compared those 2 options with Bonnie-2.
http://ftp.netbsd.org/pub/NetBSD/packages/pkgsrc/benchmarks/bonnie/ 
README.html

machine LCII (030/MMThunder/31MHz, FPU, 10MB RAM, 3600rpm HDD)
"MB n" is the number of megabytes to test with.
         http://www.textuality.com/bonnie/advice.html

               -------Sequential Output-------- ---Sequential Input--  
--Random--
               -Per Char- --Block--- -Rewrite-- -Per Char- --Block---  
--Seeks---
Machine    MB K/sec %CPU K/sec %CPU K/sec %CPU K/sec %CPU K/sec % 
CPU  /sec %CPU
flags0x1    5   178 89.8   572 82.9   331 78.1   172 89.8   558 65.6   
36.6 80.1
flags0x0    5   185 93.2   560 82.5   338 79.1   172 89.4   560 66.4   
35.2 80.6

flags0x1   20   201 90.6   581 76.0   368 77.6   193 89.5   653 69.4   
30.1 79.3
flags0x0   20   178 89.9   530 77.6   329 79.0   172 89.8   613 71.0   
27.3 77.0

flags0x1   50   199 89.9   553 72.4   362 77.5   195 90.5   657 70.2   
28.7 79.9
flags0x0   50   177 90.3   508 76.6   308 75.5   174 90.3   591 68.0   
27.0 79.6

No difference in 5MB.
In the other cases, flags 0x0 is about 10% slower than 0x1(PDMA).

I don't feel '10% slower' in actual use,
(NetBSD 4.0_BETA runs painfully slowly on such small Ram 030s, anyway.)
but (so this reason) I prefer 10% faster. :p
How can I set 'sbc0 flags 0x0' for specific SCSI ID only?

Or, is there any better options for sbc0?
I tried 0x5 and 0x7, but no luck, kernel drops into db> with EA41x.


To Thomas Carlson:

Hi,
Do you have any machine to make your own kernel?

I've made 3.0.1_STABLE kernels including options for EA41x.
         source: NetBSD-daily/netbsd-3-0/200610240000Z/source/sets
Sysinst does not forget to do newfs and mount the filesystem now,
and works fine on my 030sbc (+EA412/19), also 040 Macs of course.
(Thanks a lot to Hauke Fath for very good works.)

If you like, I'll make and send 3.1 kernels (sbc0 flags 0x0) for your  
EA414 +
PowerBook180 testing.
         3.1 (3.0.1_STABLE) source sets has 'if_se.c,v 1.57 2005/02/27'.

I don't have EA414, I'm interested to know EA414 works or not bacause
I've never heard EA414 works in NetBSD. They say before (in 1.6x days),
"EA414 has a different protocol (architecture?) from 412 or 419.
414 is not supported in NetBSD".
I know nothing about NetBSD-2, I remember, in 1.6x dmesg, it was  
'EA412/19'.
Now I see '414' in both 3.0.1_STABLE and 4.0_BETA dmesg;

 >se0 at scsibus0 target 5 lun 0: <CABLETRN, EA412/14/19  D00, 1.00>  
processor fixed


Thanks,
Kazu Inanaga