{"id":83,"date":"2009-10-23T15:07:59","date_gmt":"2009-10-23T12:07:59","guid":{"rendered":"http:\/\/vpv.kapsi.fi\/blog\/?p=83"},"modified":"2009-11-07T03:16:37","modified_gmt":"2009-11-07T00:16:37","slug":"fedora-12-beta-linux-2-6-31-5-rc1-intel-dp35dp-mainboard-requires-bios-update","status":"publish","type":"post","link":"https:\/\/vpv.kapsi.fi\/blog\/2009\/10\/fedora-12-beta-linux-2-6-31-5-rc1-intel-dp35dp-mainboard-requires-bios-update\/","title":{"rendered":"Fedora 12 Beta \/ Linux 2.6.31.5-rc1: Intel DP35DP mainboard requires BIOS update"},"content":{"rendered":"<p>I updated my desktop computer to Fedora 12 Beta, or maybe I should say Rawhide because there are already lots of updated packages after the Beta release.<\/p>\n<p>The computer has the Intel DP35DP motherboard. When I tried to boot the Fedora 12 Beta kernel, which is 2.6.31.something, can&#8217;t remember the exact version anymore, the kernel printed lots of iommu and usb error messages on the screen and USB didn&#8217;t seem to work at all. The motherboard doesn&#8217;t have any PS\/2 ports, so I would have needed USB support to use the keyboard and the mouse.<\/p>\n<p>I downloaded the latest Fedora 12 and Fedora 11 kernels on my laptop from <a href=\"http:\/\/koji.fedoraproject.org\/koji\/packageinfo?packageID=8\">Koji<\/a>, put the packages on a USB stick, booted the desktop computer with the Fedora 11 DVD in a rescue mode and installed the kernels to the system. Even the newest Fedora 12 kernel (2.6.31.5-rc1 based) had problems, but the newest Fedora 11 kernel (2.6.30.9-rc3 based) worked, which was a win.<\/p>\n<p>Now I was able to read the logs written while the kernel failure happened, which included stuff like this:<\/p>\n<p><code><br \/>\nkernel: DMAR:Host address width 36<br \/>\nkernel: DMAR:DRHD base: 0x000000feb00000 flags: 0x0<br \/>\nkernel: ------------[ cut here ]------------<br \/>\nkernel: WARNING: at drivers\/pci\/dmar.c:642 alloc_iommu+0x12c\/0x286() (Not tainted)<br \/>\nkernel: Hardware name:<br \/>\nkernel: Your BIOS is broken; DMAR reported at address feb00000 returns all ones!<br \/>\nkernel: BIOS vendor: Intel Corp.; Ver: DPP3510J.86A.0293.2007.1002.1519; Product Version:<br \/>\nkernel: Modules linked in:<br \/>\nkernel: Pid: 1, comm: swapper Not tainted 2.6.31.1-56.fc12.x86_64 #1<br \/>\nkernel: Call Trace:<br \/>\nkernel: [<ffffffff8106422c>] warn_slowpath_common+0x95\/0xc3<br \/>\nkernel: [<ffffffff810642e7>] warn_slowpath_fmt+0x50\/0x66<br \/>\nkernel: [<ffffffff812ac97a>] alloc_iommu+0x12c\/0x286<br \/>\nkernel: [<ffffffff81a25a06>] ? dmar_table_init+0x178\/0x3d7<br \/>\nkernel: [<ffffffff81a25a7c>] dmar_table_init+0x1ee\/0x3d7<br \/>\nkernel: [<ffffffff8104fa06>] ? task_rq_unlock+0x24\/0x3a<br \/>\nkernel: [<ffffffff81a0600a>] enable_IR_x2apic+0x21\/0x218<br \/>\nkernel: [<ffffffff81a033ea>] native_smp_prepare_cpus+0x13c\/0x384<br \/>\nkernel: [<ffffffff819f4e92>] kernel_init+0x93\/0x29b<br \/>\nkernel: [<ffffffff8101312a>] child_rip+0xa\/0x20<br \/>\nkernel: [<ffffffff81012a90>] ? restore_args+0x0\/0x30<br \/>\nkernel: [<ffffffff819f4dff>] ? kernel_init+0x0\/0x29b<br \/>\nkernel: [<ffffffff81013120>] ? child_rip+0x0\/0x20<br \/>\nkernel: ---[ end trace a7919e7f17c0a725 ]---<br \/>\nkernel: DMAR:parse DMAR table failure.<br \/>\n<\/ffffffff81013120><\/ffffffff819f4dff><\/ffffffff81012a90><\/ffffffff8101312a><\/ffffffff819f4e92><\/ffffffff81a033ea><\/ffffffff81a0600a><\/ffffffff8104fa06><\/ffffffff81a25a7c><\/ffffffff81a25a06><\/ffffffff812ac97a><\/ffffffff810642e7><\/ffffffff8106422c><\/code><\/p>\n<p>The rest of the log was filled with entries such as<br \/>\n<code>kernel: nommu_map_single: overflow 1236419b0+8 of device mask ffffffff<\/code><br \/>\nand<br \/>\n<code>kernel: usb 3-1: device not accepting address 5, error -32<br \/>\nkernel: hub 3-0:1.0: unable to enumerate USB device on port 1<\/code><\/p>\n<p>At least the error message was clear, &#8220;Your BIOS is broken&#8221;. So I went to the motherboard&#8217;s <a href=\"http:\/\/www.intel.com\/products\/desktop\/motherboards\/DP35DP\/DP35DP-overview.htm\">product page<\/a> and found out the BIOS on the motherboard was about two years old and the newest available BIOS is from July this year.<\/p>\n<p>I tried updating the BIOS with Intel&#8217;s Windows tool (I also have a Windows installation), but that just shut down the system without performing the update. Next I tried their Linux-based BIOS update boot CD, but it had the same effect, the system shut down, no BIOS update.<\/p>\n<p>With a bit of googling I found the instructions for doing a <a href=\"http:\/\/www.intel.com\/support\/motherboards\/desktop\/sb\/CS-023360.htm\">recovery BIOS update<\/a>, which means removing the BIOS jumper from the motherboard and booting the computer with a FAT formatted USB stick containing the BIOS file attached. This finally succeeded and the motherboard now has the newest BIOS. With it, the new kernel boots just fine \ud83d\ude42<\/p>\n<p>After all this rambling, the main point I want to say is: <strong>If you have an Intel DP35DP motherboard and Fedora 12 has USB problems, update the BIOS. You may have to do that with the recovery method, if nothing else works.<\/strong><\/p>\n<p><em>Edit: As far as I can tell, <a href=\"https:\/\/bugzilla.redhat.com\/show_bug.cgi?id=524808\">bug 524808<\/a> is about the same issue. It seems like the developers are planning a workaround, but a BIOS which behaves this way is apparently really broken, so you probably should just update it anyway.<\/p>\n<p>Edit 2: This was asked about in the comment section, the original BIOS my motherboard had was DPP3510J.86A.0293.2007.1002.1519 and the new one is DPP3510J.86A.0572.2009.0715.2346.<\/p>\n<p>Edit 3: <a href=\"https:\/\/bugzilla.redhat.com\/show_bug.cgi?id=524808#c37\">Chuck Ebbert mentions in the bug report<\/a> that adding <tt>iommu=soft<\/tt> to the kernel parameters will disable the Intel IOMMU, which should work around this problem and let your system boot even with an older BIOS.<\/em><\/p>\n","protected":false},"excerpt":{"rendered":"<p>I updated my desktop computer to Fedora 12 Beta, or maybe I should say Rawhide because there are already lots of updated packages after the Beta release. The computer has the Intel DP35DP motherboard. When I tried to boot the Fedora 12 Beta kernel, which is 2.6.31.something, can&#8217;t remember the exact version anymore, the kernel [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4],"tags":[],"class_list":["post-83","post","type-post","status-publish","format-standard","hentry","category-fedora"],"_links":{"self":[{"href":"https:\/\/vpv.kapsi.fi\/blog\/wp-json\/wp\/v2\/posts\/83","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/vpv.kapsi.fi\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/vpv.kapsi.fi\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/vpv.kapsi.fi\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/vpv.kapsi.fi\/blog\/wp-json\/wp\/v2\/comments?post=83"}],"version-history":[{"count":9,"href":"https:\/\/vpv.kapsi.fi\/blog\/wp-json\/wp\/v2\/posts\/83\/revisions"}],"predecessor-version":[{"id":94,"href":"https:\/\/vpv.kapsi.fi\/blog\/wp-json\/wp\/v2\/posts\/83\/revisions\/94"}],"wp:attachment":[{"href":"https:\/\/vpv.kapsi.fi\/blog\/wp-json\/wp\/v2\/media?parent=83"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/vpv.kapsi.fi\/blog\/wp-json\/wp\/v2\/categories?post=83"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/vpv.kapsi.fi\/blog\/wp-json\/wp\/v2\/tags?post=83"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}