[coreboot] [RFC] Network console for coreboot

Rudolf Marek r.marek at assembler.cz
Wed Jun 2 09:19:40 CEST 2010

Dne 2.6.2010 05:21, Peter Stuge napsal(a):
> Rudolf Marek wrote:
>> I clean up the patch bit more. Looks way better. Question is if the
>> ne2k.c belongs to drivers or /lib (and where to put header file)
> It's not a driver for initialization, it's console code, so I think
> it belongs in lib, similar to usbdebug code.


>> Otherwise it is nearly ready. I made Kconfig for that which is able
>> to translate the IP strings to the binary data via new funcs.
> I just had a thought. Would it make sense to use syslog format for
> the packets that are sent out?

Dunno, I just use same port as Linux Netconsole, not sure if I have same format ;)

>> +++ src/console/Kconfig	(working copy)
>> @@ -1,5 +1,31 @@
>>   menu "Console options"
>> +config CONSOLE_NE2K
>> +	bool "Ethernet console over NE2K"
> Is it only for PCI clones? coreboot supports many boards with ISA
> slots. Can the code work there as well if the jumper/jumperless
> configured IO base is specified?

Well in theory it should work for ISA cards too (NE2K) Maybe the only problem is 
the address of TX buffer which needs to be adjusted.

>> +	depends on CONSOLE_NE2K
>> +	string "DST unicast MAC"
> We may need to create some new terminology for the network console.
> (What terms are Linux using?)


> The destination might be called the "console server" so here it would
> say "Console server MAC address" and the help can explain further why
> it's neccessary to supply it.
>> +config CONSOLE_NE2K_DST_IP
>> +	depends on CONSOLE_NE2K
>> +	string "DST unicast IP"
> Same here, "Console server IP address"

Yes sure
>> +config CONSOLE_NE2K_SRC_IP
>> +	depends on CONSOLE_NE2K
>> +	string "SRC unicast IP"
> Hmm, "Source IP address" maybe?

Yes... or Coreboot node IP address

>> +	depends on CONSOLE_NE2K
>> +	hex "NE2K adapter fixed IO port"
>> +	default 0xe00
> If an ISA device is also allowed then it may be more difficult to add
> a fixed IO resource to the device tree..

Well this is needed because I dont do any IO probing. If we stick with the PCI 
we can just create a function which returns the BAR addr, but at the beginning 
we need some fixed non-conflicting address anyway. I consider console as add-on 
and therefore I did not put that into device tree.

>> +++ src/lib/ns8390.h	(revision 0)
> This file has a bunch of register defines for various hardware (WDC,
> SMC, Digital, 3Com) - are they all relevant?

Well those are other PCI clones of NE2K which are not so good compatible. We can 
delete this I think.

I have a question, did someone already test this?



More information about the coreboot mailing list