2023-01-18.log

- S0rin (QUIT: Ping timeout: 268 seconds) (~S0rin@user/s0rin)00:31
+ S0rin (~S0rin@user/s0rin)00:32
- mtm (QUIT: Ping timeout: 252 seconds) (~mtm@c-71-228-84-213.hsd1.fl.comcast.net)01:04
- vagrantc (QUIT: Quit: leaving) (~vagrant@2600:3c01:e000:21:7:77:0:20)01:04
flowyminute: praise the wasd01:20
- Ar|stote|is (QUIT: Quit: https://quassel-irc.org - Chat comfortably. Anywhere.) (~linx@149-210-16-8.mobile.nym.cosmote.net)01:46
+ Ar|stote|is (~linx@149-210-16-8.mobile.nym.cosmote.net)01:46
- ajr (QUIT: Ping timeout: 272 seconds) (~ajr@user/ajr)02:18
+ vagrantc (~vagrant@2600:3c01:e000:21:7:77:0:40)02:21
+ mtm (~mtm@c-71-228-84-213.hsd1.fl.comcast.net)03:09
- bgs (QUIT: Remote host closed the connection) (~bgs@212-85-160-171.dynamic.telemach.net)03:31
- jackhill (QUIT: Ping timeout: 264 seconds) (~jackhill@kalessin.dragonsnail.net)03:37
- nsc (QUIT: Ping timeout: 256 seconds) (~nicolas@134-49-142-46.pool.kielnet.net)03:40
+ nsc (~nicolas@8-49-142-46.pool.kielnet.net)03:41
* nsc -> Guest270003:42
- vagrantc (QUIT: Quit: leaving) (~vagrant@2600:3c01:e000:21:7:77:0:40)06:12
- GNUmoon (QUIT: Remote host closed the connection) (~GNUmoon@gateway/tor-sasl/gnumoon)07:05
+ GNUmoon (~GNUmoon@gateway/tor-sasl/gnumoon)07:05
+ bgs (~bgs@212-85-160-171.dynamic.telemach.net)07:15
* wielaard -> mjw10:03
- XYZ (QUIT: Ping timeout: 260 seconds) (~XYZ@89-24-50-119.nat.epc.tmcz.cz)10:03
+ MajorBiscuit (~MajorBisc@145.94.179.130)10:51
- MajorBiscuit (QUIT: Ping timeout: 256 seconds) (~MajorBisc@145.94.179.130)11:36
minutethere are new imx8mq errata11:49
minutehttps://www.nxp.com/docs/en/errata/IMX8MDQLQ_2N14W.pdf11:49
minuteERR051273 could be the cause of random lockups on resume11:49
+ XYZ (~XYZ@89-24-50-119.nat.epc.tmcz.cz)11:50
- XYZ (QUIT: Read error: Connection reset by peer) (~XYZ@89-24-50-119.nat.epc.tmcz.cz)11:57
+ XYZ (~XYZ@89-24-50-119.nat.epc.tmcz.cz)11:58
- bgs (QUIT: Remote host closed the connection) (~bgs@212-85-160-171.dynamic.telemach.net)12:44
- mtm (QUIT: Ping timeout: 265 seconds) (~mtm@c-71-228-84-213.hsd1.fl.comcast.net)13:04
+ MajorBiscuit (~MajorBisc@145.94.179.130)13:45
+ mtm (~mtm@c-71-228-84-213.hsd1.fl.comcast.net)15:09
- mtm (QUIT: Read error: Connection reset by peer) (~mtm@c-71-228-84-213.hsd1.fl.comcast.net)16:13
+ mtm (~mtm@c-71-228-84-213.hsd1.fl.comcast.net)16:16
- MajorBiscuit (QUIT: Quit: WeeChat 3.6) (~MajorBisc@145.94.179.130)16:50
+ vagrantc (~vagrant@2600:3c01:e000:21:7:77:0:20)17:54
- bkeys (QUIT: Read error: Connection reset by peer) (~Thunderbi@static-198-54-135-69.cust.tzulo.com)18:12
sigridseems like the trackball "falls off" on its own sometimes, for unknown to me reason. that's the newest one18:13
sigridjust idling for a long time was enough once18:13
cinap_lenreksigrid: i had issues with the cable18:14
cinap_lenreksigrid: i crimped my own cable and that fixed the issue18:14
sigridI'd imagine a cable wouldn't be moving on its own inside the laptop :)18:15
cinap_lenreklike the jack was kind of loose18:15
cinap_lenrekif you widdgled the cable it would disconnect from usb18:15
sigridI see18:15
sigridalso interesting: if I boot off a usb flash drive, then reboot, u-boot does not detect the flash drive18:16
sigridI have to reset the reform18:16
cinap_lenrekthats odd18:17
cinap_lenrekwas we do reset the usb hub18:17
sigridyeah18:17
cinap_lenrekwell18:17
cinap_lenrekthe internal hub18:17
cinap_lenrekbut yeah18:17
cinap_lenrekwiggle the connector sigrid on the trackball18:18
cinap_lenreki never had issues with the keyboard tho18:18
cinap_lenrekonly the trackball connector18:18
sigridI'll try that next time I have that issue18:18
cinap_lenreki think maybe the jst connector is like slightly the wrong size?18:18
sigridre the usb flash: if I do "usb stop; usb start" (a rescan) it appears18:20
sigridperhaps some timings are wrong :/18:20
cinap_lenrekyeah18:20
vagrantcdoes the trackball need to be available in u-boot?18:21
cinap_lenrekno18:21
cinap_lenrekits only usbkdb.c18:21
sigridhmmm. are external ports on the same hub? does that question even make sense18:22
cinap_lenrektheres some usb info command18:23
cinap_lenrekprinting the tree18:23
cinap_lenrekor use usbtree in 9front18:23
cinap_lenreki dont remember it18:23
sigridyeah, it's a different hub18:24
cinap_lenrekfor xhci, the port reset should be handled by the xhci controller18:37
cinap_lenrek(usb3)18:37
cinap_lenrekotherwise, you need to see the port status change to present and then issue a port reset18:37
cinap_lenrekall with some timing delays from the spec18:37
cinap_lenrekand after reset it should go to enabled state18:37
- mjw (QUIT: Quit: Leaving) (~mjw_@2001:1c06:2488:1400:4fd:39a7:74ac:7bae)18:38
+ mjw (~mjw_@2001:1c06:2488:1400:4fd:39a7:74ac:7bae)18:39
minutesigrid: so, there is a root port/hub with 2 ports in imx8mq. one of these goes directly to the outside. the other goes to an internal TUSB8041 hub and is split into 4 ports, 2 of them outside, two inside.18:46
minutealso kind of visible here: https://mntre.com/reform2-handbook/system.html18:47
+ ajr (~ajr@user/ajr)18:47
+ bkeys (~Thunderbi@static-198-54-135-69.cust.tzulo.com)18:51
minuteweird line in lpddr4_init.c of reform-boundary-uboot:19:01
minute#ifdef DFI_BUG_WR19:01
minutereg32_write(DDRC_DFIPHYMSTR(0), 0x00000001);19:01
minute#endif19:01
minuteso looks like this erratum doesn't apply to us anyway :|19:05
cinap_lenrekminute: what errata is this? the write basically clears the whole register except the ddr3 bit19:08
cinap_lenreksorry19:10
cinap_lenrekwrong device19:10
+ bgs (~bgs@212-85-160-171.dynamic.telemach.net)19:21
cinap_lenrekdoesnt appear to be documented register19:31
cinap_lenrekyeah19:32
minutecinap_lenrek: ERR05127319:32
minutecinap_lenrek: newly released, https://www.nxp.com/docs/en/errata/IMX8MDQLQ_2N14W.pdf19:32
cinap_lenrekthe document ends at +0x1C0 DM/DBI Control Register, and continues at +0x20019:32
minutehuh.19:32
+ bkeys1 (~Thunderbi@157.201.98.1)19:36
eery[m]Can the rescue image be updated by just copying over the image from the build artifacts?20:36
joscheery[m]: that will remove whatever was on the sd-card before but after that, yes, then you will have an sd-card with an updated rescue image20:40
eery[m]What about emmc? Just making sure there isn't an extra step I'm missing before I have to take everything apart again haha20:43
joscheery[m]: there is a script to update your emmc with the latest rescue image20:48
joschreform-flash-rescue20:48
minutei just merged https://source.mnt.re/reform/reform-boundary-uboot/-/merge_requests/1220:52
minuteand now i will test it :D20:52
minutejosch: u-boot nowadays doesn't need different builds for emmc or sd card, or?20:54
eery[m]Yeah, I've been following the source, just paranoid about soft-bricking my reform20:54
eery[m]Running fedora on nvme so I don't have the tools on root20:54
eery[m]Should probably look into packaging them in a copr repo or something20:54
joschminute: yes, the u-boot binary on both can be the same20:57
minutejosch: thanks!20:59
joschminute: thanks for merging -- if it cannot read emmc, try this patch by sigrid on top of master: https://mister-muffin.de/p/LOou.diff21:01
joschi've been running that u-boot with this patch on top since last week21:02
sigriddon't need that one anymore, josch21:02
joschoh what changed?21:02
sigridhttps://source.mnt.re/reform/reform-boundary-uboot/-/merge_requests/12/diffs?commit_id=278763f01b90e2d81508544d68755e3284030fff21:03
sigridthis fixes it21:03
joschuuuh sweet!21:04
minuteit worked immediately!21:06
minutethe new flash.bin that is, on emmc.21:06
minutethis is pretty great21:07
cinap_lenrekyep, figured it out since last weekend21:07
minutebluerise: how do we get openbsd going? now there's a framebuffer!21:07
cinap_lenrekstudying the boot sequence on the imx8mq21:10
cinap_lenrekits all pretty silly21:10
cinap_lenrekso actually the uboot spl is the first code21:10
cinap_lenrekand then for some reason that launches ATF and THAT launches the 2nd stage uboot?21:11
cinap_lenrekwhat *IS* atf actually doing? its not initializing the ddr21:12
cinap_lenrekits hust tere for PSCI handler?21:12
minuteyeah, it doesn't do much. i guess it also handles a little bit of wakeup from sleep21:14
minuteif you also put the ddr to sleep, it can recalibrate it, but i'm not sure if that actually works21:14
sigridminute: openbsd probably just needs simple-framebuffer to be set in the dtb21:14
minutesigrid: cool, i wonder if the other imx8m drivers are upstreamed though21:15
cinap_lenrekthis whole EL3 stuff makes me nervous21:16
minutecinap_lenrek: what's that21:16
cinap_lenrekit is exactly the same SMM shit that intel gets critisized for21:16
minuteah, at-f running in some privileged zone?21:17
cinap_lenrekyeah21:17
minutetf-a21:17
minutea-tf21:17
minuteyou know21:17
cinap_lenrekapparently they also stopped maintaining it21:17
minutecinap_lenrek: well, at least it is open source and also much smaller than minix21:17
cinap_lenrekthe readme on the atf website sais they dropped imx8mq support because the ocram is too small21:17
- ajr (QUIT: Ping timeout: 265 seconds) (~ajr@user/ajr)21:17
minutecinap_lenrek: also, much less features21:17
minuteand it's turned off if computer is off21:17
minutecinap_lenrek: haha, sounds good actually21:18
minuteIMHO atf is pretty useless and shouldn't exist21:18
minutei'm sure it was only made for DRM purposes21:18
cinap_lenreki think it was for power management21:18
minuteso you can run netflix video decryption in secure world21:19
cinap_lenreklike to handle the chip specific details of turning off cores and handle the memory coherency for this stuff21:19
minutewell, i think the OS should do that stuff21:19
cinap_lenrekbut then it is all pretty scary21:19
cinap_lenrekgiven that atf doesnt have no knowledge of the full platform really21:19
cinap_lenrekat leeast in our case21:19
cinap_lenrekso its kind of a inversion21:19
minuteyeah21:19
minutehttps://github.com/freebsd/freebsd-src/tree/main/sys/arm64/freescale/imx21:21
minutefunny, it looks like freebsd just imports all the linux dtses https://github.com/freebsd/freebsd-src/blob/b97ee269eae3cbaf35c18f51a459aea581c2a7dc/sys/contrib/device-tree/src/arm64/freescale/imx8mq-mnt-reform2.dts21:24
cinap_lenrekminute → cinap_lenrek: well, at least it is open source and also much smaller than minix21:31
cinap_lenrekthat is just for the management engine imho21:31
cinap_lenreki mean, if all these hidden cores would actually DO something usefull for you21:32
cinap_lenrekbut no21:32
cinap_lenrekyou still have todo everything yourself21:32
minuteoh, it is booting opensbd21:33
minuteopenbsd21:33
cinap_lenrekhahaha21:33
cinap_lenreknaice21:33
minutethe keyboard flashes once21:33
minutei think it really just needs simple-framebuffer added to the dtb like sigrid said21:33
minutewhat i did was: write miniroot72.img to an sd card from here: https://ftp.uni-hannover.de/openbsd/snapshots/arm64/21:34
cinap_lenrekwe put the framebuffer address in the gd->fb_base21:34
minutethen i did: load mmc 0:1 ${fdt_addr_r} dtb21:34
cinap_lenreki saw for some image targets that it uses this information to pass it on21:34
minute(loaded reform dtb from emmc)21:34
minutethen: load mmc 0:1 ${kernel_addr_r} efi/boot/bootaa64.efi21:34
minuteand: bootefi ${kernel_addr_r} ${fdt_addr_r}21:34
- Ar|stote|is (QUIT: Quit: https://quassel-irc.org - Chat comfortably. Anywhere.) (~linx@149-210-16-8.mobile.nym.cosmote.net)21:35
+ Ar|stote|is (~linx@149-210-16-8.mobile.nym.cosmote.net)21:37
minutescreenshots: https://mastodon.social/@mntmn/10971212842878044321:39
cinap_lenrekwow21:41
cinap_lenreknice21:41
cinap_lenrekbut the kernel doesnt print, no? :(21:41
- mjw (QUIT: Killed (NickServ (GHOST command used by markw!~wielaard@gnu.wildebeest.org))) (~mjw_@2001:1c06:2488:1400:4fd:39a7:74ac:7bae)21:42
+ wielaard (~mjw_@2001:1c06:2488:1400:4fd:39a7:74ac:7bae)21:43
minutecinap_lenrek: i think it maybe prints to serial21:43
cinap_lenrekits strange tho21:43
minutecinap_lenrek: also i didn't do any framebuffer passing yet21:43
cinap_lenrekwouldnt uefi be able to pass the framebuffer?21:43
minutehmm, good question!21:44
cinap_lenreki mean uefi itself knows it21:44
minutemaybe it doesn't touch the dtb21:44
cinap_lenrekotherwise it wouldnt print the load message21:44
minutewell, i guess it prints via some kind of stdout mechanism?21:44
cinap_lenrekyeah, but uefi has a protocol21:44
minutealso it prints the addresses of the usdhc controllers, so it knows something about the hardware :D21:44
cinap_lenrekusually, you efi loader will get it from there and then pass it to the kernel in whatever convention the kernel needs21:45
minuteyeah, unfortunately i know almost nothing about uefi21:45
sigridyou can try adding that simple framebuffer to the dtb like linux uses21:45
sigridmaybe that is enough21:45
bluerisecinap_lenrek: no reason to criticise ATF, it's open source, there are no secrets, isn't that nice?21:45
minutesigrid: yeah, i'm just a bit too tired now21:45
bluerisethe biggest secret is t he ddr firmware21:45
blueriseand hdmi21:45
minutebtw, imx8mp doesn't have no more hdmi firmware21:45
minute(afaik)21:45
blueriseminute: try entering "set tty fb0" when it says boot>21:46
blueriseit might default to the serial line21:46
minutebluerise: ah, i wasn't aware that i can type something there21:46
blueriseso, "set tty fb0", then "boot"21:46
bluerisethat's the bootloader :)21:46
minutegonna try it21:47
blueriseif that doesn't work, it's possible u-boot doesn't create the simple-framebuffer node21:47
- bkeys1 (QUIT: Quit: With every step we take, danger will follow closely) (~Thunderbi@157.201.98.1)21:47
cinap_lenrekbluerise: i'm a master in complaining, indeed :)21:47
blueriseand if boundary devices had a recent u-boot, all that manual load mmc stuff wouldn't be necessary thanks to distroboot21:47
minutebluerise: distroboot is possible i think, i just wanted to do it manually21:48
minutebecause i'm loading the dtb from another disk21:48
cinap_lenrekbluerise: i just wish it wouldnt need to be resident21:48
cinap_lenrekbluerise: that opens quite some attack surface :(21:48
sigridrpi uboot seems to call lcd_dt_simplefb_add_node21:49
cinap_lenrekwe had this guy (aiju) that made his own board based on a zynq21:49
blueriseI believe there are quite some more attack surfaces than that21:49
cinap_lenrekand there was no firmware at all21:49
cinap_lenrekit could all be brought up from scratch, right from the first instruction21:49
minuteoh, it actually works automatically21:49
minuteBSD bootloader is loaded automatically if the sd card is in the slot21:49
bluerisethat's nice21:50
minuteand yeah, i can type commands in the boot> prompt21:50
minute> switching console to fb021:50
cinap_lenreki wish arm would have kept it this way21:50
cinap_lenrekbut yeah. maybe i'm wrong21:50
bluerisei wish there was no risc-v21:50
bluerisethey are re-doing all the same mistakes21:51
blueriseand it's not really open either21:51
minutesigrid: neat21:51
blueriseDamn, I'm now becoming the old-grump-internet-guy :)21:51
minuteok unfortunately it hangs after booting and i guess initializing usb21:51
cinap_lenrekbluerise: it depends on WHO's doing the same mistakes :)21:51
minute(after the booting sd0a:/bsd... line)21:51
bluerisehmhmhm21:51
cinap_lenrekbluerise: i think it is not surprising. it is the same peoble that do these arm socs before21:51
bluerisenah, one issue is that the instruction set is design by committee21:52
minuteprobably have to do serial debugging to see what's going on, eh21:52
bluerisecompressed instructions, gets you back all those x86 gadgets21:52
blueriseminute: the lcd diff is already in your repo, right?21:52
cinap_lenrekit doesnt mean there could not be board with eigther good and well defined interfaces and clear responsibilities of which component does what bring up21:52
minutebluerise: it's merged yep21:52
cinap_lenrekthat could as well also exist for arm21:52
minutebluerise: you just need to run build.sh in https://source.mnt.re/reform/reform-boundary-uboot21:53
minutebluerise: or use http://dump.mntmn.com/flash.bin21:53
minutedd if=flash.bin of=/dev/sda bs=1024 seek=3321:53
minute;)21:53
minuteboot>'s ls even works, nice21:54
cinap_lenrekbluerise → nah, one issue is that the instruction set is design by committee21:55
cinap_lenrekit is like that probably everywhere21:55
cinap_lenrekeven on arm21:55
minutecinap_lenrek: btw can i see the framebuffer address in u-boot somehow? i mean in the console21:55
cinap_lenrekfor sure, that gic interrupt controller must have come out of 5 man years of comittee meetings given how overengineered it is21:56
cinap_lenrekminute: yes21:56
cinap_lenrekminute: bdinfo21:56
blueriseminute: which target is it?21:56
cinap_lenrekit should have a fb_base field21:57
bluerisenitrogen8m_som/ that one?21:57
sigridcp mntreform-config .config21:57
cinap_lenrekit should be near the top of 4GB21:57
bluerisesigrid: :)21:57
minutebluerise: ah yeah, what sigrid said. sorry!21:57
cinap_lenrekif someone cares, i'm sure we could also make it fixed21:57
cinap_lenrektheres some memory reservation magic in common21:58
sigridit seems like lcd_dt_simplefb_add_node is enough21:58
sigridand it does not need to be a fixed address21:58
minutecinap_lenrek: ah yeah, FB base21:58
cinap_lenreksigrid: fixed would have to advantage to keep it like RIGHT at the end of the first bank 2-4GB21:58
minute0xfe54000021:58
cinap_lenrekso you dont have like 2gb-fb fbend...4gb21:59
cinap_lenrekit just kind of sucks having the fb like in the middle of your dram map :D21:59
minutehaha21:59
sigridwell...22:00
sigridit's a... uh... BUFFER22:00
minuteyou can paint using mw.l 0xfe540000 0xffffffff 10022:00
sigridsorry this is a very stupid joke :(22:00
minutesigrid: lol22:00
cinap_lenrekminute: make some pascal triangles using uboot memory commands!22:01
minutemmmm22:01
minutei'm tempted to port interim22:01
minuteit is kind of crappy though22:01
cinap_lenrekin the meanwhile, we can port doom to the M4 and have it run eternally in the background22:01
minuteoh yeah! the M422:02
minutethe forgotten 5th core22:02
minuteon the imx8mp, it's a M7 IIRC22:02
minuteat 800mhz or something?22:02
cinap_lenreksee? they have all these cores22:03
cinap_lenrekbut none is like used to do some gritty init work22:03
cinap_lenreki dont get it22:03
minutethere's also a DSP22:03
sigridon mp?22:03
sigrid:(22:03
minuteyeah, > Cadence HIFI4 DSP22:04
bluerisesigrid: I tend to agree that it might be enough. one has to take care though that this buffer is carved out of the memory map, otherwise the OS might make use of it22:04
minute> This core runs either a custom firmware or the open source SOF firmware22:04
cinap_lenrekbluerise: its not a problem22:05
bluerisesigrid: problem is that the lcd_ stuff is not used on imx8, so I'm getting lots of undefined reference stuff22:05
blueriseneed to solve that differently.22:05
cinap_lenrekeven if you use it, you just get to SEE the contents of your memory!22:05
cinap_lenrekthe lcdif just reads from it22:05
sigrid# CONFIG_LCD is not set22:05
sigrid# CONFIG_VIDEO_SIMPLE is not set22:05
sigridperhaps this ^22:05
minutebluerise: it's not building?22:06
bluerisecinap_lenrek: yes yes, and then my X11 writes into memory that's also used for user processes, eehhh22:06
minutebluerise: did you make clean? maybe you have an older build there?22:06
minutebluerise: (i had to do make clean initially i think)22:06
cinap_lenrekbluerise: well, at this point the os should be aware of the framebuffer address22:06
cinap_lenrekoh, wait22:06
cinap_lenrekyou'r right22:06
cinap_lenrekthey might expect the fb and memory map not be overlapping :D22:06
minutethere's reserved-memory {} in dtb also22:08
cinap_lenreki swear, we have tons of defensive code in the x86 port for this22:09
cinap_lenrekwe only half trust the memory map22:09
cinap_lenrekif a pci device uses that range -> gets excluded from dram map22:10
minutei'm chatting with a Risc OS dev so we will be getting Risc OS22:10
cinap_lenrekjust in case22:10
minutethere was a almost-done port that just missed display setup22:10
cinap_lenrekpc bios/uefi is so broken22:10
cinap_lenrekminute: excellent!22:11
cinap_lenrekok, lemme see this dtb magic22:13
cinap_lenrekret = uclass_first_device_err(UCLASS_VIDEO, &dev);22:15
cinap_lenrekokay22:15
cinap_lenreki think this means i have to make our lcdif.c register the video uclass thing22:15
cinap_lenreklet me look into this22:15
cinap_lenrekor alternatively that lcd interface22:16
cinap_lenrekhmmm22:16
cinap_lenrekxsize = lcd_get_pixel_width();22:16
cinap_lenrekysize = lcd_get_pixel_height();22:16
cinap_lenrekbpix = LCD_BPP;22:16
cinap_lenrekfb_base = gd->fb_base;22:16
minutelgtm?22:16
cinap_lenrekokay, so lcd_get_pixel_width() comes from common/lcd.c22:17
cinap_lenrekokay22:18
cinap_lenrekand for this, we need to fill and export struct vidinfo panel_info;22:18
cinap_lenrekwhich is actually quite code to what i parse from edid22:19
blueriseI'm gonna try this http://ix.io/4lCb22:20
cinap_lenrekah, wait22:20
cinap_lenrekits even easier22:20
blueriseno memory carving though, but that should give some output at least22:20
cinap_lenrekthat only applies for CONFIG_DM_VIDEO22:20
cinap_lenrekif we dont have that, the struct is trivial22:20
cinap_lenrektypedef struct vidinfo {22:21
cinap_lenrekushort vl_col;/* Number of columns (i.e. 160) */22:21
cinap_lenrekushort vl_row;/* Number of rows (i.e. 100) */22:21
cinap_lenrekushort vl_rot;/* Rotation of Display (0, 1, 2, 3) */22:21
cinap_lenreku_char vl_bpix;/* Bits per pixel, 0 = 1 */22:21
cinap_lenrekushort *cmap;/* Pointer to the colormap */22:21
cinap_lenrekvoid *priv;/* Pointer to driver-specific data */22:21
cinap_lenrek} vidinfo_t;22:21
sigridwho would have though getting pixels out is this much work, eh?22:23
sigrid*thought22:23
cinap_lenrekuboot is insane22:23
cinap_lenrekthey have like 5 different driver apis for everything22:23
cinap_lenrekand EVERY single driver does some #ifdef maze and supports some kind of subset22:23
blueriseit's getting better22:24
blueriseit's just that the boundary fork is way too old22:24
blueriseVERSION = 201822:24
bluerisePATCHLEVEL = 0722:24
minutebluerise: what's the concrete problem? do you need to change something on u-boot?22:24
cinap_lenrekits only getting better if the number of uboot forks in the universe decrease over time22:24
minuteah, sorry, misread the log22:25
minutebluerise: nevermind!22:25
blueriseminute: that I had to get up from the couch to retrieve the reform222:25
bluerisebut I managed that22:25
minutebluerise: haha yes that is indeed a problem22:25
minuteoh great :D22:25
cinap_lenrekbluerise: haha :D22:25
minutedoes it still work? :D22:25
cinap_lenrekokay, i need another beer22:25
sigrid"any challenges this sprint?" "getting off the couch"22:26
minutei'll drive home and will be online there22:26
bluerisemy wine glass is empty22:26
minutei'm roughly 2.5 years sober or something!!22:26
bluerisecongrats :)22:26
minutethx!22:26
cinap_lenrekpffffff22:27
cinap_lenreki just accept the self descrutive nature of working with ... embedded software :D22:27
sigridat my first job all my embedded dev colleagues were heavy vodka drinkers22:28
sigridmaybe that was not a coincidence22:28
cinap_lenreklets face it22:29
bluerisehow can I share pictures with this chat... hm...22:29
cinap_lenrekanyone externally that sees what the fuck we'r wasting our lifes with... will immediately understand that this must be some kind of self destructive fetish or something22:29
sigridbluerise: via mastodon22:29
minutebluerise: or https://mister-muffin.de/paste22:30
klardotsh_minute: aayyeee congrats! love that it's been long enough now that it's just "roughly ... or something" amount of time and not a number of days :)22:30
minuteklardotsh_: haha yeah i kinda stopped counting22:30
sigridholy shit it does work22:31
sigrida bit... wrong but works :D22:31
blueriseI'm seeing double, and it's not the wine22:31
sigriddoes it gets stuck at sdhc?22:31
minutewhat are you looking at22:32
minutei didn't get the link!22:32
blueriseminute: check mastodon22:32
minuteah22:32
blueriseminute: can you send me the current .dtb that linux uses?22:32
minuteomg22:32
sigridcinap_lenrek: https://nein.ftrv.se/fileserver/0185ZZATRBAS3GYQTRS2XAASX9/attachment/original/01E28VQP9P0N5P54TYPEAMBCGT.jpg22:32
minutethat looks like a pitch problem22:32
bluerisemight have supplied the wrong mode22:33
minutebluerise: looks like 16 bit 22:33
minutebluerise: or 960 pixels22:33
bluerisex8b8g8r8 might not be it22:34
minutebluerise: but also, your lines are half the length they should be (in bytes)22:34
minutebluerise: so each odd line is in the right half of the screen22:34
minutebluerise: and that's also why the screen is not filled22:35
bluerise+       return fdt_setup_simplefb_node(blob, off, gd->fb_base, imx_lcdif.winSizeX,22:36
bluerise+           imx_lcdif.winSizeY, imx_lcdif.winSizeX * (1 << imx_lcdif.gdfBytesPP) / 8,22:36
bluerise+           "x8b8g8r8");22:36
blueriseint fdt_setup_simplefb_node(void *fdt, int node, u64 base_address, u32 width,22:36
bluerise                            u32 height, u32 stride, const char *format)22:36
bluerise * @stride: bytes per line22:36
blueriseline -> width * bytes per pixel?22:36
sigridstride = (imx_lcdif.winSizeX * imx_lcdif.gdfBytesPP)22:36
sigridno?22:37
blueriseyep22:37
sigridso it's 3840 instead of 7680 rn22:38
sigridright in the middle :)22:38
bluerisealso it might be x8r8g8b822:38
minutebluerise: this is a dtb from october, shouldn't have changed since then http://dump.mntmn.com/imx8mq-mnt-reform2.dtb22:38
cinap_lenrekok22:39
cinap_lenrekcompiling22:39
bluerisesigrid: did you see the second reply I just sent?22:40
sigridyep22:41
sigridall good now :)22:41
blueriseminute: with the dtb it nearly comes up, but it hangs somewhere, maybe different pcie settings22:42
blueriselet me check what linux has right now22:42
bluerise            linux,pci-domain = <0x00000001>;22:43
bluerisefinally that shit was upstreamed22:43
bluerisebut the ext osc maybe not22:44
bluerisewill disable pcie for no22:44
bluerisew22:44
- bgs (QUIT: Remote host closed the connection) (~bgs@212-85-160-171.dynamic.telemach.net)22:45
blueriseyep, boots up with mainline linux dts (minus pcie)22:47
bluerisenow I can go back to my mainline-u-boot fork and add the lcdif stuff :P22:47
sigridnice22:47
bluerisebecause I had NVMe support in there as well and then I could just boot whatever is on the NVMe right now...22:48
sigrid2018 version also has nvme support though, right?22:48
minutebluerise: fantastic! maybe just disable pcie0 / the first one?22:48
sigridjust not the pcie stuff I guess22:48
blueriseMy OpenBSD installation is on PCIe right now :P22:49
minutebluerise: the hang happens if pcie0 doesn't get a refclk. but it's only used for wifi card (mpcie)22:49
blueriseand using the ramdisk is boring22:49
minutenvme is on the second pcie22:49
minuteand uses motherboard refclk22:49
blueriseext_osc that is?22:49
minuteyeah22:50
minuteext_osc is not a mainline thing 22:50
blueriseI wonder if they finally managed to encode that in linux as well22:50
blueriseugh, sitll not?22:50
minuteyeah they did i think22:50
minutebut differently22:50
minuteext_osc is something from vendor kernel that i ported22:50
qbitbluerise: woo!22:52
blueriseqbit: hah, you're here :D22:53
qbit:D22:53
sigridcinap_lenrek: cable wiggling did not help with trackball issue23:01
sigridit looks like a firmware bug to me, tbh23:01
sigridrst on the trackball made it come back23:02
cinap_lenrekalmost done23:11
cinap_lenrekCONFIG_LCD also allows you to fix the FB address23:11
minutesigrid: sensor cable?23:17
- XYZ (QUIT: Read error: Connection reset by peer) (~XYZ@89-24-50-119.nat.epc.tmcz.cz)23:26
cinap_lenrekhere we go23:34
minutebluerise: ok so do i just need to add your few lines to add fdt_setup_simplefb etc?23:34
- robin (QUIT: Remote host closed the connection) (~robin@user/terpri)23:34
minutebluerise: or do you have a patch?23:34
bluerisehttp://ix.io/4lCn23:36
blueriserunning with this diff, but maybe it doesn't carve out the memory23:36
sigridminute: it happens when i am not touching anything at all23:36
cinap_lenrekhttp://okturing.com/src/14852/body23:37
minutebluerise: thx! btw can i share your pic?23:38
minutecinap_lenrek: thx23:38
cinap_lenrekalso puts the framebuffer at -8MB & 4G-123:39
cinap_lenrekit is a bit hacky tho23:39
cinap_lenreki think CONFIG_LCD was ment to have a static resolution23:40
cinap_lenrekmaybe going the CONFIG_DM_VIDEO is a better approach23:40
blueriseminute: usually I make better pics for that, but, ok :p23:40
cinap_lenrekbluerise: checking23:41
minutebluerise: thanks!23:42
cinap_lenrekwhat i dont like is that this stuff has a direct dependency on the graphics driver23:43
cinap_lenrekthats kind of insane23:43
cinap_lenreklike why the fuck does the graphics driver needs to care about desitributing the info23:44
cinap_lenrekit ALREADY does that23:44
cinap_lenrekreturning that graphics_device structure pointer23:44
cinap_lenreklike wtf where they *THINKING*23:44
cinap_lenrekdont they teach proper software engineering anymore at university?23:45
cinap_lenrekand separation of concerns23:45
cinap_lenrekyou need ONE interface23:45
minuteACTION chuckles23:45
cinap_lenrektelling the next payload where the fb is is clearly something INDEPENDENT of the graphics driver23:45
cinap_lenrekbluerise: man23:47
minuterebuilding uboot on my reform incl your patch23:47
cinap_lenrekbluerise: maybe we can hack this into the caller of video_hw_init()23:47
cinap_lenreklike the console code?23:47
cinap_lenrekat that point, it gets the graphcis_device struct and you can prepare the devicetree blob23:48
cinap_lenrekminute: nah, i'm not yet convinced23:48
cinap_lenrekmaybe just duplicating the devicetree code as bluerise did is better23:49
cinap_lenreki just dont like it being conflated with the graphics driver :(23:49
cinap_lenrekwe try to find the solution that requires the LEAST amount of dependencies to some crappy legacy interface23:50
cinap_lenrekthis is what my patch is doing and i dont like it23:50
minutecinap_lenrek: using your patch i don't get display no more in uboot23:52
minuteluckily linux still boots :D23:52
cinap_lenrekyou need the config23:53
minutei used it23:53
cinap_lenrekhmmm23:53
minuteor whatcha mean23:53
cinap_lenrekdunno23:53
cinap_lenrekworks for me :(23:53
minute:(23:53
minutei will revert and see if it works at all23:53
cinap_lenrekit assumes we have at least 2GB of ram23:53
minutei have 423:53
cinap_lenrekyeah23:53
cinap_lenreksame here23:53
cinap_lenrekdont worry, i already dont like it anyway23:54
minutehaha ok23:54
cinap_lenrekCONFIG_LCD can fuck itself23:55
minutei'm silly23:55
minutei flashed the wrong flash.bin23:55
cinap_lenrekalso we probably should not use legacy stuff23:55
cinap_lenrekas blueraise said, he'r making our lifes worse23:55
cinap_lenrekthe goal is to upstream this and use stock uboot23:55
minutesure, i just wanted to see openbsd booting 2 nite23:56
cinap_lenrekokay23:56
minuteso i can sleep happily23:56
cinap_lenreklets DO IT23:56
minutelol23:56
minutei am reapplying your patch23:56
minuteit was just operator error on my part23:57
cinap_lenrekdo you have serial?23:57
cinap_lenrekdid openbsd print something?23:57
cinap_lenreki mean, bluerise's patch probably does the same23:57
cinap_lenrekbut not depending on the CONFIG_LCD stuff23:57
cinap_lenrekhave you tired this?23:58
minutemy display is back on23:59
cinap_lenrek\o/23:59
minutein uboot. but openbsd puts garbage on screen (totally wrong pitch?)23:59

Generated by irclog2html.py 2.17.3 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!