Giter VIP home page Giter VIP logo

Comments (16)

jglathe avatar jglathe commented on July 24, 2024

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.

CoiaPrant233 avatar CoiaPrant233 commented on July 24, 2024

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.

jglathe avatar jglathe commented on July 24, 2024

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.

CoiaPrant233 avatar CoiaPrant233 commented on July 24, 2024

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.

CoiaPrant233 avatar CoiaPrant233 commented on July 24, 2024

Or may i need change grub cmdline?

from linux_ms_dev_kit.

jglathe avatar jglathe commented on July 24, 2024

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.

jglathe avatar jglathe commented on July 24, 2024

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.

jglathe avatar jglathe commented on July 24, 2024

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.

CoiaPrant233 avatar CoiaPrant233 commented on July 24, 2024

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.

jglathe avatar jglathe commented on July 24, 2024

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.

CoiaPrant233 avatar CoiaPrant233 commented on July 24, 2024

photo_2024-05-03_14-14-17
Then video output is no signal

from linux_ms_dev_kit.

jglathe avatar jglathe commented on July 24, 2024

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.

CoiaPrant233 avatar CoiaPrant233 commented on July 24, 2024

当由于某种原因未加载 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.

jglathe avatar jglathe commented on July 24, 2024

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.

CoiaPrant233 avatar CoiaPrant233 commented on July 24, 2024

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.

jglathe avatar jglathe commented on July 24, 2024

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 photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.