Re: SV: UEFI boot fail on higher resolutions (Re: Acer E3-112 and UEFI)
On 18 jul 2015, at 09:57, Anders Bolt-Evensen wrote: Another update! As I found out the EFI loader has the capability to change screen modes I dumped refind and started playing with this again. mode 5 gives me 1024x768 and a panic: --- kernel trap 12 with interrupts disabled Fatal trap 12: page fault while in kernel mode cpuid = 0; apic id = 00 fault virtual address= 0x1f2d0ec fault code = supervisor read data, page not present Instruction pointer = 0x20:0x8030003d stack pointer= 0x28:0x81616f70 frame pointer= 0x28:0x0 code segment = base 0x0, limit 0xf, type 0x1b = DPL 0, pres 1, long 1, def32 0, gran 1 processor eflags = resume, IOPL = 0 current process = 0 () --- What struck me then was this line: instruction pointer = 0x20:0x8030003d and the fact that: EFI framebuffer information: addr, size 0x8000, 0x30 Coincidence? Maybe not. In sys/dev/vt/hw/efifb/efifb.c I changed this line: info-fb_vbase = PHYS_TO_DMAP(efifb-fb_addr); Into this hack: info-fb_vbase = PHYS_TO_DMAP(0x9000); Recompile kernel and now it boots at native resolution (1366x768)! Any thoughts on this? Thanks, Jakob I tried your hack on my Acer Aspire V17 Nitro with a 1920x1080 display, and it seems that your hack works on my computer as well. Before I tried your hack, I was basically unable to do a UEFI boot unless I tried the rEFInd method, but thanks to your hack I am now able to do a regular UEFI boot at the native resolution of 1920x1080. :D Thank you so much for your tip. :) This appears to have been fixed by r286667 (At least on the Acer laptop, haven't tested on any other machine) Thanks! Jakob ___ freebsd-current@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org
SV: UEFI boot fail on higher resolutions (Re: Acer E3-112 and UEFI)
-Opprinnelig melding- Fra: owner-freebsd-curr...@freebsd.org [mailto:owner-freebsd-curr...@freebsd.org] På vegne av Jakob Alvermark Sendt: tirsdag 30. juni 2015 20.53 Til: freebsd-current@freebsd.org Emne: Re: UEFI boot fail on higher resolutions (Re: Acer E3-112 and UEFI) On Wed, February 4, 2015 15:04, Jakob Alvermark wrote: On 31 dec 2014, at 16:24, Jakob Alvermark wrote: On Tue, December 30, 2014 17:00, Nathan Whitehorn wrote: On 12/30/14 06:40, Jakob Alvermark wrote: Hi, Have been playing with this machine for a while now. It is a quad core Pentium N3540 (ValleyView/Bay Trail), 8 GB RAM. It came with a Broadcom WiFi card which I swapped for an Intel which is supported by FreeBSD. Also swapped the hard drive for an SSD. When first trying to boot FreeBSD with UEFI it would not boot. It stops after the loader is trying to start the kernel. My workaround now is using refind, http://www.rodsbooks.com/refind/ to set the screen resolution to 800x600. (Native is 1366x768) Only then will it boot using UEFI. I tried setting it to 1024x768, then it crashes. If it helps I can get the backtrace. [Not sure what's going on here] A follow up on this: I tried this on my desktop machine (AMD FX-8350, Radeon HD 5450) to see if it has the issue, and it has! I went on to try it on my desktop machine at work (Core i3-4130, Radeon HD 4350) and it boots! On the Acer, resolution set to 1024x768: FreeBSD EFI boot block Loader path: /boot/loader.efi Consoles: EFI console Image base: 0x7502f000 EFI version: 2.40 EFI Firmware: INSYDE Corp. (rev 21522.39) --- Start @ 0x802e1000 ... EFI framebuffer information: addr, size 0x8000, 0x30 dimensions 1024 x 768 stride 1024 masks 0x00ff, 0xff00, 0x00ff, 0xff00 --- kernel trap12 with interrupts disabled Fatal trap 12: page fault while in kernel mode cpuid = 0; apic id = 00 fault virtual address = 0x13 fault code = supervisor read data, page not present instruction pointer = 0x20:0x80a20834 stack pointer = 0x28:0x81604170 frame pointer = 0x28:0x81604290 code segment = base 0x0, limit 0xf, type 0x1b = DPL 0, pres 1, long 1, def32 0, gran 1 processor eflags = resume, IOPL = 0 current process = 0 () [ thread pid 0 tid 0] Stopped at kvprintf+0xd4:movzbl (%r14),%eax On the home desktop resolution 1024x768: FreeBSD EFI boot block Loader path: /boot/loader.efi Consoles: EFI console Image base: 0xb08ac000 EFI version: 2.31 EFI Firmware: American Megatrends (rev 4.653) --- Start @ 0x802e1000 ... EFI framebuffer information: addr, size 0xc000, 0x30 dimensions 1024 x 768 stride 1024 masks 0x00ff, 0xff00, 0x00ff, 0xff00 --- kernel trap12 with interrupts disabled Fatal trap 12: page fault while in kernel mode cpuid = 0; apic id = 00 fault virtual address = 0x13 fault code = supervisor read data, page not present instruction pointer = 0x20:0x80a20654 stack pointer = 0x28:0x81603d70 frame pointer = 0x28:0x81603e90 code segment = base 0x0, limit 0xf, type 0x1b = DPL 0, pres 1, long 1, def32 0, gran 1 processor eflags = resume, IOPL = 0 current process = 0 () [ thread pid 0 tid 0] Stopped at kvprintf+0xd4:movzbl (%r14),%eax On the work desktop: FreeBSD EFI boot block Loader path: /boot/loader.efi Consoles: EFI console Image base: 0xbb7aa000 EFI version: 2.31 EFI Firmware: American Megatrends (rev 4.654) --- Start @ 0x802e1000 ... EFI framebuffer information: addr, size 0xe000, 0x30 dimensions 1024 x 768 stride 1024 masks 0x00ff, 0xff00, 0x00ff, 0xff00 And then it boots normally. Does anyone have any clues on what's going on here? (This all typed manually from screenshots taken with my phone, there might be typos.) Another update! As I found out the EFI loader has the capability to change screen modes I dumped refind and started playing with this again. mode 5 gives me 1024x768 and a panic: --- kernel trap 12 with interrupts disabled Fatal trap 12: page fault while in kernel mode cpuid = 0; apic id = 00 fault virtual address = 0x1f2d0ec fault code = supervisor read data, page not present Instruction pointer= 0x20:0x8030003d stack pointer = 0x28:0x81616f70 frame pointer = 0x28:0x0 code segment = base 0x0, limit 0xf, type 0x1b = DPL 0, pres 1, long 1, def32 0, gran 1 processor eflags = resume, IOPL = 0 current process= 0 () --- What struck me then was this line: instruction pointer= 0x20:0x8030003d and the fact that: EFI framebuffer information
Re: UEFI boot fail on higher resolutions (Re: Acer E3-112 and UEFI)
On Wed, February 4, 2015 15:04, Jakob Alvermark wrote: On 31 dec 2014, at 16:24, Jakob Alvermark wrote: On Tue, December 30, 2014 17:00, Nathan Whitehorn wrote: On 12/30/14 06:40, Jakob Alvermark wrote: Hi, Have been playing with this machine for a while now. It is a quad core Pentium N3540 (ValleyView/Bay Trail), 8 GB RAM. It came with a Broadcom WiFi card which I swapped for an Intel which is supported by FreeBSD. Also swapped the hard drive for an SSD. When first trying to boot FreeBSD with UEFI it would not boot. It stops after the loader is trying to start the kernel. My workaround now is using refind, http://www.rodsbooks.com/refind/ to set the screen resolution to 800x600. (Native is 1366x768) Only then will it boot using UEFI. I tried setting it to 1024x768, then it crashes. If it helps I can get the backtrace. [Not sure what's going on here] A follow up on this: I tried this on my desktop machine (AMD FX-8350, Radeon HD 5450) to see if it has the issue, and it has! I went on to try it on my desktop machine at work (Core i3-4130, Radeon HD 4350) and it boots! On the Acer, resolution set to 1024x768: FreeBSD EFI boot block Loader path: /boot/loader.efi Consoles: EFI console Image base: 0x7502f000 EFI version: 2.40 EFI Firmware: INSYDE Corp. (rev 21522.39) --- Start @ 0x802e1000 ... EFI framebuffer information: addr, size 0x8000, 0x30 dimensions 1024 x 768 stride 1024 masks 0x00ff, 0xff00, 0x00ff, 0xff00 --- kernel trap12 with interrupts disabled Fatal trap 12: page fault while in kernel mode cpuid = 0; apic id = 00 fault virtual address = 0x13 fault code = supervisor read data, page not present instruction pointer = 0x20:0x80a20834 stack pointer = 0x28:0x81604170 frame pointer = 0x28:0x81604290 code segment = base 0x0, limit 0xf, type 0x1b = DPL 0, pres 1, long 1, def32 0, gran 1 processor eflags = resume, IOPL = 0 current process = 0 () [ thread pid 0 tid 0] Stopped at kvprintf+0xd4:movzbl (%r14),%eax On the home desktop resolution 1024x768: FreeBSD EFI boot block Loader path: /boot/loader.efi Consoles: EFI console Image base: 0xb08ac000 EFI version: 2.31 EFI Firmware: American Megatrends (rev 4.653) --- Start @ 0x802e1000 ... EFI framebuffer information: addr, size 0xc000, 0x30 dimensions 1024 x 768 stride 1024 masks 0x00ff, 0xff00, 0x00ff, 0xff00 --- kernel trap12 with interrupts disabled Fatal trap 12: page fault while in kernel mode cpuid = 0; apic id = 00 fault virtual address = 0x13 fault code = supervisor read data, page not present instruction pointer = 0x20:0x80a20654 stack pointer = 0x28:0x81603d70 frame pointer = 0x28:0x81603e90 code segment = base 0x0, limit 0xf, type 0x1b = DPL 0, pres 1, long 1, def32 0, gran 1 processor eflags = resume, IOPL = 0 current process = 0 () [ thread pid 0 tid 0] Stopped at kvprintf+0xd4:movzbl (%r14),%eax On the work desktop: FreeBSD EFI boot block Loader path: /boot/loader.efi Consoles: EFI console Image base: 0xbb7aa000 EFI version: 2.31 EFI Firmware: American Megatrends (rev 4.654) --- Start @ 0x802e1000 ... EFI framebuffer information: addr, size 0xe000, 0x30 dimensions 1024 x 768 stride 1024 masks 0x00ff, 0xff00, 0x00ff, 0xff00 And then it boots normally. Does anyone have any clues on what's going on here? (This all typed manually from screenshots taken with my phone, there might be typos.) Another update! As I found out the EFI loader has the capability to change screen modes I dumped refind and started playing with this again. mode 5 gives me 1024x768 and a panic: --- kernel trap 12 with interrupts disabled Fatal trap 12: page fault while in kernel mode cpuid = 0; apic id = 00 fault virtual address = 0x1f2d0ec fault code = supervisor read data, page not present instruction pointer = 0x20:0x8030003d stack pointer = 0x28:0x81616f70 frame pointer = 0x28:0x0 code segment= base 0x0, limit 0xf, type 0x1b = DPL 0, pres 1, long 1, def32 0, gran 1 processor eflags= resume, IOPL = 0 current process = 0 () --- What struck me then was this line: instruction pointer = 0x20:0x8030003d and the fact that: EFI framebuffer information: addr, size 0x8000, 0x30 Coincidence? Maybe not. In sys/dev/vt/hw/efifb/efifb.c I changed this line: info-fb_vbase = PHYS_TO_DMAP(efifb-fb_addr); Into this hack: info-fb_vbase = PHYS_TO_DMAP(0x9000); Recompile kernel and now it boots at native resolution
Re: UEFI boot fail on higher resolutions (Re: Acer E3-112 and UEFI)
On a Minnowboard I've the same behavior, 800x600 it boots, at 1024x768 it crash, using a DVI display. best regards, pizzamig On Wed, Feb 4, 2015 at 2:04 PM, Jakob Alvermark ja...@alvermark.net wrote: On 31 dec 2014, at 16:24, Jakob Alvermark wrote: On Tue, December 30, 2014 17:00, Nathan Whitehorn wrote: On 12/30/14 06:40, Jakob Alvermark wrote: Hi, Have been playing with this machine for a while now. It is a quad core Pentium N3540 (ValleyView/Bay Trail), 8 GB RAM. It came with a Broadcom WiFi card which I swapped for an Intel which is supported by FreeBSD. Also swapped the hard drive for an SSD. When first trying to boot FreeBSD with UEFI it would not boot. It stops after the loader is trying to start the kernel. My workaround now is using refind, http://www.rodsbooks.com/refind/ to set the screen resolution to 800x600. (Native is 1366x768) Only then will it boot using UEFI. I tried setting it to 1024x768, then it crashes. If it helps I can get the backtrace. [Not sure what's going on here] A follow up on this: I tried this on my desktop machine (AMD FX-8350, Radeon HD 5450) to see if it has the issue, and it has! I went on to try it on my desktop machine at work (Core i3-4130, Radeon HD 4350) and it boots! On the Acer, resolution set to 1024x768: FreeBSD EFI boot block Loader path: /boot/loader.efi Consoles: EFI console Image base: 0x7502f000 EFI version: 2.40 EFI Firmware: INSYDE Corp. (rev 21522.39) --- Start @ 0x802e1000 ... EFI framebuffer information: addr, size 0x8000, 0x30 dimensions 1024 x 768 stride 1024 masks 0x00ff, 0xff00, 0x00ff, 0xff00 --- kernel trap12 with interrupts disabled Fatal trap 12: page fault while in kernel mode cpuid = 0; apic id = 00 fault virtual address = 0x13 fault code = supervisor read data, page not present instruction pointer = 0x20:0x80a20834 stack pointer = 0x28:0x81604170 frame pointer = 0x28:0x81604290 code segment = base 0x0, limit 0xf, type 0x1b = DPL 0, pres 1, long 1, def32 0, gran 1 processor eflags = resume, IOPL = 0 current process = 0 () [ thread pid 0 tid 0] Stopped at kvprintf+0xd4:movzbl (%r14),%eax On the home desktop resolution 1024x768: FreeBSD EFI boot block Loader path: /boot/loader.efi Consoles: EFI console Image base: 0xb08ac000 EFI version: 2.31 EFI Firmware: American Megatrends (rev 4.653) --- Start @ 0x802e1000 ... EFI framebuffer information: addr, size 0xc000, 0x30 dimensions 1024 x 768 stride 1024 masks 0x00ff, 0xff00, 0x00ff, 0xff00 --- kernel trap12 with interrupts disabled Fatal trap 12: page fault while in kernel mode cpuid = 0; apic id = 00 fault virtual address = 0x13 fault code = supervisor read data, page not present instruction pointer = 0x20:0x80a20654 stack pointer = 0x28:0x81603d70 frame pointer = 0x28:0x81603e90 code segment = base 0x0, limit 0xf, type 0x1b = DPL 0, pres 1, long 1, def32 0, gran 1 processor eflags = resume, IOPL = 0 current process = 0 () [ thread pid 0 tid 0] Stopped at kvprintf+0xd4:movzbl (%r14),%eax On the work desktop: FreeBSD EFI boot block Loader path: /boot/loader.efi Consoles: EFI console Image base: 0xbb7aa000 EFI version: 2.31 EFI Firmware: American Megatrends (rev 4.654) --- Start @ 0x802e1000 ... EFI framebuffer information: addr, size 0xe000, 0x30 dimensions 1024 x 768 stride 1024 masks 0x00ff, 0xff00, 0x00ff, 0xff00 And then it boots normally. Does anyone have any clues on what's going on here? (This all typed manually from screenshots taken with my phone, there might be typos.) Thanks, Jakob ___ freebsd-current@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org ___ freebsd-current@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org
UEFI boot fail on higher resolutions (Re: Acer E3-112 and UEFI)
On 31 dec 2014, at 16:24, Jakob Alvermark wrote: On Tue, December 30, 2014 17:00, Nathan Whitehorn wrote: On 12/30/14 06:40, Jakob Alvermark wrote: Hi, Have been playing with this machine for a while now. It is a quad core Pentium N3540 (ValleyView/Bay Trail), 8 GB RAM. It came with a Broadcom WiFi card which I swapped for an Intel which is supported by FreeBSD. Also swapped the hard drive for an SSD. When first trying to boot FreeBSD with UEFI it would not boot. It stops after the loader is trying to start the kernel. My workaround now is using refind, http://www.rodsbooks.com/refind/ to set the screen resolution to 800x600. (Native is 1366x768) Only then will it boot using UEFI. I tried setting it to 1024x768, then it crashes. If it helps I can get the backtrace. [Not sure what's going on here] A follow up on this: I tried this on my desktop machine (AMD FX-8350, Radeon HD 5450) to see if it has the issue, and it has! I went on to try it on my desktop machine at work (Core i3-4130, Radeon HD 4350) and it boots! On the Acer, resolution set to 1024x768: FreeBSD EFI boot block Loader path: /boot/loader.efi Consoles: EFI console Image base: 0x7502f000 EFI version: 2.40 EFI Firmware: INSYDE Corp. (rev 21522.39) --- Start @ 0x802e1000 ... EFI framebuffer information: addr, size 0x8000, 0x30 dimensions 1024 x 768 stride 1024 masks 0x00ff, 0xff00, 0x00ff, 0xff00 --- kernel trap12 with interrupts disabled Fatal trap 12: page fault while in kernel mode cpuid = 0; apic id = 00 fault virtual address = 0x13 fault code = supervisor read data, page not present instruction pointer = 0x20:0x80a20834 stack pointer = 0x28:0x81604170 frame pointer = 0x28:0x81604290 code segment = base 0x0, limit 0xf, type 0x1b = DPL 0, pres 1, long 1, def32 0, gran 1 processor eflags = resume, IOPL = 0 current process = 0 () [ thread pid 0 tid 0] Stopped at kvprintf+0xd4:movzbl (%r14),%eax On the home desktop resolution 1024x768: FreeBSD EFI boot block Loader path: /boot/loader.efi Consoles: EFI console Image base: 0xb08ac000 EFI version: 2.31 EFI Firmware: American Megatrends (rev 4.653) --- Start @ 0x802e1000 ... EFI framebuffer information: addr, size 0xc000, 0x30 dimensions 1024 x 768 stride 1024 masks 0x00ff, 0xff00, 0x00ff, 0xff00 --- kernel trap12 with interrupts disabled Fatal trap 12: page fault while in kernel mode cpuid = 0; apic id = 00 fault virtual address = 0x13 fault code = supervisor read data, page not present instruction pointer = 0x20:0x80a20654 stack pointer = 0x28:0x81603d70 frame pointer = 0x28:0x81603e90 code segment = base 0x0, limit 0xf, type 0x1b = DPL 0, pres 1, long 1, def32 0, gran 1 processor eflags = resume, IOPL = 0 current process = 0 () [ thread pid 0 tid 0] Stopped at kvprintf+0xd4:movzbl (%r14),%eax On the work desktop: FreeBSD EFI boot block Loader path: /boot/loader.efi Consoles: EFI console Image base: 0xbb7aa000 EFI version: 2.31 EFI Firmware: American Megatrends (rev 4.654) --- Start @ 0x802e1000 ... EFI framebuffer information: addr, size 0xe000, 0x30 dimensions 1024 x 768 stride 1024 masks 0x00ff, 0xff00, 0x00ff, 0xff00 And then it boots normally. Does anyone have any clues on what's going on here? (This all typed manually from screenshots taken with my phone, there might be typos.) Thanks, Jakob ___ freebsd-current@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org
Re: Acer E3-112 and UEFI
On Tue, December 30, 2014 17:00, Nathan Whitehorn wrote: On 12/30/14 06:40, Jakob Alvermark wrote: Hi, Have been playing with this machine for a while now. It is a quad core Pentium N3540 (ValleyView/Bay Trail), 8 GB RAM. It came with a Broadcom WiFi card which I swapped for an Intel which is supported by FreeBSD. Also swapped the hard drive for an SSD. When first trying to boot FreeBSD with UEFI it would not boot. It stops after the loader is trying to start the kernel. My workaround now is using refind, http://www.rodsbooks.com/refind/ to set the screen resolution to 800x600. (Native is 1366x768) Only then will it boot using UEFI. I tried setting it to 1024x768, then it crashes. If it helps I can get the backtrace. [Not sure what's going on here] The other interresting thing is that when UEFI-booting the sdhci-controllers is not detected. (There are two, one card reader, and I guess one for internal eMMC that is not present in this model). Booting with legacy BIOS: # pciconf -l| grep sdhci sdhci_pci0@pci0:0:18:0: class=0x080501 card=0x09331025 chip=0x0f168086 rev=0x0e hdr=0x00 sdhci_pci1@pci0:0:23:0:class=0x080501 card=0x09331025 chip=0x0f508086 rev=0x0e hdr=0x00 Booting UEFI they are simply not there... At least sometimes, the CSM is involved in initializing some peripherals (this happens with an isci(4) SAS controller I have, for example) and disabling it will result in them not appearing. This is a BIOS bug, unfortunately. Also Xorg only works with BIOS. (Only VESA. I guess VESA drivers depends on BIOS? For proper X support I guess I have to wait for the Haswell drivers) You can use xf86-video-scfb for a VESA-like experience on EFI systems. -Nathan Didn't know that. I tried it and it works, but as I said above I have to set the resolution to 800x600 to get it to boot, that's the resolution I get in X. Attached dmesg and the output of pciconf from both BIOS and UEFI booting. I noticed that when booting UEFI I get: real memory = 10737418240 (10240 MB) When it should be: real memory = 8589934592 (8192 MB) Strange? Jakob dmesg.bios Description: Binary data dmesg.uefi Description: Binary data pciconf.bios Description: Binary data pciconf.uefi Description: Binary data ___ freebsd-current@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org
Re: Acer E3-112 and UEFI
On 12/30/14 06:40, Jakob Alvermark wrote: Hi, Have been playing with this machine for a while now. It is a quad core Pentium N3540 (ValleyView/Bay Trail), 8 GB RAM. It came with a Broadcom WiFi card which I swapped for an Intel which is supported by FreeBSD. Also swapped the hard drive for an SSD. When first trying to boot FreeBSD with UEFI it would not boot. It stops after the loader is trying to start the kernel. My workaround now is using refind, http://www.rodsbooks.com/refind/ to set the screen resolution to 800x600. (Native is 1366x768) Only then will it boot using UEFI. I tried setting it to 1024x768, then it crashes. If it helps I can get the backtrace. [Not sure what's going on here] The other interresting thing is that when UEFI-booting the sdhci-controllers is not detected. (There are two, one card reader, and I guess one for internal eMMC that is not present in this model). Booting with legacy BIOS: # pciconf -l| grep sdhci sdhci_pci0@pci0:0:18:0: class=0x080501 card=0x09331025 chip=0x0f168086 rev=0x0e hdr=0x00 sdhci_pci1@pci0:0:23:0: class=0x080501 card=0x09331025 chip=0x0f508086 rev=0x0e hdr=0x00 Booting UEFI they are simply not there... At least sometimes, the CSM is involved in initializing some peripherals (this happens with an isci(4) SAS controller I have, for example) and disabling it will result in them not appearing. This is a BIOS bug, unfortunately. Also Xorg only works with BIOS. (Only VESA. I guess VESA drivers depends on BIOS? For proper X support I guess I have to wait for the Haswell drivers) You can use xf86-video-scfb for a VESA-like experience on EFI systems. -Nathan ___ freebsd-current@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org