<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Android on losgobbi</title><link>https://losgobbi.github.io/categories/android/</link><description>Recent content in Android on losgobbi</description><generator>Hugo -- gohugo.io</generator><language>en-us</language><copyright>personal blog :)</copyright><lastBuildDate>Fri, 24 Jan 2025 19:17:33 -0300</lastBuildDate><atom:link href="https://losgobbi.github.io/categories/android/index.xml" rel="self" type="application/rss+xml"/><item><title>Tracking Android 14 Wifi problem at RPI4</title><link>https://losgobbi.github.io/posts/wifi-pi4/</link><pubDate>Fri, 24 Jan 2025 19:17:33 -0300</pubDate><guid>https://losgobbi.github.io/posts/wifi-pi4/</guid><description>&lt;h4 id="android">Android&lt;/h4>
&lt;p>I was doing some experiments with my Raspberry Pi 4 + “the portable display 7 IPS raspberry pi” over the last months like building, installing and testing Android OS (Android 14) from the following repository: &lt;a href="https://github.com/android-rpi/">android-rpi&lt;/a> . Besides that repository, there is also the &lt;a href="https://github.com/raspberry-vanilla">raspberry-vanilla&lt;/a>, and in both cases, they “support” Android for rpi (not just the for pi4). The first one, is not considered a vanilla repository (as we can see in the name), meaning, that is not a pure AOSP fork, it may have some or a set of changes customized to rpi hardware.&lt;/p>
&lt;p>On the other hand, at vanilla repo, it’s considered a pure fork, with just opensource stuff, like using at graphics stack the &lt;a href="https://www.mesa3d.org/">Mesa3d&lt;/a> project as a implementation of OpenGL.&lt;/p>
&lt;p>Well, at my tests I noticed two issues from “unrelated areas”, Wifi and BT, that kept me very intrigued:&lt;/p>
&lt;ul>
&lt;li>Wifi was not connecting to either Wifi 2.4GHz and 5Ghz, and the following error was identified (there are other strange messages within wifi services and wpa_supplicant process):&lt;/li>
&lt;/ul>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-jsx" data-lang="jsx">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#ae81ff">11&lt;/span>&lt;span style="color:#f92672">-&lt;/span>&lt;span style="color:#ae81ff">28&lt;/span> &lt;span style="color:#ae81ff">23&lt;/span>&lt;span style="color:#f92672">:&lt;/span>&lt;span style="color:#ae81ff">14&lt;/span>&lt;span style="color:#f92672">:&lt;/span>&lt;span style="color:#ae81ff">22.228&lt;/span> &lt;span style="color:#ae81ff">2666&lt;/span> &lt;span style="color:#ae81ff">2666&lt;/span> &lt;span style="color:#a6e22e">I&lt;/span> &lt;span style="color:#a6e22e">wpa_supplicant&lt;/span>&lt;span style="color:#f92672">:&lt;/span> &lt;span style="color:#a6e22e">wlan0&lt;/span>&lt;span style="color:#f92672">:&lt;/span> &lt;span style="color:#a6e22e">CTRL&lt;/span>&lt;span style="color:#f92672">-&lt;/span>&lt;span style="color:#a6e22e">EVENT&lt;/span>&lt;span style="color:#f92672">-&lt;/span>&lt;span style="color:#a6e22e">SSID&lt;/span>&lt;span style="color:#f92672">-&lt;/span>&lt;span style="color:#a6e22e">TEMP&lt;/span>&lt;span style="color:#f92672">-&lt;/span>&lt;span style="color:#a6e22e">DISABLED&lt;/span> &lt;span style="color:#a6e22e">id&lt;/span>&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#ae81ff">0&lt;/span> &lt;span style="color:#a6e22e">ssid&lt;/span>&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#e6db74">&amp;#34;&amp;lt;ssid&amp;gt;&amp;#34;&lt;/span> &lt;span style="color:#a6e22e">auth_failures&lt;/span>&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#ae81ff">1&lt;/span> &lt;span style="color:#a6e22e">duration&lt;/span>&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#ae81ff">10&lt;/span> &lt;span style="color:#a6e22e">reason&lt;/span>&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#a6e22e">WRONG_KEY&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;ul>
&lt;li>And when I’ve tried to use bluetooth, pairing and connecting with a headset, a disconnection happened during the “connection handshake”:&lt;/li>
&lt;/ul>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-jsx" data-lang="jsx">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#ae81ff">11&lt;/span>&lt;span style="color:#f92672">-&lt;/span>&lt;span style="color:#ae81ff">29&lt;/span> &lt;span style="color:#ae81ff">00&lt;/span>&lt;span style="color:#f92672">:&lt;/span>&lt;span style="color:#ae81ff">03&lt;/span>&lt;span style="color:#f92672">:&lt;/span>&lt;span style="color:#ae81ff">34.149&lt;/span> &lt;span style="color:#ae81ff">3541&lt;/span> &lt;span style="color:#ae81ff">3568&lt;/span> &lt;span style="color:#a6e22e">I&lt;/span> &lt;span style="color:#a6e22e">btm_acl&lt;/span> &lt;span style="color:#f92672">:&lt;/span> &lt;span style="color:#a6e22e">packages&lt;/span>&lt;span style="color:#f92672">/&lt;/span>&lt;span style="color:#a6e22e">modules&lt;/span>&lt;span style="color:#f92672">/&lt;/span>&lt;span style="color:#a6e22e">Bluetooth&lt;/span>&lt;span style="color:#f92672">/&lt;/span>&lt;span style="color:#a6e22e">system&lt;/span>&lt;span style="color:#f92672">/&lt;/span>&lt;span style="color:#a6e22e">stack&lt;/span>&lt;span style="color:#f92672">/&lt;/span>&lt;span style="color:#a6e22e">acl&lt;/span>&lt;span style="color:#f92672">/&lt;/span>&lt;span style="color:#a6e22e">btm_acl&lt;/span>.&lt;span style="color:#a6e22e">cc&lt;/span>&lt;span style="color:#f92672">:&lt;/span>&lt;span style="color:#ae81ff">205&lt;/span> &lt;span style="color:#a6e22e">hci_btsnd_hcic_disconnect&lt;/span>&lt;span style="color:#f92672">:&lt;/span> &lt;span style="color:#a6e22e">Disconnecting&lt;/span> &lt;span style="color:#a6e22e">peer&lt;/span>&lt;span style="color:#f92672">:&lt;/span>&lt;span style="color:#a6e22e">xx&lt;/span>&lt;span style="color:#f92672">:&lt;/span>&lt;span style="color:#a6e22e">xx&lt;/span>&lt;span style="color:#f92672">:&lt;/span>&lt;span style="color:#a6e22e">xx&lt;/span>&lt;span style="color:#f92672">:&lt;/span>&lt;span style="color:#a6e22e">xx&lt;/span>&lt;span style="color:#f92672">:&lt;/span>&lt;span style="color:#ae81ff">65&lt;/span>&lt;span style="color:#f92672">:&lt;/span>&lt;span style="color:#ae81ff">1&lt;/span>&lt;span style="color:#a6e22e">f&lt;/span> &lt;span style="color:#a6e22e">reason&lt;/span>&lt;span style="color:#f92672">:&lt;/span>&lt;span style="color:#a6e22e">HCI_ERR_PEER_USER&lt;/span> &lt;span style="color:#a6e22e">comment&lt;/span>&lt;span style="color:#f92672">:&lt;/span>&lt;span style="color:#a6e22e">stack&lt;/span>&lt;span style="color:#f92672">::&lt;/span>&lt;span style="color:#a6e22e">l2cap&lt;/span>&lt;span style="color:#f92672">::&lt;/span>&lt;span style="color:#a6e22e">l2c_link&lt;/span>&lt;span style="color:#f92672">::&lt;/span>&lt;span style="color:#a6e22e">l2c_link_timeout&lt;/span> &lt;span style="color:#a6e22e">All&lt;/span> &lt;span style="color:#a6e22e">channels&lt;/span> &lt;span style="color:#a6e22e">closed&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>There were other strange errors and not necessary the two logs that I’ve quoted are the culprit of Wifi/BT to not be working. Later, I’ve identified a very similar report at this &lt;a href="https://github.com/android-rpi/device_arpi_rpi4/issues/128">issue&lt;/a>, for BT case, in which I was trying to help. The android-rpi is less active than vanilla one, at least for now, so in that time I was wondering, in order to pursuit those problems and compare the behavior: &lt;em>“Maybe I can test this using the vanilla repo?”&lt;/em>. And that, is what I did!!!&lt;/p>
&lt;h4 id="tracking">Tracking&lt;/h4>
&lt;p>….after spending some time to change my workspace from android-rpi to vanilla one, I was capable of repeating the same tests and compare the logs, in order to see if both “state machines” were equivalent, since they were in a kind of similar Android version, but not exactly using the same infrastructure of wpa, wpa configuration and so on.&lt;/p>
&lt;p>At that point, I was driven to discover why android-rpi was in that state? In which scope the issue was? AOSP, “device folder/product configuration”, firmware, Linux Kernel? Well, I did some experiments in order to isolate those cases mixing different things:&lt;/p>
&lt;ul>
&lt;li>creating the android-rpi device folder inside the vanilla tree;&lt;/li>
&lt;/ul>
&lt;p>The idea was to identify if the problem was:&lt;/p>
&lt;ul>
&lt;li>lack of configurations inside the device structure;&lt;/li>
&lt;li>something wrong with the specific AOSP tag;&lt;/li>
&lt;li>or at another scope;&lt;/li>
&lt;/ul>
&lt;p>In this particular mixed case, blobs for Linux Kernel and firmware were copied from vanilla repo.&lt;/p>
&lt;h4 id="results">Results:&lt;/h4>
&lt;p>After some building issues, I’ve faced a loop of different problems over pi4. Some of them were created by me during the lack of attention when mixing these repositories. One of them was a crash at SurfaceFlinger, one process responsible for managing things related to the graphics stack:&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-jsx" data-lang="jsx">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#ae81ff">01&lt;/span>&lt;span style="color:#f92672">-&lt;/span>&lt;span style="color:#ae81ff">01&lt;/span> &lt;span style="color:#ae81ff">00&lt;/span>&lt;span style="color:#f92672">:&lt;/span>&lt;span style="color:#ae81ff">18&lt;/span>&lt;span style="color:#f92672">:&lt;/span>&lt;span style="color:#ae81ff">23.959&lt;/span> &lt;span style="color:#ae81ff">17253&lt;/span> &lt;span style="color:#ae81ff">17273&lt;/span> &lt;span style="color:#a6e22e">F&lt;/span> &lt;span style="color:#a6e22e">libc&lt;/span> &lt;span style="color:#f92672">:&lt;/span> &lt;span style="color:#a6e22e">Fatal&lt;/span> &lt;span style="color:#a6e22e">signal&lt;/span> &lt;span style="color:#ae81ff">6&lt;/span> (&lt;span style="color:#a6e22e">SIGABRT&lt;/span>), &lt;span style="color:#a6e22e">code&lt;/span> &lt;span style="color:#f92672">-&lt;/span>&lt;span style="color:#ae81ff">1&lt;/span> (&lt;span style="color:#a6e22e">SI_QUEUE&lt;/span>) &lt;span style="color:#66d9ef">in&lt;/span> &lt;span style="color:#a6e22e">tid&lt;/span> &lt;span style="color:#ae81ff">17273&lt;/span> (&lt;span style="color:#a6e22e">surfaceflinger&lt;/span>), &lt;span style="color:#a6e22e">pid&lt;/span> &lt;span style="color:#ae81ff">17253&lt;/span> (&lt;span style="color:#a6e22e">surfaceflinger&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#ae81ff">01&lt;/span>&lt;span style="color:#f92672">-&lt;/span>&lt;span style="color:#ae81ff">01&lt;/span> &lt;span style="color:#ae81ff">00&lt;/span>&lt;span style="color:#f92672">:&lt;/span>&lt;span style="color:#ae81ff">18&lt;/span>&lt;span style="color:#f92672">:&lt;/span>&lt;span style="color:#ae81ff">24.111&lt;/span> &lt;span style="color:#ae81ff">17276&lt;/span> &lt;span style="color:#ae81ff">17276&lt;/span> &lt;span style="color:#a6e22e">F&lt;/span> &lt;span style="color:#a6e22e">DEBUG&lt;/span> &lt;span style="color:#f92672">:&lt;/span> &lt;span style="color:#f92672">***&lt;/span> &lt;span style="color:#f92672">***&lt;/span> &lt;span style="color:#f92672">***&lt;/span> &lt;span style="color:#f92672">***&lt;/span> &lt;span style="color:#f92672">***&lt;/span> &lt;span style="color:#f92672">***&lt;/span> &lt;span style="color:#f92672">***&lt;/span> &lt;span style="color:#f92672">***&lt;/span> &lt;span style="color:#f92672">***&lt;/span> &lt;span style="color:#f92672">***&lt;/span> &lt;span style="color:#f92672">***&lt;/span> &lt;span style="color:#f92672">***&lt;/span> &lt;span style="color:#f92672">***&lt;/span> &lt;span style="color:#f92672">***&lt;/span> &lt;span style="color:#f92672">***&lt;/span> &lt;span style="color:#f92672">***&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#ae81ff">01&lt;/span>&lt;span style="color:#f92672">-&lt;/span>&lt;span style="color:#ae81ff">01&lt;/span> &lt;span style="color:#ae81ff">00&lt;/span>&lt;span style="color:#f92672">:&lt;/span>&lt;span style="color:#ae81ff">18&lt;/span>&lt;span style="color:#f92672">:&lt;/span>&lt;span style="color:#ae81ff">24.111&lt;/span> &lt;span style="color:#ae81ff">17276&lt;/span> &lt;span style="color:#ae81ff">17276&lt;/span> &lt;span style="color:#a6e22e">F&lt;/span> &lt;span style="color:#a6e22e">DEBUG&lt;/span> &lt;span style="color:#f92672">:&lt;/span> &lt;span style="color:#a6e22e">Build&lt;/span> &lt;span style="color:#a6e22e">fingerprint&lt;/span>&lt;span style="color:#f92672">:&lt;/span> &lt;span style="color:#e6db74">&amp;#39;arpi/rpi4/rpi4:14/AP2A.240905.003/eng.gobbi.20250103.104810:eng/test-keys&amp;#39;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#ae81ff">01&lt;/span>&lt;span style="color:#f92672">-&lt;/span>&lt;span style="color:#ae81ff">01&lt;/span> &lt;span style="color:#ae81ff">00&lt;/span>&lt;span style="color:#f92672">:&lt;/span>&lt;span style="color:#ae81ff">18&lt;/span>&lt;span style="color:#f92672">:&lt;/span>&lt;span style="color:#ae81ff">24.111&lt;/span> &lt;span style="color:#ae81ff">17276&lt;/span> &lt;span style="color:#ae81ff">17276&lt;/span> &lt;span style="color:#a6e22e">F&lt;/span> &lt;span style="color:#a6e22e">DEBUG&lt;/span> &lt;span style="color:#f92672">:&lt;/span> &lt;span style="color:#a6e22e">Revision&lt;/span>&lt;span style="color:#f92672">:&lt;/span> &lt;span style="color:#e6db74">&amp;#39;0&amp;#39;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#ae81ff">01&lt;/span>&lt;span style="color:#f92672">-&lt;/span>&lt;span style="color:#ae81ff">01&lt;/span> &lt;span style="color:#ae81ff">00&lt;/span>&lt;span style="color:#f92672">:&lt;/span>&lt;span style="color:#ae81ff">18&lt;/span>&lt;span style="color:#f92672">:&lt;/span>&lt;span style="color:#ae81ff">24.111&lt;/span> &lt;span style="color:#ae81ff">17276&lt;/span> &lt;span style="color:#ae81ff">17276&lt;/span> &lt;span style="color:#a6e22e">F&lt;/span> &lt;span style="color:#a6e22e">DEBUG&lt;/span> &lt;span style="color:#f92672">:&lt;/span> &lt;span style="color:#a6e22e">ABI&lt;/span>&lt;span style="color:#f92672">:&lt;/span> &lt;span style="color:#e6db74">&amp;#39;arm64&amp;#39;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#ae81ff">01&lt;/span>&lt;span style="color:#f92672">-&lt;/span>&lt;span style="color:#ae81ff">01&lt;/span> &lt;span style="color:#ae81ff">00&lt;/span>&lt;span style="color:#f92672">:&lt;/span>&lt;span style="color:#ae81ff">18&lt;/span>&lt;span style="color:#f92672">:&lt;/span>&lt;span style="color:#ae81ff">24.111&lt;/span> &lt;span style="color:#ae81ff">17276&lt;/span> &lt;span style="color:#ae81ff">17276&lt;/span> &lt;span style="color:#a6e22e">F&lt;/span> &lt;span style="color:#a6e22e">DEBUG&lt;/span> &lt;span style="color:#f92672">:&lt;/span> &lt;span style="color:#a6e22e">Timestamp&lt;/span>&lt;span style="color:#f92672">:&lt;/span> &lt;span style="color:#ae81ff">1970&lt;/span>&lt;span style="color:#f92672">-&lt;/span>&lt;span style="color:#ae81ff">01&lt;/span>&lt;span style="color:#f92672">-&lt;/span>&lt;span style="color:#ae81ff">01&lt;/span> &lt;span style="color:#ae81ff">00&lt;/span>&lt;span style="color:#f92672">:&lt;/span>&lt;span style="color:#ae81ff">18&lt;/span>&lt;span style="color:#f92672">:&lt;/span>&lt;span style="color:#ae81ff">23.997155267&lt;/span>&lt;span style="color:#f92672">+&lt;/span>&lt;span style="color:#ae81ff">0000&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#ae81ff">01&lt;/span>&lt;span style="color:#f92672">-&lt;/span>&lt;span style="color:#ae81ff">01&lt;/span> &lt;span style="color:#ae81ff">00&lt;/span>&lt;span style="color:#f92672">:&lt;/span>&lt;span style="color:#ae81ff">18&lt;/span>&lt;span style="color:#f92672">:&lt;/span>&lt;span style="color:#ae81ff">24.111&lt;/span> &lt;span style="color:#ae81ff">17276&lt;/span> &lt;span style="color:#ae81ff">17276&lt;/span> &lt;span style="color:#a6e22e">F&lt;/span> &lt;span style="color:#a6e22e">DEBUG&lt;/span> &lt;span style="color:#f92672">:&lt;/span> &lt;span style="color:#a6e22e">Process&lt;/span> &lt;span style="color:#a6e22e">uptime&lt;/span>&lt;span style="color:#f92672">:&lt;/span> &lt;span style="color:#ae81ff">1&lt;/span>&lt;span style="color:#a6e22e">s&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#ae81ff">01&lt;/span>&lt;span style="color:#f92672">-&lt;/span>&lt;span style="color:#ae81ff">01&lt;/span> &lt;span style="color:#ae81ff">00&lt;/span>&lt;span style="color:#f92672">:&lt;/span>&lt;span style="color:#ae81ff">18&lt;/span>&lt;span style="color:#f92672">:&lt;/span>&lt;span style="color:#ae81ff">24.111&lt;/span> &lt;span style="color:#ae81ff">17276&lt;/span> &lt;span style="color:#ae81ff">17276&lt;/span> &lt;span style="color:#a6e22e">F&lt;/span> &lt;span style="color:#a6e22e">DEBUG&lt;/span> &lt;span style="color:#f92672">:&lt;/span> &lt;span style="color:#a6e22e">Cmdline&lt;/span>&lt;span style="color:#f92672">:&lt;/span> &lt;span style="color:#960050;background-color:#1e0010">/system/bin/surfaceflinger&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#ae81ff">01&lt;/span>&lt;span style="color:#f92672">-&lt;/span>&lt;span style="color:#ae81ff">01&lt;/span> &lt;span style="color:#ae81ff">00&lt;/span>&lt;span style="color:#f92672">:&lt;/span>&lt;span style="color:#ae81ff">18&lt;/span>&lt;span style="color:#f92672">:&lt;/span>&lt;span style="color:#ae81ff">24.111&lt;/span> &lt;span style="color:#ae81ff">17276&lt;/span> &lt;span style="color:#ae81ff">17276&lt;/span> &lt;span style="color:#a6e22e">F&lt;/span> &lt;span style="color:#a6e22e">DEBUG&lt;/span> &lt;span style="color:#f92672">:&lt;/span> &lt;span style="color:#a6e22e">pid&lt;/span>&lt;span style="color:#f92672">:&lt;/span> &lt;span style="color:#ae81ff">17253&lt;/span>, &lt;span style="color:#a6e22e">tid&lt;/span>&lt;span style="color:#f92672">:&lt;/span> &lt;span style="color:#ae81ff">17273&lt;/span>, &lt;span style="color:#a6e22e">name&lt;/span>&lt;span style="color:#f92672">:&lt;/span> &lt;span style="color:#a6e22e">surfaceflinger&lt;/span> &lt;span style="color:#f92672">&amp;gt;&amp;gt;&amp;gt;&lt;/span> &lt;span style="color:#960050;background-color:#1e0010">/system/bin/surfaceflinger &amp;lt;&amp;lt;&amp;lt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#ae81ff">01&lt;/span>&lt;span style="color:#f92672">-&lt;/span>&lt;span style="color:#ae81ff">01&lt;/span> &lt;span style="color:#ae81ff">00&lt;/span>&lt;span style="color:#f92672">:&lt;/span>&lt;span style="color:#ae81ff">18&lt;/span>&lt;span style="color:#f92672">:&lt;/span>&lt;span style="color:#ae81ff">24.111&lt;/span> &lt;span style="color:#ae81ff">17276&lt;/span> &lt;span style="color:#ae81ff">17276&lt;/span> &lt;span style="color:#a6e22e">F&lt;/span> &lt;span style="color:#a6e22e">DEBUG&lt;/span> &lt;span style="color:#f92672">:&lt;/span> &lt;span style="color:#a6e22e">uid&lt;/span>&lt;span style="color:#f92672">:&lt;/span> &lt;span style="color:#ae81ff">1000&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#ae81ff">01&lt;/span>&lt;span style="color:#f92672">-&lt;/span>&lt;span style="color:#ae81ff">01&lt;/span> &lt;span style="color:#ae81ff">00&lt;/span>&lt;span style="color:#f92672">:&lt;/span>&lt;span style="color:#ae81ff">18&lt;/span>&lt;span style="color:#f92672">:&lt;/span>&lt;span style="color:#ae81ff">24.111&lt;/span> &lt;span style="color:#ae81ff">17276&lt;/span> &lt;span style="color:#ae81ff">17276&lt;/span> &lt;span style="color:#a6e22e">F&lt;/span> &lt;span style="color:#a6e22e">DEBUG&lt;/span> &lt;span style="color:#f92672">:&lt;/span> &lt;span style="color:#a6e22e">tagged_addr_ctrl&lt;/span>&lt;span style="color:#f92672">:&lt;/span> &lt;span style="color:#ae81ff">0000000000000001&lt;/span> (&lt;span style="color:#a6e22e">PR_TAGGED_ADDR_ENABLE&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#ae81ff">01&lt;/span>&lt;span style="color:#f92672">-&lt;/span>&lt;span style="color:#ae81ff">01&lt;/span> &lt;span style="color:#ae81ff">00&lt;/span>&lt;span style="color:#f92672">:&lt;/span>&lt;span style="color:#ae81ff">18&lt;/span>&lt;span style="color:#f92672">:&lt;/span>&lt;span style="color:#ae81ff">24.111&lt;/span> &lt;span style="color:#ae81ff">17276&lt;/span> &lt;span style="color:#ae81ff">17276&lt;/span> &lt;span style="color:#a6e22e">F&lt;/span> &lt;span style="color:#a6e22e">DEBUG&lt;/span> &lt;span style="color:#f92672">:&lt;/span> &lt;span style="color:#a6e22e">signal&lt;/span> &lt;span style="color:#ae81ff">6&lt;/span> (&lt;span style="color:#a6e22e">SIGABRT&lt;/span>), &lt;span style="color:#a6e22e">code&lt;/span> &lt;span style="color:#f92672">-&lt;/span>&lt;span style="color:#ae81ff">1&lt;/span> (&lt;span style="color:#a6e22e">SI_QUEUE&lt;/span>), &lt;span style="color:#a6e22e">fault&lt;/span> &lt;span style="color:#a6e22e">addr&lt;/span> &lt;span style="color:#f92672">--------&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#ae81ff">01&lt;/span>&lt;span style="color:#f92672">-&lt;/span>&lt;span style="color:#ae81ff">01&lt;/span> &lt;span style="color:#ae81ff">00&lt;/span>&lt;span style="color:#f92672">:&lt;/span>&lt;span style="color:#ae81ff">18&lt;/span>&lt;span style="color:#f92672">:&lt;/span>&lt;span style="color:#ae81ff">24.111&lt;/span> &lt;span style="color:#ae81ff">17276&lt;/span> &lt;span style="color:#ae81ff">17276&lt;/span> &lt;span style="color:#a6e22e">F&lt;/span> &lt;span style="color:#a6e22e">DEBUG&lt;/span> &lt;span style="color:#f92672">:&lt;/span> &lt;span style="color:#a6e22e">Abort&lt;/span> &lt;span style="color:#a6e22e">message&lt;/span>&lt;span style="color:#f92672">:&lt;/span> &lt;span style="color:#e6db74">&amp;#39;no suitable EGLConfig found, giving up (format: 1, vendor: Android, version: 1.4 Android META-EGL, extensions: EGL_ANDROID_front_buffer_auto_refresh EGL_ANDROID_get_native_client_buffer EGL_ANDROID_presentation_ti
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#e6db74">me EGL_EXT_surface_CTA861_3_metadata EGL_EXT_surface_SMPTE2086_metadata EGL_KHR_get_all_proc_addresses EGL_KHR_swap_buffers_with_damage EGL_ANDROID_get_frame_timestamps , Client API: OpenGL_ES)&amp;#39;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>...
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>The “no suitable EGLConfig found” was a indication that something related to the graphics/OpenGL structure was not right after mixing those repositories. After some time I’ve realized that I’ve missed a .dtb overlay file from Linux Kernel when I copied the device folder that was preventing some DRI cards to be populated at /dev, like the original vanilla image, triggering a wrong execution of Mesa3d initialization, crashing the SurfaceFlinger:&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-c" data-lang="c">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">// there were no devices entries like the original vanilla tests
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span>console:&lt;span style="color:#f92672">/&lt;/span> &lt;span style="color:#960050;background-color:#1e0010">#&lt;/span> ls &lt;span style="color:#f92672">-&lt;/span>l &lt;span style="color:#f92672">/&lt;/span>dev&lt;span style="color:#f92672">/&lt;/span>dri&lt;span style="color:#75715e">/*
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">crw-rw-rw- 1 root graphics 226, 0 1970-01-01 00:00 /dev/dri/card0
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">crw-rw-rw- 1 root graphics 226, 1 1970-01-01 00:00 /dev/dri/card1
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">crw-rw-rw- 1 root graphics 226, 128 1970-01-01 00:00 /dev/dri/renderD128
&lt;/span>&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>This was only one of the issues, after fixing that a lot of other instabilities were detected during the “mixing test”. In the end of all of this, I couldn’t stabilize that test and reach the root cause of why both problems were occurring at android-rpi repo.&lt;/p>
&lt;p>Anyway, mixing different devices folders from “different” versions can be tricky and create a lot of instabilities. Considering that the history of changes, in this case, for android-rpi, is not “public known”, it’s hard to point if from the first A14 support Wifi/BT was working or not.
Android for RPI4 doesn’t officially supports LK bootloader/fastboot mode since it uses the sdcard, making every test very expensive.&lt;/p></description></item></channel></rss>