@pavel FYI I played a bit with the M4 core in the last days and the obstacles have moved a bit :)
I can make it continue running in suspend now and fixing interrupt issues is just a matter of not registering GPIO interrupt handlers in Zephyr's dt. Now it needs to stop consuming more power than when the system isn't suspended at all 馃槀
I'm optimistic that it's possible though. There's plenty of things described in AN13400 that we don't do ATM.
@richardwonka@mastodon.social @janvlug That claim relates to another (though similar) product, not to the Librem 5.
@pavel You can upload and launch code via remoteproc interface (/sys/class/remoteproc/remoteproc0)
There's an example code that blinks a LED in Zephyr: https://source.puri.sm/angus.ainslie/zephyr/-/tree/librem5
AFAIR the current obstacle to overcome is to make it continue running while suspended. It seems to do some weird things to interrupts too.
That's all I can think of on the spot. Of course there's still the camera and GPU stuff, but these would need their own dedicated threads 馃槀 Feel free to hit me up if you want to hack on some of these things, I could likely offer some help and guidance.
iio-sensor-proxy still needs some work in order to be able to use the compass: https://gitlab.freedesktop.org/hadess/iio-sensor-proxy/-/merge_requests/316
There's also a hall sensor which needs to be exposed to the userspace in some appropriate way: https://source.puri.sm/Librem5/linux/-/merge_requests/638
We're still missing a way to control the notification LED while the phone is suspended. There's a lightweight Cortex-M4 core that can keep running in suspend and some proof-of-concepts have been made to utilize it in the past, but nothing has been properly integrated so far.
The audio codec has a quite powerful DSP that can perform frequency linearisation based on speaker's and microphone's impulse response - but it needs to be fed with configuration parameters.
Speaking of audio, since there are two microphones - one on the top and one of the bottom of the phone, they could be utilized for noise cancellation. Right now only the bottom one is used for calls.
The touchscreen supports a low-power mode in which it can recognize some predefined gestures. It could be used to wake up the phone by, for example, double tapping the screen. Right now it just gets its power shut down as soon as the screen is blanked.
The GNSS module has an internal flash that can be used to autonomously store traces, letting the phone suspend and save plenty of power. It can also wake the phone up with geofencing. Right now you need to configure it manually with NMEA commands though, as there's no high-level infra to use at all.
There's also AGNSS to speed fixes up. I wrote a script to generate almanac/ephemeris data, but you need to run it manually and it could be improved with SBAS and GLONASS: https://source.puri.sm/-/snippets/1207
The Librem 5 (and mobile GNU/Linux in general) has matured a lot over the years, but there are still some areas where the software stack is behind the hardware capabilities. Some of them are often talked about, such as camera quality or GPU (GLES3/Vulkan/OpenCL), but there are also lesser known ones in need of some plumbing and middleware infrastructure. Maybe you'll find something interesting to hack on there?
1/N 馃У
Today's GNOME patch has been sponsored by Hendrix Night: https://gitlab.gnome.org/World/vocalis/-/merge_requests/233
#shotonlibrem5 #hendrix #guitar #music #gnome #mobilelinux #linuxmobile #cicho艅ski #kozakiewicz #drapa艂a
@whitequark Special points if it breaks when /bin/sh isn't bash.
@mkljczk where's the downvote button
@emill1984 @mkljczk Ja to generalnie wszystkiego co nie jest ze swojej natury polskie u偶ywam po angielsku. Nie do艣膰, 偶e pomaga w znajomo艣ci j臋zyka, to nie trzeba si臋 g艂owi膰 "co autor mia艂 na my艣li" przy co kreatywniejszych t艂umaczeniach 馃榿
Jedyny z tym problem to to, 偶e teraz jak mam wyg艂osi膰 jak膮艣 techniczn膮 prelekcj臋 to 艂atwiej idzie po angielsku ni偶 po polsku.
@deep A sama "komercyjno艣膰" to nie tylko LLC, ale te偶 i np. infrastruktura Amazonu. Obce firmy i pa艅stwa maj膮 mo偶liwo艣膰 odci臋cia od us艂ugi kogo i kiedy tylko zechc膮. Teoretycznie implementacja serwerowa jest dost臋pna na AGPLu, ale absolutnie bez 偶adnego wsparcia, polegaj膮ca na infrastrukturze "chmurowej", a z wypuszczaniem aktualizacji bywa r贸偶nie.
@deep Ale ten komentarz odnosi艂 si臋 w艂a艣nie do artyku艂u. Problem jest g艂臋bszy i nie tyczy si臋 Signala per se. Gdy urz臋dnik otwarcie przyznaje, 偶e nie chce u偶ywa膰 艣rodka komunikacji, bo obawia si臋, 偶e maj膮 do niego dost臋p pa艅stwowe s艂u偶by, to co艣 tu jest mocno nie tak - zar贸wno w literze prawa, jak i jego kulturze. Szyfrowanie E2E to jedno, ale obok mamy znikaj膮ce wiadomo艣ci i przypadkowe dodawanie os贸b postronnych do czatu... Rzeczy z natury niekompatybilne z zastosowaniami urz臋dowymi.
@deep Sorry, ale wpadasz w jakie艣 dziwne skrajno艣ci. Signal np. od lat jest aktywnie wrogi wobec u偶ytkownik贸w innych system贸w ni偶 Android i iOS, co utrudnia mi kontakt z lud藕mi z niego korzystaj膮cymi tak samo jak ka偶dy inny prywatny silos. Czyli co, je艣li nie b臋d臋 u艣miecha艂 si臋 na d藕wi臋k s艂owa "Signal" to znaczy, 偶e 艣lini臋 si臋 do ameryka艅skich faszyst贸w?
@deep To jest infrastruktura utrzymywana przez prywatn膮 firm臋 i b臋d膮ca w pe艂ni pod jej kontrol膮, w przeciwie艅stwie do np. przytoczonej instalacji Threemy kt贸ra jest utrzymywana i kontrolowana przez pa艅stwo. Nie ma absolutnie nic zdro偶nego w takim pogrupowaniu jak w artykule i "filozofia dzia艂ania" nie ma tu nic do rzeczy.
Hi, I'm dos. Silly FLOSS games, open smartphones, terrible music and more. 50% of @holypangolin; 100% of dosowisko.net. he/him/any. I don't receive DMs.