ChanServ changed the topic of #msm8937-mainline to: Boot Linux on your MSM8917/37/40 and QM215 mobile! | GitHub: https://github.com/msm89x7-mainline | Logs: https://oftc.irclog.whitequark.org/msm8937-mainline | Bridged to #msm8937-mainline:kde.org on Matrix
<ValPackett[m]> hm the actual system partition only has WCNSS_cfg.dat but not WCNSS_qcom_wlan_nv.bin
<barni2000[m]> which android was installed on it?
<ValPackett[m]> 8.0
<barni2000[m]> Factory or Custom?
<ValPackett[m]> factory, i just unlocked the bootloader yesterday
<barni2000[m]> do you have vendor partiton?
<ValPackett[m]> yes, the msm-firmware-loader gets all the mdt/mbn whatever stuff from it.. well sure let me inspect it manually
<barni2000[m]> msm-firmware-loader uses persist and modem partition
<ValPackett[m]> oh right and it actually just leaves them mounted i see
<ValPackett[m]> https://github.com/TheMuppets/proprietary_vendor_motorola/tree/lineage-17.1 doesn't have it either even though it has the same file for the other models..
<barni2000[m]> it not contains all nv bins
<barni2000[m]> an they are not same but can work
<barni2000[m]> hannah works with montana bin
<barni2000[m]> but montana have wcn3660 hannah have wcn3620
<ValPackett[m]> ok yeah found it in vendor! also touchscreen firmwares are there
<barni2000[m]> you will not need ts fw i think
<barni2000[m]> which ts?
<ValPackett[m]> ft8006m/s, NT36525 (think that's the one i have), ILI9881
<barni2000[m]> you can check in twrp dmesg
<ValPackett[m]> yeah yeah novatek is what's succeeding there
<barni2000[m]> copy paste from hannah
<barni2000[m]> maybe regulators are different idk
<barni2000[m]> don't change the i2c address 62 = 1
<barni2000[m]> that is how upstream driver works
<ValPackett[m]> oh oops i don't have it enabled in the config (copied the config from pmaports)
<barni2000[m]> hannah is not in pmos kernel atm
<barni2000[m]> only hannah is using novatek in the repo
<barni2000[m]> btw change your config to set charger and fg builtin
<ValPackett[m]> CONFIG_BATTERY_QCOM_FG was already y..
<ValPackett[m]> am I missing something for cpuidle? wasn't lk2nd supposed to fix PSCI or something?
<barni2000[m]> no
<barni2000[m]> lk2nd is for choosing panel on msm8197
<barni2000[m]> s/msm8197/msm8917/
<barni2000[m]> PSCI is broken
<ValPackett[m]> sad..
<barni2000[m]> it will be fixed
<barni2000[m]> at least 6.13 does not have the ugly stacktraces
<ValPackett[m]> mmmm
<ValPackett[m]> what's the deal with the simple-framebuffer?
<barni2000[m]> if you have panel driver then it is useless
<barni2000[m]> i am only using it for at the beginning when i have starting to port a device
<barni2000[m]> after it should be disabled because it will conflicting with the panel driver
<barni2000[m]> and it can make funny stripes
<ValPackett[m]> well i mean a smooth transition with the early pmos logo would look a lot better than several seconds of nothing
<ValPackett[m]> simple can reference the actual driver in dt so it would disable itself when the actual driver attaches
<barni2000[m]> not worth the mess what you should do it for it
<barni2000[m]> at sdm660 hacks are needed for that
<ValPackett[m]> huh.. but if it works in lk2nd why is it more complicated in linux?
<ValPackett[m]> hmm so with the whole not generating boot.img thing how do we try kernel things without having to reflash the whole rootfs?
<Danct12[m]> <ValPackett[m]> "hmm so with the whole not..." <- you dont have to?
<Danct12[m]> you only need to replace the modules in the rootfs and regenerate a initramfs with the modules used on bootup
<ValPackett[m]> i mean. how do i even access the rootfs if i screw something up and can't boot the kernel?
<Danct12[m]> ValPackett[m]: have some kind of recovery image
<Danct12[m]> * boot some kind of recovery image and access rootfs there
<ValPackett[m]> i've tried loop mounting with offset from an android recovery (twrp) and it just failed with EINVAL.. this would need a pmOS recovery heh
<ValPackett[m]> oh i guess developing on sdcard is an option
<Danct12[m]> for early bringups i usually use a buildroot rootfs embedded inside the initramfs and a kernel compiled with everything required to boot
<Danct12[m]> a buildroot rootfs isn't that large (it's about 20 mb-ish)
<ValPackett[m]> in terms of pmbootstrap experience this is like a weird big downgrade anyway
<ValPackett[m]> no pmbootstrap flasher boot, no pmbootstrap flasher flash_kernel
<ValPackett[m]> in this situation where it's really not early bringup and everything is packaged but you can still break the kernel, those commands are great
<Danct12[m]> ValPackett[m]: yeah.. just the good ol `mkbootimg` and `fastboot flash/boot`
<Danct12[m]> when im comfortable enough i move on to postmarketos :P
<Danct12[m]> but that's my workflow, you may have your own ways of doing it (which i'd love to hear 😄)
<ValPackett[m]> i mean for an mtk platform i use a super long command that does all the boot.img packing and flashing xD but that's a straightforward "forever early ish bringup" situation with just the stock bootloader
<ValPackett[m]> here i'm using the whole lk2nd + mbr-in-gpt-thingy-with-efi-partition setup as packaged in pmOS
<ValPackett[m]> and i managed to screw up with a kernel update and found myself without an easy&fast&no-data-loss way to boot again to change the kernel
<Danct12[m]> at least anything is possible when you still have aboot
<ValPackett[m]> possible yes :) good developer experience.. missing
<Danct12[m]> no one is going to be a good developer :P (me neither)
<Danct12[m]> especially if you're going after a platform where most of unexpected things can happen
<Danct12[m]> lemme dig up something hold up
<Danct12[m]> this is probably the most unexpected thing ever to happen
<barni2000[m]> <ValPackett[m]> "hmm so with the whole not..." <- pmbootstrap sideload linuxpostmarket-os-qcom-msm89x7
<barni2000[m]> s/linuxpostmarket/linux/, s/os/postmarketos/
<barni2000[m]> if you want it to restore you can use an sd card
<barni2000[m]> i am using 1 sdcard for a lot of device
<barni2000[m]> s/device/devices/
<barni2000[m]> i mean 1 sd is enough for 1 soc
<barni2000[m]> * 1 soc family
<barni2000[m]> at the beginning of the porting you can use `cat Image.gz dtb > image+dtb && fastboot boot image+dtb`
<barni2000[m]> so you do not need boot.img
<barni2000[m]> for generic package we cannot generate boot.img because there is n+1 dtbs on the root partition
<barni2000[m]> btw with pmbootstrap chroot or making a temp device package you can still make a boot.img if you want
<barni2000[m]> you can restore your device with debug-shell+chroot
<ValPackett[m]> oh, fastboot boot directly image+dtb is cool
<ValPackett[m]> <barni2000[m]> "for generic package we cannot..." <- yeah, i mean, not saying that boot.img in itself is good, i'm more complaining about no good replacement for just flashing a bootimg
<ValPackett[m]> i.e. lk2nd could, like, allow flashing just the efi partition into the mbr thingy
<ValPackett[m]> ooh nice
<barni2000[m]> fastboot boot is good stuff it can be used in expert way to not flashing the rootfs
<barni2000[m]> you can load kernel intramfs and set cmdline with it
<barni2000[m]> you can update the kernel pmbootstrap chroot -r and boot with it
<barni2000[m]> before generic package you could use boot.img btw just you would need it to install it from lk2nd menu
<ValPackett[m]> anyway wooo with this nora i finally have a pmOS device that is like actually usable as a thingy to hold in one's hands and touch xD
<ValPackett[m]> the wifi for some reason doesn't want to auth to my home network 0.o but connected fine to my daily phone's hotspot
<ValPackett[m]> copy-pasted audio didn't work ..
<ValPackett[m]> i found a proximity sensor but .. no accelerometer in downstream anything??
<barni2000[m]> ValPackett[m]: these devices are using Sensor Core so you will not see the sensors in the downstream dt normally
<barni2000[m]> i see couple sensor in moto dts but not all there
<barni2000[m]> * i see couple of sensors in moto dts but not all there
<barni2000[m]> almsot every device have different audio architecture, hannah have the simplest you will also need UCM config for it btw
<barni2000[m]> everything is working on hannah and everything except speaker works on montana
<ValPackett[m]> barni2000[m]: is that like mediatek's silly meta-driver that tries to load a bunch of actual drivers inside? or is it a Core like an actual other processor to deal with sensors?
<barni2000[m]> q6dsp is dealing with sensors
<barni2000[m]> under msm8996 we can reach the sensors directly with a hack
<ValPackett[m]> right, i think i've seen that part before lmao
<ValPackett[m]> otg role switching works! the mouse cursor doesn't lolol but that's not our problem
<barni2000[m]> vbus-supply?
<ValPackett[m]> i said it works ??
<barni2000[m]> you said the role switching is working
<ValPackett[m]> yeah, so everything usb
<ValPackett[m]> gadget and host both work fine
<barni2000[m]> cool
<ValPackett[m]> firefox webrender on this adreno seems.. glitchy but not nearly as bad as on a (remote desktop only, maybe that made it so much worse) msm8916
<barni2000[m]> it was much worse 1.5-2 months ago
<ValPackett[m]> mm, mesa is actively improving this stuff for this old hw? very nice
<ValPackett[m]> so far battery consumption seems remarkably okay for an old-ass device that isn't even cpuidling
<ValPackett[m]> at least if the percentage is to be believed xD
<barni2000[m]> <ValPackett[m]> "mm, mesa is actively improving..." <- no just vldly was fix that annoying regression
<ValPackett[m]> oh with ucm config audio does work
<ValPackett[m]> that's pretty much everything, i'll submit the patches after going to sleep haha
Luna[m] is now known as semf[m]
funderscore is now known as f_
<Danct12[m]> <ValPackett[m]> "that's pretty much everything, i..." <- good to hear!
<Danct12[m]> barni2000: anything to do with redmi 4x? i've been thinking of getting back to help testing and stuffs
<barni2000[m]> i have couple of change at locally audio+charging
<barni2000[m]> you can help me find out the speaker codec if you want
<barni2000[m]> or why venus is failing
<barni2000[m]> i will do rebase from 6.13-rc7 to 6.13 and upload my local changes
<ValPackett[m]> I'll def look into venus when I have more time again!
<barni2000[m]> i have made the structs and the bindings but tz is failing
<ValPackett[m]> speaker works here but only left channel (with rando copy pasted ucm), mic works but VERY quiet
<barni2000[m]> potter ucm is fine for it
<ValPackett[m]> mm well idk where to fix that but those are 2 issues
<barni2000[m]> motos are using same speaker for earpiece and speaker but codec should be switched
<barni2000[m]> hannah using pm8937 codec for both just line is different
<barni2000[m]> montana have external codec for amplifying for louder sound
<Danct12[m]> the most confusing thing about qcom with this pmic series is that they all look somewhat identical
<Danct12[m]> pm8937/8940/8950 has the same subtype
<barni2000[m]> there are small differences between them
<Danct12[m]> but someone at quicinc said otherwise
<barni2000[m]> but you thinking about pmi8937/pmi8940/pmi8950
<barni2000[m]> but most of the devices are using pmi8950 what is totally compatible with pmi8950
<barni2000[m]> s/pmi8950/pmi8940/
<barni2000[m]> at msm8953 there are msm8953+pmi8940+pm8953 and msm8953+pmi8950+pm8953 devices
<barni2000[m]> here we have msm8917+pm8937 msm8917+pm8937+pmi8950 and same combos with 8940 and 8937
<Danct12[m]> barni2000[m]: and? what's the small differences?
<barni2000[m]> pmi8940 have less mpp
<Danct12[m]> can't find any code on downstream that identify them apart
<barni2000[m]> i can diffing them if you want
<barni2000[m]> pmi8937 does not have labbiibb
<barni2000[m]> s/labbiibb/labbibb/
<barni2000[m]> everything else seems same like pmi8940
<barni2000[m]> difference between pmi8950 and pmi 8940 is the gpios pmi8940 only have mpps but it has not got gpios
<barni2000[m]> so it can be safely used with pmi8950.dtsi
<barni2000[m]> for 8937 labibb should be disabled at upstream because it was upstreamed with implicit status = "okay";
<barni2000[m]> s/8937/pmi8937/, s//`/, s/;/;`/