From 3deae121f2f2ac4e895fffb8f3e33135cd828c75 Mon Sep 17 00:00:00 2001 From: Adeeb Shihadeh Date: Mon, 19 Oct 2026 09:12:04 -0700 Subject: [PATCH] Replace init_mss with tiny Python script (#655) --- userspace/root/usr/comma/init_mss.py | 10 ++++++++++ .../usr/lib/systemd/system/init_sys_mss.service | 2 +- userspace/root/usr/sbin/init_mss | Bin 6024 -> 0 bytes 3 files changed, 11 insertions(+), 1 deletion(-) create mode 100644 userspace/root/usr/comma/init_mss.py delete mode 100755 userspace/root/usr/sbin/init_mss diff --git a/userspace/root/usr/comma/init_mss.py b/userspace/root/usr/comma/init_mss.py new file mode 100644 index 0000000..34c0d42 --- /dev/null +++ b/userspace/root/usr/comma/init_mss.py @@ -0,0 +1,10 @@ +#!/usr/bin/python3 +import signal + +# The on-chip Wi-Fi firmware runs in the SDM845 modem subsystem. +# Opening this device boots it and holds a reference; the kernel shuts it +# down when the last reference is released. Keep it open for this service's +# lifetime so Wi-Fi stays available. +# https://github.com/commaai/agnos-kernel-sdm845/blob/8b0e4d289b246a5cc1b0484b25a3f9f8d4772544/drivers/soc/qcom/subsystem_restart.c#L1215-L1251 +with open("/dev/subsys_modem", "rb"): + signal.pause() diff --git a/userspace/root/usr/lib/systemd/system/init_sys_mss.service b/userspace/root/usr/lib/systemd/system/init_sys_mss.service index 65ccb4e..bb20084 100644 --- a/userspace/root/usr/lib/systemd/system/init_sys_mss.service +++ b/userspace/root/usr/lib/systemd/system/init_sys_mss.service @@ -2,7 +2,7 @@ Description=Boot the modem subsystem, which runs the Wi-Fi firmware [Service] -ExecStart=/usr/sbin/init_mss +ExecStart=/usr/bin/python3 /usr/comma/init_mss.py Restart=on-failure [Install] diff --git a/userspace/root/usr/sbin/init_mss b/userspace/root/usr/sbin/init_mss deleted file mode 100755 index 6ca18c01cbd3d93e6d7cb565d12a578adfb6eaea..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6024 zcmcIoZ)_CD6`#9vh|`qf1QH04dT~;WgX{eyz2kegVvO)D4j2en9bXso6EwY^P0Av}p{S0{Iy$p+#5t5|-W-1TQb}b^6GaL6xV-2xA zG~10R@(lNXR>r|RQi->Td7GFga*PKiQszfv64c+PEfwt8 z1RlkhX?{aI4v}&{t5eC?%9`p_VreRw?(SJ?n%Q{A%9@~^2`;116qEWO|L}&d;i?op zyU#f-*FKLivcLWElV5y(i~mQToPHtp#A{#OWxxI0Wpbt0hbqOP`F&^OeYY58Lq`d_ z6Ll^s#kmW0J}Q+3sP~{QBtZf|*b-ygodY4Nf1-+%V0f9&tw zdRxOt!OU96|jFhtSh<7iiD zx-=g`gXZcjYXH#vy(I=Tky!jBa;PA zT}17inaxEz%_Mmy%$(^WDr%7eEN0sRU2jLDY_ZY_r_B;V0>|xc>NTmNk(TvQ49jXy z+BqxRvc4geNn0&uEM>vBy)%>MK~PL*Ohg3}vweJ9w265QDbuzs+YL8uu<*J_eM5A4 za2YK!E`B9H+G6PEZZ&>npqYR4Ox&`+@I2C#U)AvAmwh6@5B37R_$ZB>7X&}V_|Z8o zQE+)LMm@N^7Z*IZyzk}w{z)9shuGhT@lZaNa#F+P9VFWs4cGV2vl_0azA+8wtSvw(Qw&I$=s*m`Z)J!IHw3FT3*BXkvRAP4d*54 z;0HBa_BJvc(r|e<2*38s@qudrRoJf7zH86Cb!aFM9U*)ScwVXe9j}Iq6|t`r41eWF zr4e{fs$=^JY&%_>qrU;YU(=64KcVTrgnmxbPeAuS;>33Nzkyz*>F+?V*Yw{(k7@ca z^qrbM0=?hW$1(oB7(b?xkNNwCm#DsBHM+cD|1DgM`$NTxrP6-9Z;q`s^k9K7^7#lj z)>z)B`kF!qA1u5By|PR#YxSv?GS~yCepJ|p@id$M0{f_M;voa=alU_l2BuW#r#51q zK>K_^4dPwOBYx9PRZ|!Z%pE)le7sbeKdkw_$-Y=|dGe`httk-a7r-yT_g?h*dDIUP z@2`PS@!Wl?@DZL}ANc|NU68xp4;NnoZxGe7Ukn#RN*(D(9D2sc|A&De zt_rDwLTy;A3JIl7y;Q6IIiOU_Zp8TUXt=l*oFP>?LL7Sb|G@(%akXLZ?yHY|@8zp? zd*6cpx554G)o`&L?NM-vCwzV`hg<7It3p1t0`c-yAB2lL;fwJfZY>KHlNj?^)cY~_ zM7>%i_m$!}a|x{|_*AH9D)svNm=EFL=Nl$)4@#vYlXEI3TGgW?legAQybHTR8E^ji z0QTDarOm#9A3#nnQpGEA|G?}16@`g_dZ4drMd3=oH|SG$ow^+G57uB#t1yNZpE@!Z z_xzQo?TK@NyK&#=4~_;FJYdgK1?ppmf8O7hlu9j^HrEYYiPsNIE(#ULn}6l3Bbm3X zF@1gcoJ_7%WOZaiq$N_fF47#?5H{8~H@mApvYIx(WV+qxv~44uNmwpkov^l5+ubp{ z*N%1q?WD<}xc)|)nM_%U)y5ZWP9l-jYkHD7qb-~1G~A8Y*j{ZodoY|_?ti=b*eFtR zjhrtfr@p`jI_FZ6eMSzdk^|)oEc?x3*B#$sZn-pBqN9@P@VmO?_&hfx_l~h$a^<5u zK*^DGKBGeCaJ^v7JEc+bA?sr-=dqMr?z}v}8hL<%e~BA1ZiD-moG$%~B?NzwQRGpHl1J{H&&vsWv!G+1a5Vua?~YGgTb8DgR66>3}!RV`7~&CMBB1v zr{(%Y&1}}}b$z70C61toXLcsz=q!T}E)^$Rr*j-mW8Lle?%jH`yK-|otsi=od3jxL zFd+Y9NF;vkMRmS^=~WiK!Hp?7<>@x`GZrCBP<4KY`6BOkX;W7(zXq1eSR>NE%{ZTFvzO3`Lj0<1#mPpA{aC3_H{%rtCIY9Wb?nTxz zPsT5PA~(ZMIYo5ID