This is how I configured NFS root on my pandaboard. There is also complete boot partition in [1]
1) Install grubby, u-boot and dracut-network from my repo [2]
2) Install kernel-omap. This kernel have path that allow you to set mac address for smsc95xx with smsc95xx.macaddr kernel boot argument.
3) Change KERNEL_ARG in /etc/sysconfig/uboot for dracut network boot [3]
KERNEL_ARGS="ro vram=32M root=dhcp fixrtc console=ttyO2,115200 mem=460M@0x80000000 mem=512M@0xA0000000 omapdss.def_disp=dvi smsc95xx.macaddr=5A:3E:83:2D:BA:41 selinux=0"
4) Add option "root-path=SERVER:PATH" to dhcp server host pandaboard1 { hardware ethernet 5a:3e:83:2d:ba:41; fixed-address 10.21.38.31; option root-path "10.21.38.4:/nfs/pandaboard1-fc15"; }
5) Run "flash-kernel --update-bootscript 2.6.38.8-36.06.fc15.armv7hl.omap"
[1] http://zpericic.fedorapeople.org/boot/
On Tue, Jul 26, 2011 at 01:54:00AM +0200, Zoran Pericic wrote:
This is how I configured NFS root on my pandaboard. There is also complete boot partition in [1]
Maybe it is nice to have this in the wiki? There are some How-Tos already: - https://fedoraproject.org/wiki/Architectures/ARM
- Install grubby, u-boot and dracut-network from my repo [2]
Can you explain why the normal Fedora packages are not sufficient? If patches were added, do all of them have a Bug filed upstream?
- Install kernel-omap. This kernel have path that allow you to set mac
address for smsc95xx with smsc95xx.macaddr kernel boot argument.
Which kernel-omap? I guess the one from dmarlin? Are there restrictions one the kernel version that you know of? The EfikaMX (for Genesi) systems can not upgrade to a 2.6.32+ (required for f14) yet :-/ Maybe there are more similar issues for other boards?
- Change KERNEL_ARG in /etc/sysconfig/uboot for dracut network boot [3]
KERNEL_ARGS="ro vram=32M root=dhcp fixrtc console=ttyO2,115200 mem=460M@0x80000000 mem=512M@0xA0000000 omapdss.def_disp=dvi smsc95xx.macaddr=5A:3E:83:2D:BA:41 selinux=0"
These are quite specific for a PandaBoard. If you document this in the wiki, please mention that as well.
- Add option "root-path=SERVER:PATH" to dhcp server host pandaboard1 { hardware ethernet 5a:3e:83:2d:ba:41; fixed-address 10.21.38.31; option root-path "10.21.38.4:/nfs/pandaboard1-fc15"; }
There is a nice reference on root-over-NFS in the Storage Guide: - http://docs.fedoraproject.org/en-US/Fedora/14/html/Storage_Administration_Gu...
- Run "flash-kernel --update-bootscript 2.6.38.8-36.06.fc15.armv7hl.omap"
I'm not 100% sure how this works. Do you know if it comes with a standard uboot script?
Thanks for sharing, Niels
[1] http://zpericic.fedorapeople.org/boot/
On 30.07.2011 19:35, Niels de Vos wrote:
Maybe it is nice to have this in the wiki? There are some How-Tos already:
That would be great, but I don't know how to. Will look at it later.
Which kernel-omap? I guess the one from dmarlin? Are there restrictions one the kernel version that you know of? The EfikaMX (for Genesi) systems can not upgrade to a 2.6.32+ (required for f14) yet :-/ Maybe there are more similar issues for other boards?
I compiled kernel with smsc mac address patch because pandaboard choose random address on every boot. But you are free to use any kernel rpm which best suite your needs.
These are quite specific for a PandaBoard. If you document this in the wiki, please mention that as well.
This is my config and I added it for example. There is also reference dracut page. Main thing is to add root=dhcp to tell dracut where to find root and smsc95xx.macaddr to set pandaboard mac address. But you should really see dracut reference page.
There is a nice reference on root-over-NFS in the Storage Guide:
As above I added my config for example.
About grubby and flash-kernel. I reworked ubuntu's flash-kernel to fit fedora and patched grubby so flash-kernel is executed by install-kernel script in grubby on every kernel update if you set UPDATEDEFAULT=yes in /etc/sysconfig/kernel.
flash-kernel utility is used to create uboot boot script and copy kernel/initrd to uboot boot partition. You could invoke it with flash-kernel $(uname -r) to just copy kernel or flash-kernel --update-bootscript to create new bootscript based on /etc/sysconfig/uboot parametars. It work perfeclty for pandaboard (omap4) but it have support for many platforms. It would be great if someone test it on other platforms.
I also filled bug for grubby #715460.
On 2011-07-30 13:18, Zoran Pericic wrote:
I compiled kernel with smsc mac address patch because pandaboard choose random address on every boot. But you are free to use any kernel rpm which best suite your needs.
This patch isn't needed anymore. The latest kernels only generate a random MAC address once on boot which allows you to manually set the MAC address with this line in your ifcfg-eth0(*) file: MACADDR=01:02:03:04:05:06
* It's eth0 now with 2.6.39, not usb0
More info at:
http://jeffbastian.blogspot.com/2011/07/persistent-mac-address-on-pandaboard...
(Also, I need to update my blog post: apparently Ubuntu has a different patch that generates a mostly-unique MAC address based on the board's die id.)
Jeff
On Tue, Aug 02, 2011 at 09:16:49AM -0500, Jeffrey Bastian wrote:
On 2011-07-30 13:18, Zoran Pericic wrote:
I compiled kernel with smsc mac address patch because pandaboard choose random address on every boot. But you are free to use any kernel rpm which best suite your needs.
This patch isn't needed anymore. The latest kernels only generate a random MAC address once on boot which allows you to manually set the MAC address with this line in your ifcfg-eth0(*) file: MACADDR=01:02:03:04:05:06
Ah, well, when doing root-over-nfs you probably still need the setting? Or are the ifcfg-* files included in the initramfs?
Thanks, Niels
- It's eth0 now with 2.6.39, not usb0
More info at:
http://jeffbastian.blogspot.com/2011/07/persistent-mac-address-on-pandaboard...
(Also, I need to update my blog post: apparently Ubuntu has a different patch that generates a mostly-unique MAC address based on the board's die id.)
Jeff _______________________________________________ arm mailing list arm@lists.fedoraproject.org https://admin.fedoraproject.org/mailman/listinfo/arm
On 2011-08-02 10:51, Niels de Vos wrote:
On Tue, Aug 02, 2011 at 09:16:49AM -0500, Jeffrey Bastian wrote:
On 2011-07-30 13:18, Zoran Pericic wrote:
I compiled kernel with smsc mac address patch because pandaboard choose random address on every boot. But you are free to use any kernel rpm which best suite your needs.
This patch isn't needed anymore. The latest kernels only generate a random MAC address once on boot which allows you to manually set the MAC address with this line in your ifcfg-eth0(*) file: MACADDR=01:02:03:04:05:06
Ah, well, when doing root-over-nfs you probably still need the setting? Or are the ifcfg-* files included in the initramfs?
Oh! I forgot the original topic: NFS boot. In that case, you probably do need a persistent MAC earlier in the boot process, which means either the patch to let you set the MAC on the kernel command line, or Ubuntu's method of using the board revision and die id.
Jeff