From: Landry Breuil Subject: Re: smmu(4) on QC Laptops To: Patrick Wildt Cc: tech@openbsd.org, kettenis@openbsd.org, tobhe@openbsd.org, mlarkin@openbsd.org Date: Fri, 23 May 2025 17:47:56 +0200 Le Fri, May 23, 2025 at 04:55:48PM +0200, Patrick Wildt a écrit : > On Fri, May 23, 2025 at 01:56:22PM +0200, Landry Breuil wrote: > > Le Fri, May 23, 2025 at 10:22:19AM +0200, Patrick Wildt a ?crit : > > > On Fri, May 23, 2025 at 09:20:52AM +0200, Landry Breuil wrote: > > > > Le Fri, May 23, 2025 at 08:46:16AM +0200, Patrick Wildt a ?crit : > > > > > Hi, > > > > > > > > > > Nearly three years ago we disabled smmu(4) for QC laptops because they > > > > > just rebooted instantly. I've finally gone to the bottom of why this > > > > > happens. > > > > > > > > > Please give this a go on machines where `dmesg | grep ^smmu' gives > > > > > output, and especially on QC machines with X1E, or SC8280XP/ThinkPad > > > > > x13s. Please send me some dmesgs, as I have added some debug code > > > > > that I'd like to see run on other machines. :) > > > > > > > > doesnt blow up on the hp omnibook, dmesg below. > > > > > > I forgot to mention, this needs a `make config` because of the early > > > attach change that I forgot to mention, otherwise smmu1 pops up too > > > late :/ Can you give it another try? Thanks! > > > > unless i did something very wrong, make config && make && make install > > && reboot gives the same dmesg order for smmuX. what should i see > > different ? > > It's not you, it's me. I'm sorry, I missed a tiny chunk that's in conf/ > and I was sooo sure it was part of the mail. Same diff + the chunk for > conf/: indeed that's much betterer, new dmesg below, with different order and more smmuX debug messages. OpenBSD 7.7-current (GENERIC.MP) #13: Fri May 23 17:43:50 CEST 2025 landry@turia.rhaalovely.net:/usr/src/sys/arch/arm64/compile/GENERIC.MP real mem = 16355344384 (15597MB) avail mem = 15808593920 (15076MB) random: good seed from bootblocks mainbus0 at root: HP Omnibook X 14 psci0 at mainbus0: PSCI 1.1, SMCCC 1.3, SYSTEM_SUSPEND efi0 at mainbus0: UEFI 2.9 efi0: INSYDE Corp. rev 0x0 smbios0 at efi0: SMBIOS 3.6.0 smbios0: vendor Insyde version "F.10" date 08/29/2024 smbios0: HP HP OmniBook X Laptop 14-fe0xxx cpu0 at mainbus0 mpidr 0: Qualcomm Oryon r2p1 cpu0: 192KB 64b/line 6-way L1 PIPT I-cache, 96KB 64b/line 6-way L1 D-cache cpu0: 12288KB 64b/line 12-way L2 cache cpu0: RNDR,TLBIOS+IRANGE,TS+AXFLAG,FHM,DP,SM4,SM3,SHA3,RDM,Atomic,CRC32,SHA2+SHA512,SHA1,AES+PMULL,I8MM,BF16,SPECRES,SB,FRINTTS,GPA,LRCPC+LDAPUR,FCMA,JSCVT,APA+EPAC2+FPAC+COMBINED,DPB+DCCVADP,CLRBHB,RPRES,ECV+CNTHCTL,ASID16,AFP,SpecSEI,PAN+ATS1E1+EPAN,LO,HPDS,VH,IDS,AT,CSV3,CSV2,DIT,RASv1p1,AdvSIMD+HP,FP+HP,BT,SSBS+MSR cpu1 at mainbus0 mpidr 100: Qualcomm Oryon r2p1 cpu1: 192KB 64b/line 6-way L1 PIPT I-cache, 96KB 64b/line 6-way L1 D-cache cpu1: 12288KB 64b/line 12-way L2 cache cpu2 at mainbus0 mpidr 200: Qualcomm Oryon r2p1 cpu2: 192KB 64b/line 6-way L1 PIPT I-cache, 96KB 64b/line 6-way L1 D-cache cpu2: 12288KB 64b/line 12-way L2 cache cpu3 at mainbus0 mpidr 300: Qualcomm Oryon r2p1 cpu3: 192KB 64b/line 6-way L1 PIPT I-cache, 96KB 64b/line 6-way L1 D-cache cpu3: 12288KB 64b/line 12-way L2 cache cpu4 at mainbus0 mpidr 10000: Qualcomm Oryon r1p1 cpu4: 192KB 64b/line 6-way L1 PIPT I-cache, 96KB 64b/line 6-way L1 D-cache cpu4: 12288KB 64b/line 12-way L2 cache cpu5 at mainbus0 mpidr 10100: Qualcomm Oryon r1p1 cpu5: 192KB 64b/line 6-way L1 PIPT I-cache, 96KB 64b/line 6-way L1 D-cache cpu5: 12288KB 64b/line 12-way L2 cache cpu6 at mainbus0 mpidr 10200: Qualcomm Oryon r1p1 cpu6: 192KB 64b/line 6-way L1 PIPT I-cache, 96KB 64b/line 6-way L1 D-cache cpu6: 12288KB 64b/line 12-way L2 cache cpu7 at mainbus0 mpidr 10300: Qualcomm Oryon r1p1 cpu7: 192KB 64b/line 6-way L1 PIPT I-cache, 96KB 64b/line 6-way L1 D-cache cpu7: 12288KB 64b/line 12-way L2 cache cpu8 at mainbus0 mpidr 20000: Qualcomm Oryon r1p1 cpu8: 192KB 64b/line 6-way L1 PIPT I-cache, 96KB 64b/line 6-way L1 D-cache cpu8: 12288KB 64b/line 12-way L2 cache cpu9 at mainbus0 mpidr 20100: Qualcomm Oryon r1p1 cpu9: 192KB 64b/line 6-way L1 PIPT I-cache, 96KB 64b/line 6-way L1 D-cache cpu9: 12288KB 64b/line 12-way L2 cache cpu10 at mainbus0 mpidr 20200: Qualcomm Oryon r1p1 cpu10: 192KB 64b/line 6-way L1 PIPT I-cache, 96KB 64b/line 6-way L1 D-cache cpu10: 12288KB 64b/line 12-way L2 cache cpu11 at mainbus0 mpidr 20300: Qualcomm Oryon r1p1 cpu11: 192KB 64b/line 6-way L1 PIPT I-cache, 96KB 64b/line 6-way L1 D-cache cpu11: 12288KB 64b/line 12-way L2 cache qcscm0 at mainbus0 scmi0 at mainbus0 "gunyah-hyp" at mainbus0 not configured "hyp-elf-package" at mainbus0 not configured "ncc" at mainbus0 not configured "cpucp-log" at mainbus0 not configured "cpucp" at mainbus0 not configured "reserved-region" at mainbus0 not configured "tags-region" at mainbus0 not configured "xbl-dtlog" at mainbus0 not configured "xbl-ramdump" at mainbus0 not configured "aop-image" at mainbus0 not configured "aop-cmd-db" at mainbus0 not configured "aop-config" at mainbus0 not configured "tme-crash-dump" at mainbus0 not configured "tme-log" at mainbus0 not configured "uefi-log" at mainbus0 not configured "secdata-apss" at mainbus0 not configured "pdp-ns-shared" at mainbus0 not configured "gpu-prr" at mainbus0 not configured "tpm-control" at mainbus0 not configured "usb-ucsi-shared" at mainbus0 not configured "pld-pep" at mainbus0 not configured "pld-gmu" at mainbus0 not configured "pld-pdp" at mainbus0 not configured "tz-stat" at mainbus0 not configured "xbl-tmp-buffer" at mainbus0 not configured "adsp-rpc-remote-heap" at mainbus0 not configured "spu-secure-shared-memory" at mainbus0 not configured "adsp-boot-dtb" at mainbus0 not configured "spss-region" at mainbus0 not configured "adsp-boot" at mainbus0 not configured "video" at mainbus0 not configured "adspslpi" at mainbus0 not configured "q6-adsp-dtb" at mainbus0 not configured "cdsp" at mainbus0 not configured "q6-cdsp-dtb" at mainbus0 not configured "gpu-microcode" at mainbus0 not configured "cvp" at mainbus0 not configured "camera" at mainbus0 not configured "av1-encoder" at mainbus0 not configured "reserved-region" at mainbus0 not configured "wpss" at mainbus0 not configured "q6-wpss-dtb" at mainbus0 not configured "xbl-sc" at mainbus0 not configured "reserved-region" at mainbus0 not configured "qtee" at mainbus0 not configured "ta" at mainbus0 not configured "tags" at mainbus0 not configured "llcc-lpi" at mainbus0 not configured qcsmem0 at mainbus0 "linux,cma" at mainbus0 not configured apm0 at mainbus0 "clocks" at mainbus0 not configured "firmware" at mainbus0 not configured "interconnect-0" at mainbus0 not configured "interconnect-1" at mainbus0 not configured "pmu" at mainbus0 not configured "opp-table-qup100mhz" at mainbus0 not configured "opp-table-qup120mhz" at mainbus0 not configured qcsmptp0 at mainbus0 qcsmptp1 at mainbus0 simplebus0 at mainbus0: "soc" qcmtx0 at simplebus0 syscon0 at simplebus0: "clock-controller" smmu0 at simplebus0: 22 CBs (0 S2-only), bypass quirk qcgpio0 at simplebus0 smmu1 at simplebus0: 74 CBs (0 S2-only), bypass quirk smmu1: SMR[0] = 0x1a0/0x0 smmu1: SMR[1] = 0x520/0x0 smmu1: SMR[2] = 0x160/0x0 smmu1: SMR[3] = 0x1420/0x0 smmu1: SMR[4] = 0x1460/0x0 smmu1: SMR[5] = 0x14a0/0x0 smmu1: SMR[6] = 0x1400/0x0 smmu1: SMR[7] = 0x14e0/0x0 smmu1: SMR[8] = 0x1c00/0x2 smmu1: SMR[9] = 0x480/0x0 agintc0 at simplebus0 shift 4:4 nirq 1024 nredist 12 ipi: 0, 1, 2: "interrupt-controller" agintcmsi0 at agintc0 "clock-controller" at simplebus0 not configured qcipcc0 at simplebus0 smmu1: establishing sid 0x423 simplebus1 at simplebus0: "geniqup" smmu1: establishing sid 0x123 simplebus2 at simplebus0: "geniqup" qciic0 at simplebus2 iic0 at qciic0 ihidev0 at iic0 addr 0x10 irq, vendor 0x4f3 product 0x4329, hid-over-i2c ihidev0: 14 report ids ims0 at ihidev0 reportid 1: 1 button, tip wsmouse0 at ims0 mux 0 hid at ihidev0 reportid 2 not configured hid at ihidev0 reportid 3 not configured hid at ihidev0 reportid 4 not configured hid at ihidev0 reportid 6 not configured hid at ihidev0 reportid 10 not configured hid at ihidev0 reportid 14 not configured qciic1 at simplebus2 iic1 at qciic1 smmu1: establishing sid 0x443 simplebus3 at simplebus0: "geniqup" qciic2 at simplebus3 iic2 at qciic2 ihidev1 at iic2 addr 0x3a irq, vendor 0x416 product 0xc300, hid-over-i2c ihidev1: 9 report ids ikbd0 at ihidev1 reportid 8: 8 variable keys, 6 key codes wskbd0 at ikbd0: console keyboard icc0 at ihidev1 reportid 9: 573 usages, 20 keys, array wskbd1 at icc0 mux 1 ihidev2 at iic2 addr 0x15 irq, vendor 0x4f3 product 0x32ed, hid-over-i2c ihidev2: 92 report ids imt0 at ihidev2 imt0: invalid max X/Y 0/0 ims1 at ihidev2 reportid 1: 2 buttons wsmouse1 at ims1 mux 0 hid at ihidev2 reportid 5 not configured hid at ihidev2 reportid 7 not configured hid at ihidev2 reportid 11 not configured hid at ihidev2 reportid 12 not configured hid at ihidev2 reportid 13 not configured ims2 at ihidev2 reportid 14: 0 buttons wsmouse2 at ims2 mux 0 hid at ihidev2 reportid 84 not configured hid at ihidev2 reportid 92 not configured qciic3 at simplebus3 iic3 at qciic3 qciic4 at simplebus3 iic4 at qciic4 qciic5 at simplebus3 iic5 at qciic5 qciic6 at simplebus3 iic6 at qciic6 qciic7 at simplebus3 iic7 at qciic7 qctsens0 at simplebus0 qctsens1 at simplebus0 qctsens2 at simplebus0 qctsens3 at simplebus0 "phy" at simplebus0 not configured "phy" at simplebus0 not configured "phy" at simplebus0 not configured "phy" at simplebus0 not configured "interconnect" at simplebus0 not configured "interconnect" at simplebus0 not configured "interconnect" at simplebus0 not configured "interconnect" at simplebus0 not configured "interconnect" at simplebus0 not configured "interconnect" at simplebus0 not configured "interconnect" at simplebus0 not configured "interconnect" at simplebus0 not configured "interconnect" at simplebus0 not configured "interconnect" at simplebus0 not configured "interconnect" at simplebus0 not configured "interconnect" at simplebus0 not configured dwpcie0 at simplebus0 "phy" at simplebus0 not configured dwpcie1 at simplebus0 "phy" at simplebus0 not configured "crypto" at simplebus0 not configured smmu0: establishing sid 0x0 "gpu" at simplebus0 not configured smmu0: establishing sid 0x5 "gmu" at simplebus0 not configured "clock-controller" at simplebus0 not configured "interconnect" at simplebus0 not configured "interconnect" at simplebus0 not configured "codec" at simplebus0 not configured "codec" at simplebus0 not configured "codec" at simplebus0 not configured "codec" at simplebus0 not configured "clock-controller" at simplebus0 not configured "codec" at simplebus0 not configured "pinctrl" at simplebus0 not configured "clock-controller" at simplebus0 not configured "interconnect" at simplebus0 not configured "interconnect" at simplebus0 not configured "interconnect" at simplebus0 not configured qcdwusb0 at simplebus0: "usb" smmu1: establishing sid 0x1400 smmu1: took over 6/1400/0 for sid 1400 xhci0 at qcdwusb0, xHCI 1.10 usb0 at xhci0: USB revision 3.0 uhub0 at usb0 configuration 1 interface 0 "Generic xHCI root hub" rev 3.00/1.00 addr 1 qcdwusb1 at simplebus0: "usb" smmu1: establishing sid 0x1420 smmu1: took over 3/1420/0 for sid 1420 xhci1 at qcdwusb1, xHCI 1.10 usb1 at xhci1: USB revision 3.0 uhub1 at usb1 configuration 1 interface 0 "Generic xHCI root hub" rev 3.00/1.00 addr 1 qcdwusb2 at simplebus0: "usb" smmu1: establishing sid 0x1460 smmu1: took over 4/1460/0 for sid 1460 xhci2 at qcdwusb2, xHCI 1.10 usb2 at xhci2: USB revision 3.0 uhub2 at usb2 configuration 1 interface 0 "Generic xHCI root hub" rev 3.00/1.00 addr 1 smmu1: establishing sid 0x1c00 smmu1: took over 8/1c00/2 for sid 1c00 "display-subsystem" at simplebus0 not configured "phy" at simplebus0 not configured "clock-controller" at simplebus0 not configured qcpdc0 at simplebus0 qcaoss0 at simplebus0 "sram" at simplebus0 not configured qcspmi0 at simplebus0 qcpmic0 at qcspmi0 sid 0x0 qcpon0 at qcpmic0 qcrtc0 at qcpmic0 qcsdam0 at qcpmic0 qcpmicgpio0 at qcpmic0: no pins qcpmic1 at qcspmi0 sid 0x1 qcpmicgpio1 at qcpmic1: no pins qcpwm0 at qcpmic1 qcpmic2 at qcspmi0 sid 0x2 qcpmicgpio2 at qcpmic2: no pins qcpmic3 at qcspmi0 sid 0x3 qcpmicgpio3 at qcpmic3: no pins qcpmic4 at qcspmi0 sid 0x4 qcpmicgpio4 at qcpmic4: no pins qcpmic5 at qcspmi0 sid 0x5 qcpmicgpio5 at qcpmic5: no pins qcpmic6 at qcspmi0 sid 0x6 qcpmicgpio6 at qcpmic6: no pins qcpmic7 at qcspmi0 sid 0x8 qcpmicgpio7 at qcpmic7: no pins qcpmic8 at qcspmi0 sid 0x9 qcpmicgpio8 at qcpmic8: no pins qcpmic9 at qcspmi0 sid 0xc: unknown PMIC type qccpucp0 at simplebus0 "rsc" at simplebus0 not configured "timer" at simplebus0 not configured "sram" at simplebus0 not configured "pmu" at simplebus0 not configured "pmu" at simplebus0 not configured "pmu" at simplebus0 not configured "pmu" at simplebus0 not configured "system-cache-controller" at simplebus0 not configured qcpas0 at simplebus0 "remoteproc" at simplebus0 not configured pci0 at dwpcie0 ppb0 at pci0 dev 0 function 0 "Qualcomm X1E80100 PCIe" rev 0x00: msi pci1 at ppb0 bus 1 nvme0 at pci1 dev 0 function 0 "SanDisk NVMe" rev 0x01: msix, NVMe 1.4 nvme0: WD PC SN560 SDDPNQE-1T00-2006, firmware HPS1, serial 24091H806314 scsibus0 at nvme0: 2 targets, initiator 0 sd0 at scsibus0 targ 1 lun 0: sd0: 976762MB, 512 bytes/sector, 2000409264 sectors pci2 at dwpcie1 ppb1 at pci2 dev 0 function 0 "Qualcomm X1E80100 PCIe" rev 0x00: msi pci3 at ppb1 bus 1 qwx0 at pci3 dev 0 function 0 "Qualcomm QCNFA765" rev 0x01: msi agtimer0 at mainbus0: 19200 kHz gpiokeys0 at mainbus0 "pmic-glink" at mainbus0 not configured "vph-pwr-regulator" at mainbus0 not configured "regulator-edp-3p3" at mainbus0 not configured "regulator-nvme" at mainbus0 not configured scmi0: SCMI 2.0 uaudio0 at uhub0 port 1 configuration 1 interface 1 "C-Media Electronics Inc. USB Audio Device" rev 1.10/1.00 addr 2 uaudio0: class v1, full-speed, sync, channels: 2 play, 1 rec, 8 ctls audio0 at uaudio0 uhidev0 at uhub0 port 1 configuration 1 interface 3 "C-Media Electronics Inc. USB Audio Device" rev 1.10/1.00 addr 2 uhidev0: iclass 3/0 ucc0 at uhidev0: 10 usages, 3 keys, enum wskbd2 at ucc0 mux 1 vscsi0 at root scsibus1 at vscsi0: 256 targets softraid0 at root scsibus2 at softraid0: 256 targets root on sd0a (7b616420ffc3d14b.a) swap on sd0b dump on sd0b qcpas0: all intents in use qwx0: wcn6855 hw2.1 fw 0x11088c35 address 58:cd:c9:8b:f1:5d simplefb0 at mainbus0: 1360x779, 32bpp wsdisplay0 at simplefb0 mux 1: console (std, vt100 emulation), using wskbd0 wskbd1: connecting to wsdisplay0 wskbd2: connecting to wsdisplay0 wsdisplay0: screen 1-5 added (std, vt100 emulation)