Re: Add Firmware images to INSTALL kernels
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
-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
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
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
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
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
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