Re: Add Firmware images to INSTALL kernels

2014-07-23 Thread William D. Jones

Just wanted to check in re: adding a patch for INSTALL kernels:
http://cvsweb.netbsd.org/bsdweb.cgi/src/distrib/evbarm/instkernel/sshramdisk/?only_with_tag=MAIN

It appears the last time the install images were updated was to add 
Raspberry Pi functionality to unstable. With NetBSD 7.0 on the horizon, are 
there plans to add the RPI kernel to the stable release for 7.0. If so, I 
can imagine others who choose to use NetBSD on their Model A's (and 
specifically Model A, which has no onboard Ethernet) finding an unpleasant 
surprise when they realize they can't install the sets over the network! 
Adding the firmware to list did fix this problem.


Now while my use case is in particular for the Model A, I can imagine other 
people needing such functionality for boards without onboard networking. But 
if the firmware isn't needed, I imagine it should be left out to conserve 
resources/space. Is there a suggested method to adding the firmware images 
to the list and mtree.conf files that checks whether a evbarm install 
kernel may need firmware on a device or user basis (i.e. RPI Model A will 
most likely need the firmware, on Model B, it's not essential)?


-Original Message- 
From: Martin Husemann

Sent: Monday, July 14, 2014 1:55 AM
To: thor0...@comcast.net
Cc: current-users@netbsd.org
Subject: Re: Add Firmware images to INSTALL kernels

On Sun, Jul 13, 2014 at 10:20:46PM +, thor0...@comcast.net wrote:


*I altered both mtree.conf to add the libdata subtree, and lists
to tell ./build.sh/make to copy the firmware:  COPY
${NETBSDSRCDIR}/external/realtek/urtwn/dist/rtl8192cfw.bin
libdata/firmware/if_urtwn/rtl8192cfw.bin



That sounds correct - if it works for you, can you please send a diff -u ?
This should be changed in the main tree (and maybe extended to other
firmwares).

Martin

--
William D. Jones
Rowan University | ECE | 2012
Member IEEE
Member Tau Beta Pi
thor0...@comcast.net
Message sent using 'Windows Live Mail' client. 



Re: Add Firmware images to INSTALL kernels

2014-07-17 Thread William D. Jones
-Original Message- 
From: William D. Jones

Sent: Wednesday, July 16, 2014 6:47 PM
To: Martin Husemann
Cc: current-users@netbsd.org
Subject: Re: Add Firmware images to INSTALL kernels


I have attached a diff which will install firmware to the sshramdisk (and
standard ramdisk) by default. It appears only editing the sshramdisk
mtree.conf and list is necessary, but just in case someone uses the 
standard

ramdisk, I edited that as well.


Please do not apply the patch to distrib/evbarm/instkernel/ramdisk/list as 
is. I didn't catch this error initially, but it the change as-is prompts the 
following error during make release:


# build  ramdisk/work
nbmtree: ./libdata: missing directory in specification
nbmtree: failed at line 699 of the specification

It appears I have to create an mtree.conf in the ramdisk directory. Before I 
add one, however: does mtree.conf override 
cvsroot/src/distrib/common/mtree.common, or create additional entries to be 
appended to mtree.common? I would guess the latter based on other aspects of 
the build system, but sshramdisk/mtree.conf includes all the directories 
present in mtree.conf.



The sshramdisk patch works as intended- the installation image now has wifi! 



Re: Add Firmware images to INSTALL kernels

2014-07-14 Thread William D. Jones

That sounds correct - if it works for you, can you please send a diff -u ?
This should be changed in the main tree (and maybe extended to other
firmwares).


Will do when I can test- the source tree is currently broken for me (and has
been since at least July 5th, according to cvs -D). 



Add Firmware images to INSTALL kernels

2014-07-13 Thread thor0505
Hello all, 

Although my question is specific to the Raspberry Pi, I can imagine anyone who 
has specific network cards- or hardware requiring firmware during installation- 
asking this question.

I have a Raspberry Pi Model A, which does not contain onboard Ethernet. In 
order to get a network connection, I use a USB dongle which is supported by the 
urtwn device driver. When I boot an install kernel, my urtwn hardware is 
recognized, but the interface cannot be brought up because the firmware is 
missing. This prevents me from reliably continuing an install; as of at least 
yesterday, mounting devices in the RPI kernel is broken (will file a PR in the 
next few hours if I can't duplicate the issue in the current HEAD), so grabbing 
local sets from a mounted drive is impossible. 

According to http://www.daemon-systems.org/man/urtwn.4.html, the firmware for 
urtwn needs to be installed in /libdata/firmware/if_urtwn/rtl8192cfw.bin when 
bringing up a network interface. So far, I have not found a way to customize 
install images to add the firmware into the install image/ramdisk by reviewing 
the source over the past hour. In fact, I have not found any information in 
manual pages or the mailing list about whether there is a documented way of 
adding firmware or extra files to an installation, beyond having the option to 
choose MAKEDEV targets in the obsolete i386 bootfloppy-tiny floppies.

Editing $SRC_ROOT/distrib/evbarm/instkernel/sshramdisk/mtree.conf seems to be 
the way to add the relevant directory into the ramdisk. However, is there a way 
to tell ./build.sh or the Makefiles to add the relevant firmware as well into 
these directories? Is modifying the source to sysinst (which I know can be used 
to change the default kernel's name in the install prompt) the only way of 
adding this feature?

Again, thanks for any help anyone can give me!

Sincerely,
William D. Jones


Re: Add Firmware images to INSTALL kernels

2014-07-13 Thread Martin Husemann
On Sun, Jul 13, 2014 at 09:43:50PM +, thor0...@comcast.net wrote:

 Editing $SRC_ROOT/distrib/evbarm/instkernel/sshramdisk/mtree.conf
 seems to be the way to add the relevant directory into the ramdisk.
 However, is there a way to tell ./build.sh or the Makefiles to add the
 relevant firmware as well into these directories?

The list file in the same directory is what you are looking for.

Martin


Re: Add Firmware images to INSTALL kernels

2014-07-13 Thread thor0505
The list file in the same directory is what you are looking for.
Beautiful, thanks! I notice that the standard RAMdisks are missing the 
mtree.conf file. Is altering the list file alone enough to add directories to 
the standard RAMdisk (not sshramdisk*), or do I have to create my own 
mtree.conf as well (assuming the directory structure of the standard RAMdisk 
set somewhere else)? 

This would make upgrading (contrast to initial install) easier if I can just 
download the install kernel from the build machine to the target machine, 
reboot, and then install using sysinst with a kernel/ramdisk that contains the 
firmware.

*I altered both mtree.conf to add the libdata subtree, and lists to tell 
./build.sh/make to copy the firmware:
COPY${NETBSDSRCDIR}/external/realtek/urtwn/dist/rtl8192cfw.bin  
libdata/firmware/if_urtwn/rtl8192cfw.bin


Re: Add Firmware images to INSTALL kernels

2014-07-13 Thread Martin Husemann
On Sun, Jul 13, 2014 at 10:20:46PM +, thor0...@comcast.net wrote:

 *I altered both mtree.conf to add the libdata subtree, and lists
 to tell ./build.sh/make to copy the firmware:  COPY
 ${NETBSDSRCDIR}/external/realtek/urtwn/dist/rtl8192cfw.bin
 libdata/firmware/if_urtwn/rtl8192cfw.bin


That sounds correct - if it works for you, can you please send a diff -u ?
This should be changed in the main tree (and maybe extended to other
firmwares).

Martin