Minnowboard MBT-4220 & 2.5.0
-
@stephenw10 I've used the internal serial port on the MBT (using an FTDI serial to USB cable) and I assume that's similar to what you did when you say "I added a com port." I agree, it is easier to use that interface and a terminal emulator rather than the HDMI/USB keyboard approach.
How would I go about disabling the i915 driver? I'm certainly willing to try try ZFS without i915/HDMI.
-
Edit /boot/loader.conf.local and comment out the lines. Like:
#i915kms_load=YES #drm.i915.enable_unsupported=1 #kern.vt.fb.modes.VGA-1=d #kern.vt.fb.default_mode="1024x768"
Only the first line really needs to be commented out but I'm not sure if the others will throws if left in. Unlikely to be a problem though.
Without that loaded you will only have a console if the HDMI is connected and active at boot.
Yup, I used the internal header and a TTL USB-serial adapter. I used a 3.5mm stereo jack since it fits in there great and the adapters are easily available.
Steve
-
@stephenw10 Nice use of that existing 1/4" hole in the MBT chassis!
-
Yeah I was pleased with that.
-
@stephenw10 I was just wondering...
When you consider the features of ZFS, is there an advantage to it over UFS when using it for pfSense on a little box like a Minnowboard? The reason I ask is because it isn't being used for storage and you can backup & restore the config at any time. -
The biggest advantage, in my personal opinion, is the increased resilience against damage in the even of power loss. Certainly in current pfSense. It also has snapshots etc which we hope to take advantage of on the long term.
-
@stephenw10 Could it be that the CE 2.5.2 installation image (available here: https://www.pfsense.org/download/) does not include some of the modules required to create a ZFS-based installation? When I try to follow the instructions given on https://docs.netgate.com/pfsense/en/latest/install/install-zfs.html I get to the step where I'm asked to select a disk and the list is supposed to include a Virtual Device Type. But no VDTs are included in the list and if I try to select the real on-board SSD disk I get an error saying no disks have been selected (0 < 1 disks).
-
Hmm, it gives you the choice between mirror and stripe though?
The ZFS installer is quite a bit different to UFS. It's sometimes unclear you have to actually select a disk to use in the VDT.
-
Yes, the stripe/mirror/raidXXX menu is shown, as described in the Netgate documentation, and I chose "stripe" . It's the following menu, Select Disks, that differs. No vtbdX (VirtIO Block Device) is listed and of the two choices that are listed, the SSD and the USB memory stick, selecting the SSD gives the error I described.
I'll try going back to my old 2.4.4 installation USB and see what happens. That's how I originally configured my MBT to use ZFS.
-
@trickyt said in Minnowboard MBT-4220 & 2.5.0:
VirtIO Block Device
You would only see that if you're installing in KVM. The docs show it because it's much easier to get screenshots that way. You should be able to select just the SSD and continue.
-
You can definitely do stripe with one disk in 2.5.2. You have to actually select the disk by pressing space though. That's not obvious. Should look like:
Steve
-
Figured the same thing out about the time you were posting your last message. Yes, must select the device using the space bar! Duh. Have now successfully partitioned with ZFS and installed 2.5.1. At the end of the installation process it gave me a chance to invoke a shell and edit /boot/loader.conf, which I did. But there were no lines there referencing the i915 kernel module. And now I'm in the same situation I started with: insufficient EFI staging area that leads to the kernel hanging just after starting. I'm thinking that the path /boot/loader.conf likely was the file on the USB drive and I need to use a different pathname for the file on the MBT's SSD drive. That make sense to you?
BTW, I added the stereo jack serial console connector today. Works GREAT! 5-stars on this idea.
--tom
-
It adds the i915 values to
loader.conf.local
for the MBT. You need to comment them out there. -
Just to wrap things up: My MBT is working fine now, running pfSense Plus 2.5.2 and configured with ZFS partitioning. So I'm confirming the process described in this thread works. I also tried installing 2.5.1 and then upgrading to 2.5.2 and my modified loader.conf.local was not changed by the upgrade process and thus the upgrade went smoothly.
One last question for @stephenw10 though: when, if ever, should I be concerned that doing an upgrade might change loader.conf.local or that the i915 kernel module might get loaded by some other config file? Then I'd be back to my original problem of the MBT hanging during boot. As far as I've determined, there's no easy way to edit loader.conf.local except during the last step of the installation process.
-
loader.conf.local should never get overwritten at upgrade. It's the installer that creates that and adds the i915 lines.
It is possible to disable loading modules manually at the loader prompt should it ever get added.
It's something I do so infrequently though I forget the exact syntax.Steve
-
Then I gotta say this option provides the best choice for MBT boards. ZFS provides more resiliently than UFS in the event of crashes or power failures and, at least in my book, the serial console is easier to deal with than a separate HDMI display and USB keyboard.
Thanks you Steve for all the insight, answers, and rapid responses. It is most appreciated!
--tom
-
Thanks @stephenw10 :)
I reinstalled 2.4.5 against the auto UFS partition scheme, then upgraded to 2.5.2, and now the MBT-4220 boots successfully. As you mentioned months ago, the issue was loading ZFS at boot caused the error. It required too much space than what was available. -
Why commenting out the line like this:
#i915kms_load=YES
and not do this:
i915kms_load=NO
Just curious...
Also, I don't seem to have ANY /boot/loader.conf.local file after 2.6.0 update...
...but am likely affected, because the system won't boot anymore since the attempt of updating to 2.6.0 -
@rcfa Either commenting out the i915kms_load variable or setting it to NO will accomplish the same thing.
The key issue issue here is that you cannot use both the ZFS file system and the i915 driver because of lack of adequate buffer space during boot.
-
@trickyt Thanks!
So is 2.6.0 auto-loading drivers based on some plug&play type thing? Because as I mentioned I don't even have the /boot/loader.conf.local file, and the /boot/loader.conf file has no mention at all of the i915kms at all.
So it seems to get loaded despite no instructions telling it to load the driver. That leaves me two options:
(re)moving the /boot/kernel/i915kms.ko so it's not found, or to create the /boot/loader.conf.local file, and explicitly set i915kms_load=NOI'm still a bit puzzled why that file is totally missing...
...particularly, since the driver is loaded despite no instructions, why would commenting out the line work, because that should be equivalent to not having the file, and yet I end up with a VGA console.