Comments (16)
This issue is fixed now, the dts is amended and seems to work fine. Also, there's a new 6.8.y branch for current EL2 work. It is already cleaned up, will prune branches eventually.
from linux_ms_dev_kit.
I'm back. Are u sure these bugs were fixed?
I've built lastet kernel with branch 'jg/el2-iommu-v6.8', It also has same problem.
I can not build jg/el2-mainline
, make deb-pkg
throw errors.
Here is dmesg for jg/el2-iommu-v6.8
dmesg.txt
from linux_ms_dev_kit.
Pretty sure. 6.8.2 and 6.8.7 worked nicely, currently running 6.8.7-EL2+. Haven't seen AER errors for quite a while, it's running from nvme 🤷♂️ Newest branch is jg/el2-v6.9-rc5. Only single errors seen with SN-740.
from linux_ms_dev_kit.
It can not boot. Its no video output, and network also down.
Can u share ur firmware, initramfs hooks, kernel config?
from linux_ms_dev_kit.
Or may i need change grub cmdline?
from linux_ms_dev_kit.
the kernel config is devkit_defconfig 🤷 should be up to date IMO. I just made the build/install on my box, this is the bash history:
2019 make -j8 devkit_defconfig
2020 make -j8 olddefconfig
2021 time make -j8 Image.gz dtbs modules
2022 sudo make -j8 modules_install
2023 sudo mkdir -p /boot/dtbs/6.9.0-rc5-EL2+
2024 sudo cp arch/arm64/boot/dts/qcom/sc8280xp-microsoft-blackrock.dtb /boot/dtbs/6.9.0-rc5-EL2+/
2025 cd /boot/
2026 sudo ln -s dtbs/6.9.0-rc5-EL2+/sc8280xp-microsoft-blackrock.dtb dtb-6.9.0-rc5-EL2+
2027 cd ~/src/linux_ms_dev_kit/
2028 sudo make -j8 install
No change in firmware or initramfs config vs. 6.8.0.
from linux_ms_dev_kit.
Hmm 6.9-rc5 stalls at boot, something bad is happening early. Need to investigate. I'm now back at 6.8.7-EL2. This is on jg/el2-mainline, the tag is v6.8.7-el2. Should work IMO, is working here.
from linux_ms_dev_kit.
Found the reason 6.9.0-rc5 wasn't working, the iommu-map definitions for PCIe were missing. If you boot from nvme this is game over, from USB you might get the system up, but no PCIe devices. This is fixed now. @CoiaPrant233 please try again.
from linux_ms_dev_kit.
Found the reason 6.9.0-rc5 wasn't working, the iommu-map definitions for PCIe were missing. If you boot from nvme this is game over, from USB you might get the system up, but no PCIe devices. This is fixed now. @CoiaPrant233 please try again.
Boot from NVMe failed. Same problem.
from linux_ms_dev_kit.
May I ask how you add this to your grub configuration? I regularly f this up, so maybe a look into /boot/grub/grub.cfg is useful. Mine looks like this:
menuentry 'Ubuntu' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-867baeee-d77b-4b7b-94d7-94a1c81b4fff' {
recordfail
savedefault
load_video
gfxmode $linux_gfx_mode
insmod gzio
if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
insmod part_gpt
insmod ext2
search --no-floppy --fs-uuid --set=root 1bf8d5d1-a2c1-494f-acbf-087be412bda1
linux /vmlinuz-6.9.0-rc5-EL2+ root=UUID=867baeee-d77b-4b7b-94d7-94a1c81b4fff ro rootflags=subvol=@ pd_ignore_unused clk_ignore_unused regulator_ignore_unused arm64.nopauth efi=noruntime loglevel=6 drm.debug=0x100 dyndbg='file drivers/regulator/core.c +p;file drivers/base/firmware_loader/main.c +p'
initrd /initrd.img-6.9.0-rc5-EL2+
devicetree /dtb-6.9.0-rc5-EL2+
This boots from a btrfs rootfs, so it might look different. The devicetree statement is crucial, and should be the fully qualified path , like devicetree /boot/dtb-6.9.0-rc5-EL2+
, just like the initrd statement. If this is missing (or the link is wrong) it will not boot.
from linux_ms_dev_kit.
Then video output is no signal
from linux_ms_dev_kit.
I see this type of behaviour when the dtb is not loaded for whatever reason.
This is how I copy the dtb over and link it for grub to be recognized:
jglathe@volterra:~/src/linux_ms_dev_kit$ sudo mkdir -p /boot/dtbs/6.8.8+
jglathe@volterra:~/src/linux_ms_dev_kit$ sudo cp arch/arm64/boot/dts/qcom/sc8280xp-microsoft-blackrock.dtb /mnt/boot/dtbs/6.8.8+/
jglathe@volterra:~/src/linux_ms_dev_kit$ sudo ln -s /boot/dtbs/6.8.8+/sc8280xp-microsoft-blackrock.dtb /boot/dtb-6.8.8+
Afterwards you should run these two commands. As there is something wrong already, it is worth the time:
sudo update-initramfs -u -k all
sudo update-grub
This regenerates the initramfs for all kernel versions installed and re-creates grub.cfg. Afterwards rebot (with the slbounce treatment) should bring the box up.
from linux_ms_dev_kit.
当由于某种原因未加载 dtb 时,我会看到这种行为。
这就是我复制 dtb 并将其链接以识别 grub 的方式:
jglathe@volterra:~/src/linux_ms_dev_kit$ sudo mkdir -p /boot/dtbs/6.8.8+ jglathe@volterra:~/src/linux_ms_dev_kit$ sudo cp arch/arm64/boot/dts/qcom/sc8280xp-microsoft-blackrock.dtb /mnt/boot/dtbs/6.8.8+/ jglathe@volterra:~/src/linux_ms_dev_kit$ sudo ln -s /boot/dtbs/6.8.8+/sc8280xp-microsoft-blackrock.dtb /boot/dtb-6.8.8+
之后,您应该运行这两个命令。由于已经有问题了,所以值得花时间:
sudo update-initramfs -u -k all sudo update-grub
这将为安装的所有内核版本重新生成 initramfs,并重新创建 grub.cfg。之后,rebot(使用 slbounce 处理)应该将盒子抬起。
I think dtb was loaded.
from linux_ms_dev_kit.
I've seen some failures... that looks like dtb not loaded with the newer BIOSes. It's trying to use ACPI, and doesn't come far either. It looks similar when the iommu-map
is missing in the dtb and you're on EL2. Please try to check:
- that you have the right dtb linked (the previous had the iommu-map fault)
- that it's actually booting from the desired device. I had issues with the ubuntu boot option in the newest WDK BIOS, which insisted on being on. It needs to be off if you want to boot off USB and actually have grub (or ubuntu, dunno what they check) on the nvme, it will boot with grub from nvme.
from linux_ms_dev_kit.
I've seen some failures... that looks like dtb not loaded with the newer BIOSes. It's trying to use ACPI, and doesn't come far either. It looks similar when the is missing in the dtb and you're on EL2. Please try to check:
iommu-map
- that you have the right dtb linked (the previous had the iommu-map fault)
- that it's actually booting from the desired device. I had issues with the ubuntu boot option in the newest WDK BIOS, which insisted on being on. It needs to be off if you want to boot off USB and actually have grub (or ubuntu, dunno what they check) on the nvme, it will boot with grub from nvme.
Yes, u are right. dtb was broken. I fixed it and boot successfully. Thanks
but still has some error on screen
[ 2.773736] qcom-venus aa00000.video-codec: error -22 initializing firmware qcom/sc8280xp/MICROSOFT/DEVKIT23/qcvss8280.mbn
[ 2.773755] firmware_class:__free_fw_priv: firmware_class: __free_fw_priv: fw-qcom/sc8280xp/MICROSOFT/DEVKIT23/qcvss8280.mbn fw_priv=000000005993ae07 data=000000004ef59634 size=2035748
[ 2.773798] qcom-venus aa00000.video-codec: fail to load video firmware
[ 2.778757] ath11k_pci 0006:01:00.0: MSI vectors: 32
[ 2.778781] ath11k_pci 0006:01:00.0: wcn6855 hw2.1
[ 2.778785] firmware_class:__allocate_fw_priv: firmware_class: __allocate_fw_priv: fw-ath11k/WCN6855/hw2.1/firmware-2.bin fw_priv=00000000ddedb6d5
[ 2.779499] firmware_class:__free_fw_priv: firmware_class: __free_fw_priv: fw-ath11k/WCN6855/hw2.1/firmware-2.bin fw_priv=00000000ddedb6d5 data=0000000000000000 size=0
[ 2.783861] qcom-venus aa00000.video-codec: probe with driver qcom-venus failed with error -22
Full dmesg
dmesg.txt
from linux_ms_dev_kit.
Those are still "normal" for EL2 operation. No progress on fixing firmware loads that depend on the HYP firmware (which got replaced with slbounce).
from linux_ms_dev_kit.
Related Issues (6)
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from linux_ms_dev_kit.