Bug 1110963 - Tegra DTBs missing from /boot/dtb-$(uname -r) after install
Summary: Tegra DTBs missing from /boot/dtb-$(uname -r) after install
Alias: None
Product: Fedora
Classification: Fedora
Component: kernel
Version: rawhide
Hardware: armv7hl
OS: Linux
Target Milestone: ---
Assignee: Peter Robinson
QA Contact: Fedora Extras Quality Assurance
Depends On:
TreeView+ depends on / blocked
Reported: 2014-06-18 22:59 UTC by Stephen Warren
Modified: 2014-09-23 05:00 UTC (History)
8 users (show)

Fixed In Version: kernel-3.16.2-300.fc21
Doc Type: Bug Fix
Doc Text:
Clone Of:
Last Closed: 2014-08-26 20:23:13 UTC
Type: Bug

Attachments (Terms of Use)
Patch to kernel fedpkg that fixes this (5.94 KB, patch)
2014-08-05 23:27 UTC, Stephen Warren
no flags Details | Diff

Description Stephen Warren 2014-06-18 22:59:04 UTC
After running the Fedora installer, many DTBs are present in e.g. /boot/dtb-3.16.0-0.rc0.git11.1.fc21.armv7hl+lpae/. However, no DTBs for Tegra boards are present. tegra124-jetson-tk1.dtb is one example that's missing.

The missing DTBs are evidently built by the kernel build process, since they do show up at:


Comment 1 Stephen Warren 2014-06-18 23:02:40 UTC
On IRC, dgilmore says this is probably because Tegra support isn't enabled in the LPAE kernel build. I installed on Jetson TK1, and the CPU on that board does support LPAE, so an LPAE kernel was installed.

Comment 2 Peter Robinson 2014-06-19 07:59:54 UTC
Yes, so to date we've not enabled tegra in the LPAE kernel as there's not been devices widely available to test and use.

Comment 3 Stephen Warren 2014-07-23 19:08:36 UTC
Is fixing this simply a matter of moving some kernel defconfig options from the non-LPAE Fedora defconfig to some defconfig that's shared between LPAE and non-LPAE?

Comment 4 Stephen Warren 2014-08-05 23:27:00 UTC
Created attachment 924300 [details]
Patch to kernel fedpkg that fixes this

I believe this should fix it. I'm going to build it overnight and test it tomorrow. It at least passes the "listnewconfig" check...

Comment 5 Peter Robinson 2014-08-06 07:04:05 UTC
(In reply to Stephen Warren from comment #3)
> Is fixing this simply a matter of moving some kernel defconfig options from
> the non-LPAE Fedora defconfig to some defconfig that's shared between LPAE
> and non-LPAE?

Mostly but to date I've not seen the point in supporting it because there's not really any devices I see that will benefit from LPAE as all the devices have < 4Gb of RAM.

Comment 6 Stephen Warren 2014-08-06 15:30:24 UTC
Re: comment 5: The reason it's useful for the LPAE kernel to support Tegra is that the installer installs the LPAE kernel on any system with an LPAE capable CPU, even if the RAM size doesn't make LPAE actually useful. There are 5 Tegra boards supported by the mainstream kernel that contain CPUs that support LPAE, albeit admittedly only 1 (Jetson TK1) is going to be widely available and useful for generic distros.

Comment 7 Stephen Warren 2014-08-06 17:08:58 UTC
Uggh. My build failed due to lack of disk space. I'll try building on an attached USB HDD tonight and see if that works out...

Comment 8 Peter Robinson 2014-08-06 17:32:18 UTC
It's no issues, I'll sort it out and push it in the next few days

Comment 9 Stephen Warren 2014-08-07 16:42:42 UTC
With the patch applied, the non-LPAE kernel appears to work fine. The LPAE kernel boots OK on Tegra, but there's obviously some missing regulator module, since a bunch of regulators don't probe, and hence HDMI doesn't work. I'll track down the missing option and move it into config-armv7 to fix this.

Comment 10 Peter Robinson 2014-08-07 17:13:27 UTC
OK, the patch I'm going to use isn't quite what you have. Give me a day or so and I'll have it in place, I'm @ Flock ATM

Comment 11 Stephen Warren 2014-08-07 17:48:21 UTC
Out of curiosity, what's the benefit of not using the patch I've already spent time on preparing?

Comment 12 Stephen Warren 2014-08-07 19:45:34 UTC
FWIW, the problem with the armv7hl+lpae build with my patch is that the AS3722 PMIC drivers aren't enabled, evee though config-armv7-generic enables/requests it.

That's because MFD_AS3722 depends on I2C=y (not just I2C). Fedora has I2C=m in config-generic. Various things enabled in config-armv7 select I2C (so force it to =y not =m), such as OMAP2PLUS support, and numerous others. Since none of those things are enabled in the LPAE config, this doesn't happen, so I2C=m, which ends up disabling MFD_AS3772, so most regulators don't exist at runtime, and anything relying on them fails, such as HDMI.

I'd suggest that kernel.spec go through all the final generated configs/* files and double-check that the "make oldnoconfig" didn't remove any options. I could try coding that up if you want.

Comment 13 Peter Robinson 2014-08-26 10:17:17 UTC
Tegra will be in both lpae and general kernel with 3.17rc2

Comment 14 Peter Robinson 2014-08-26 20:23:13 UTC
Committed to F-21 and rawhide.

Comment 15 Fedora Update System 2014-09-06 12:46:06 UTC
kernel-3.16.2-300.fc21 has been submitted as an update for Fedora 21.

Comment 16 Stephen Warren 2014-09-11 14:51:05 UTC
I've validated that the desired DTBs appear in /boot/dtb-* in the rawhide kernels. Thanks.

Comment 17 Fedora Update System 2014-09-23 05:00:13 UTC
kernel-3.16.2-300.fc21 has been pushed to the Fedora 21 stable repository.  If problems still persist, please make note of it in this bug report.

Note You need to log in before you can comment on or make changes to this bug.