Subject: Re: hardware compatability Re: Linux emulation, binary software, cluster/grid and SMP
To: None <tech-kern@netbsd.org>
From: George Georgalis <george@galis.org>
List: tech-kern
Date: 03/24/2006 01:06:49
On Sat, Mar 18, 2006 at 12:42:56PM +0100, Rhialto wrote:
>On Thu 16 Mar 2006 at 22:04:52 -0500, George Georgalis wrote:
>> the keyboard work?  Or, kernel options to try? The installer
>> kernel does work, but there is no dmesg there.
>
>more /kern/msgbuf

That was one really valuable piece of info! thanks.

I photographed and stitched the screens
http://galis.org/blade-penguincomputing/notes.html

It looks like two boots, which I don't understand, is the kernel
booted twice when starting the installer from cdrom? anyway here
are the interesting lines:

vendor 0x14e4 product 0x166b (ethernet network, revision 0x03) at pci4 dev 4 function 0 not configured
vendor 0x14e4 product 0x166b (ethernet network, revision 0x03) at pci4 dev 4 function 1 not configured

we've had some difficulty communicating with penguincomputing
but today I was able to obtain an 'open source network driver'

however there are some issues. it is not BSD or GNU license
or even open source, there are many blocks of "proprietary
unpublished source code" (I think the biggest is 286 lines of byte
code).. the 3 files of code I have are nearly 14,000 lines long..

    103 tg3-3.43b/Makefile
  11014 tg3-3.43b/tg3.c
   2521 tg3-3.43b/tg3.h

static u32 tg3FwRodata[(TG3_FW_RODATA_LEN / sizeof(u32)) + 1] = {
	0x35373031, 0x726c7341, 0x00000000, 0x00000000, 0x53774576, 0x656e7430,
	0x00000000, 0x726c7045, 0x76656e74, 0x31000000, 0x556e6b6e, 0x45766e74,
	0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x66617461, 0x6c457272,
	0x00000000, 0x00000000, 0x4d61696e, 0x43707542, 0x00000000, 0x00000000,
	0x00000000
};


The copyright and all the includes are below. Is this something
that can be made work in netbsd?  I've redistributed the source
here. http://galis.org/blade-penguincomputing/tg3-3.43b/

// George



/*
 * tg3.c: Broadcom Tigon3 ethernet driver.
 *
 * Copyright (C) 2001, 2002, 2003, 2004 David S. Miller (davem@redhat.com)
 * Copyright (C) 2001, 2002, 2003 Jeff Garzik (jgarzik@pobox.com)
 * Copyright (C) 2004 Sun Microsystems Inc.
 * Copyright (C) 2005 Broadcom Corporation.
 *
 * Firmware is:
 *	Derived from proprietary unpublished source code,
 *	Copyright (C) 2000-2003 Broadcom Corporation.
 *
 *	Permission is hereby granted for the distribution of this firmware
 *	data in hexadecimal or equivalent format, provided this copyright
 *	notice is accompanying it.
 */

#include <linux/config.h>
#include <linux/version.h>

#if (LINUX_VERSION_CODE < 0x020500)
#if defined(CONFIG_MODVERSIONS) && defined(MODULE) && ! defined(MODVERSIONS)
#define MODVERSIONS
#include <linux/modversions.h>
#endif
#endif
#include <linux/module.h>
#if (LINUX_VERSION_CODE >= 0x20600)
#include <linux/moduleparam.h>
#endif
#include <linux/kernel.h>
#include <linux/types.h>
#include <linux/compiler.h>
#include <linux/slab.h>
#include <linux/delay.h>
#include <linux/init.h>
#include <linux/ioport.h>
#include <linux/pci.h>
#include <linux/netdevice.h>
#include <linux/etherdevice.h>
#include <linux/skbuff.h>
#include <linux/ethtool.h>
#include <linux/mii.h>
#include <linux/if_vlan.h>
#include <linux/ip.h>
#include <linux/tcp.h>
#if (LINUX_VERSION_CODE >= 0x20600)
#include <linux/workqueue.h>
#endif
#include <linux/prefetch.h>

#include <net/checksum.h>

#include <asm/system.h>
#include <asm/io.h>
#include <asm/byteorder.h>
#include <asm/uaccess.h>

#ifdef CONFIG_SPARC64
#include <asm/idprom.h>
#include <asm/oplib.h>
#include <asm/pbm.h>
#endif

#if defined(CONFIG_VLAN_8021Q) || defined(CONFIG_VLAN_8021Q_MODULE)
#define TG3_VLAN_TAG_USED 1
#else
#define TG3_VLAN_TAG_USED 0
#endif

#ifdef NETIF_F_TSO
#define TG3_TSO_SUPPORT	1
#else
#define TG3_TSO_SUPPORT	0
#endif

#include "tg3.h"



-- 
George Georgalis, systems architect, administrator <IXOYE><
http://galis.org/ cell:646-331-2027 mailto:george@galis.org