Anybody working on Android for the Odroid-Go A?

Talking about OS and emulation core development
zztfoxdev
Posts: 67
Joined: Sat Jan 19, 2019 8:36 am
languages_spoken: english
ODROIDs: Odroid Go
Has thanked: 1 time
Been thanked: 7 times
Contact:

Re: Anybody working on Android for the Odroid-Go A?

Post by zztfoxdev »

zpy3 wrote:
Tue Aug 25, 2020 8:57 pm
rooted wrote:
Sat Aug 22, 2020 5:32 pm
zpy3 wrote:I think oga needs to be configured to not allow background processes
This needs to enter the developer options
Otherwise, the background space will be insufficient. You know the space occupied by the Android background process is very exaggerated.
Setting maximum background processes to 1 doesn't seem like a bad idea to try.
thank you very mach, and now I don’t know how to get root privileges
I tried super su, but it didn't work
google play also failed to install
Root and anything that requires it (flashing packages i.e. Google Play Store) such will have to be done through some kind of recovery menu, like TWRP, which is why it is imoprtant the dev take his time and get it working right.

As for the home launcher problem, is it asking you every time to select a default launcher? If so, there might be a toggle you have to flip in ATV to enable it to keep it selected as the home launcher (there was in HALauncher).

If it is not pulling up the prompt to select a home screen and just goes back to Trebuchet, you will have to go into setting, app settings, trebuchet, clear defaults. Or you could install a third launcher to get the prompt to pop back up. Or an app that lets you select a home launcher (if one exists?)
These users thanked the author zztfoxdev for the post:
notime2d8 (Wed Aug 26, 2020 10:05 am)

User avatar
rooted
Posts: 7974
Joined: Fri Dec 19, 2014 9:12 am
languages_spoken: english
Location: Gulf of Mexico, US
Has thanked: 724 times
Been thanked: 243 times
Contact:

Re: Anybody working on Android for the Odroid-Go A?

Post by rooted »

zpy3 wrote:
rooted wrote:
Sat Aug 22, 2020 5:32 pm
zpy3 wrote:I think oga needs to be configured to not allow background processes
This needs to enter the developer options
Otherwise, the background space will be insufficient. You know the space occupied by the Android background process is very exaggerated.
Setting maximum background processes to 1 doesn't seem like a bad idea to try.
thank you very mach, and now I don’t know how to get root privileges
I tried super su, but it didn't work
google play also failed to install
You don't need root, you just need to enable developer settings.

notime2d8
Posts: 160
Joined: Thu Dec 11, 2014 4:40 am
languages_spoken: english
Has thanked: 46 times
Been thanked: 76 times
Contact:

Re: Anybody working on Android for the Odroid-Go A?

Post by notime2d8 »

rooted wrote:
Wed Aug 26, 2020 5:02 am
zpy3 wrote:
rooted wrote:
Sat Aug 22, 2020 5:32 pm
zpy3 wrote:I think oga needs to be configured to not allow background processes
This needs to enter the developer options
Otherwise, the background space will be insufficient. You know the space occupied by the Android background process is very exaggerated.
Setting maximum background processes to 1 doesn't seem like a bad idea to try.
thank you very mach, and now I don’t know how to get root privileges
I tried super su, but it didn't work
google play also failed to install
You don't need root, you just need to enable developer settings.
LineageOS unfortunately dropped that feature for 17.1...I found out when i wanted to use it a while back. The Android-x86 project still uses it and has it working on Q. I plan on trying to add it at some point.

https://www.xda-developers.com/lineageo ... k-manager/
If I say something that sounds smart or like i know what i'm talking about....i'm faking it.

User avatar
rooted
Posts: 7974
Joined: Fri Dec 19, 2014 9:12 am
languages_spoken: english
Location: Gulf of Mexico, US
Has thanked: 724 times
Been thanked: 243 times
Contact:

Re: Anybody working on Android for the Odroid-Go A?

Post by rooted »

That's weird, they don't usually remove AOSP features.

zpy3
Posts: 8
Joined: Sat Aug 22, 2020 12:47 pm
languages_spoken: english
ODROIDs: OGA1.0,OGA1.1
Has thanked: 1 time
Been thanked: 0
Contact:

Re: Anybody working on Android for the Odroid-Go A?

Post by zpy3 »

notime2d8 wrote:
Wed Aug 26, 2020 9:52 am
rooted wrote:
Wed Aug 26, 2020 5:02 am
zpy3 wrote:
rooted wrote:
Sat Aug 22, 2020 5:32 pm
zpy3 wrote:I think oga needs to be configured to not allow background processes
This needs to enter the developer options
Otherwise, the background space will be insufficient. You know the space occupied by the Android background process is very exaggerated.
Setting maximum background processes to 1 doesn't seem like a bad idea to try.
thank you very mach, and now I don’t know how to get root privileges
I tried super su, but it didn't work
google play also failed to install
You don't need root, you just need to enable developer settings.
LineageOS unfortunately dropped that feature for 17.1...I found out when i wanted to use it a while back. The Android-x86 project still uses it and has it working on Q. I plan on trying to add it at some point.

https://www.xda-developers.com/lineageo ... k-manager/
Is it possible to install magisk in oga?

zztfoxdev
Posts: 67
Joined: Sat Jan 19, 2019 8:36 am
languages_spoken: english
ODROIDs: Odroid Go
Has thanked: 1 time
Been thanked: 7 times
Contact:

Re: Anybody working on Android for the Odroid-Go A?

Post by zztfoxdev »

zpy3 wrote:
Wed Aug 26, 2020 12:32 pm
notime2d8 wrote:
Wed Aug 26, 2020 9:52 am
rooted wrote:
Wed Aug 26, 2020 5:02 am
zpy3 wrote:
rooted wrote:
Sat Aug 22, 2020 5:32 pm
zpy3 wrote:I think oga needs to be configured to not allow background processes
This needs to enter the developer options
Otherwise, the background space will be insufficient. You know the space occupied by the Android background process is very exaggerated.
Setting maximum background processes to 1 doesn't seem like a bad idea to try.
thank you very mach, and now I don’t know how to get root privileges
I tried super su, but it didn't work
google play also failed to install
You don't need root, you just need to enable developer settings.
LineageOS unfortunately dropped that feature for 17.1...I found out when i wanted to use it a while back. The Android-x86 project still uses it and has it working on Q. I plan on trying to add it at some point.

https://www.xda-developers.com/lineageo ... k-manager/
Is it possible to install magisk in oga?
Maybe? But kinda of risky without TWRP or the like to access recover if something goes wrong.

zpy3
Posts: 8
Joined: Sat Aug 22, 2020 12:47 pm
languages_spoken: english
ODROIDs: OGA1.0,OGA1.1
Has thanked: 1 time
Been thanked: 0
Contact:

Re: Anybody working on Android for the Odroid-Go A?

Post by zpy3 »

zztfoxdev wrote:
Thu Aug 27, 2020 7:51 am
zpy3 wrote:
Wed Aug 26, 2020 12:32 pm
notime2d8 wrote:
Wed Aug 26, 2020 9:52 am
rooted wrote:
Wed Aug 26, 2020 5:02 am
zpy3 wrote:
rooted wrote:
Sat Aug 22, 2020 5:32 pm
zpy3 wrote:I think oga needs to be configured to not allow background processes
This needs to enter the developer options
Otherwise, the background space will be insufficient. You know the space occupied by the Android background process is very exaggerated.
Setting maximum background processes to 1 doesn't seem like a bad idea to try.
thank you very mach, and now I don’t know how to get root privileges
I tried super su, but it didn't work
google play also failed to install
You don't need root, you just need to enable developer settings.
LineageOS unfortunately dropped that feature for 17.1...I found out when i wanted to use it a while back. The Android-x86 project still uses it and has it working on Q. I plan on trying to add it at some point.

https://www.xda-developers.com/lineageo ... k-manager/
Is it possible to install magisk in oga?
Maybe? But kinda of risky without TWRP or the like to access recover if something goes wrong.
Can someone tell me how to install magisk?

Shoesy
Posts: 27
Joined: Sat Jul 18, 2020 1:26 am
languages_spoken: english
ODROIDs: Odroid Go Advance
Has thanked: 2 times
Been thanked: 4 times
Contact:

Re: Anybody working on Android for the Odroid-Go A?

Post by Shoesy »

STEAM LINK!



More of a proof of concept- I did get this to work a whole lot better by tweaking my network settings (turning 5ghz on!). Full screen is possible with a bit of tinkering too. Bottleneck now seems to be the slow slow slow wifi built into the BE. I have a WIFI n chip which fits, so hopefully next time we can get a driver in there for that one.

BTW if you do try this at home bare in mind the frontend is basically unusable and everything is cropped / missing. To get round this just press B until it gives you the code to add into Steam (or at least the tops of the numbers!) this will be a four digit number, so it will take some guesswork to work out what it is! Stick with it though, you'll get there in the end, and it seems like you have as many tries as you like :)

Once you've got passed this you can just start it up and stab at B until you link, without needing to do any password business.
These users thanked the author Shoesy for the post:
notime2d8 (Fri Aug 28, 2020 10:14 am)

notime2d8
Posts: 160
Joined: Thu Dec 11, 2014 4:40 am
languages_spoken: english
Has thanked: 46 times
Been thanked: 76 times
Contact:

Re: Anybody working on Android for the Odroid-Go A?

Post by notime2d8 »

Shoesy wrote:
Thu Aug 27, 2020 8:27 pm

More of a proof of concept- I did get this to work a whole lot better by tweaking my network settings (turning 5ghz on!). Full screen is possible with a bit of tinkering too. Bottleneck now seems to be the slow slow slow wifi built into the BE. I have a WIFI n chip which fits, so hopefully next time we can get a driver in there for that one.
Do you know which WiFi module you have? I'm going to test real quick if i can load modules from the SD card on boot. Then we could just swap the wlan.ko on the Vfat partition, from a windows computer or within Android.

If that doesn't work i need to check out the Odroid WiFi loader they use on their Android builds. It uses USB Id's to select which module to load. I'm thinking it could be changed, that if no USB is detected default to the built in WiFi module.
If I say something that sounds smart or like i know what i'm talking about....i'm faking it.

Shoesy
Posts: 27
Joined: Sat Jul 18, 2020 1:26 am
languages_spoken: english
ODROIDs: Odroid Go Advance
Has thanked: 2 times
Been thanked: 4 times
Contact:

Re: Anybody working on Android for the Odroid-Go A?

Post by Shoesy »

Mine is this one: Add-on NWU276:

I believe it's this chipset: Mediatek MT7601

macromorgan
Posts: 30
Joined: Mon Dec 30, 2019 10:35 am
languages_spoken: english
ODROIDs: Odroid-GO
Has thanked: 0
Been thanked: 7 times
Contact:

Re: Anybody working on Android for the Odroid-Go A?

Post by macromorgan »

I was screwing around with the 5.9rc kernel and was able to get the sound to work. Turns out you need to modify a couple of different places... specifically you need to modify the driver for the PM chip to tell it to power up the codec and add some pinctrl bits, you need to tweak the clock drivers a tad to get the clk to generate for said codec, and most importantly you need to update the codec to generate the proper pincfg (plus there are a shitload of symbols, structs and macros that changed names from 4.19 to 5.9.)

I'm still working on other stuff like the codecs, the RGA, the cryto engine, and the rest of the PM stuff, but most of the other hardware (like the audio, hwrng, cpuinfo driver) worked without much tweaking. To enable panfrost I just had to add the bifrost hardware in the panfrost device table. Not sure if Android could benefit from it, but here is what I have so far. When I get around to messing with the RGA and codecs (the next things I want to work on) as well as the rest of the PM stuff I'll try to commit that as well.

https://github.com/macromorgan/odroid_go_advance_linux/
These users thanked the author macromorgan for the post:
notime2d8 (Sun Aug 30, 2020 2:49 pm)

notime2d8
Posts: 160
Joined: Thu Dec 11, 2014 4:40 am
languages_spoken: english
Has thanked: 46 times
Been thanked: 76 times
Contact:

Re: Anybody working on Android for the Odroid-Go A?

Post by notime2d8 »

macromorgan wrote:
Sun Aug 30, 2020 1:00 pm
I was screwing around with the 5.9rc kernel and was able to get the sound to work. Turns out you need to modify a couple of different places... specifically you need to modify the driver for the PM chip to tell it to power up the codec and add some pinctrl bits, you need to tweak the clock drivers a tad to get the clk to generate for said codec, and most importantly you need to update the codec to generate the proper pincfg (plus there are a shitload of symbols, structs and macros that changed names from 4.19 to 5.9.)

I'm still working on other stuff like the codecs, the RGA, the cryto engine, and the rest of the PM stuff, but most of the other hardware (like the audio, hwrng, cpuinfo driver) worked without much tweaking. To enable panfrost I just had to add the bifrost hardware in the panfrost device table. Not sure if Android could benefit from it, but here is what I have so far. When I get around to messing with the RGA and codecs (the next things I want to work on) as well as the rest of the PM stuff I'll try to commit that as well.

https://github.com/macromorgan/odroid_go_advance_linux/
That is awesome, yes i gave up on getting sound going when i tested that kernel. I missed the "modify the driver for the PM chip to tell it to power up the codec" and "tweak the clock drivers a tad to get the clk to generate for said codec" when i tried.

If we can get the mesa/panfrost driver working with android we should be future proof. Wouldn't need to rely on rockchip for mali blobs and most of the support is already in android. As of now the panfrost driver would be a step back as it only has some Opengl ES 3.0 support vs the mali blobs which gives us Opengl ES 3.2. But i feel like we may get vulkan support first from the panfrost route.
If I say something that sounds smart or like i know what i'm talking about....i'm faking it.

notime2d8
Posts: 160
Joined: Thu Dec 11, 2014 4:40 am
languages_spoken: english
Has thanked: 46 times
Been thanked: 76 times
Contact:

Re: Anybody working on Android for the Odroid-Go A?

Post by notime2d8 »

So I have some good news and bad news:

The good is that I got lineage recovery working. You can boot into it and flash zips like normal.

The bad news is that magisk doesn't work. In hindsight I should've looked at the magisk patch... But it tries to patch the boot.img and ramdisk. Neither of which we use.

So im going to look back into manually adding magisk. I'm also going to try to setup an actual GitHub repo for LineageOS 17.1 so others can build it easily. I've been putting this off because of not having time and people using my work without giving credit. But that is life. We have an awesome community, I'm hoping we can get more involved and others building it to make a better end product.

So I'm going to setup a GitHub may ask @macromorgan to help with this, do one more release with a few tweaks, latest repo sync, and recovery soonish. Then I'm going to try a few things like Android 11 bring up, patching u-boot for better Android support, and moving over to the kernel @macromorgan is working on, and trying out the panfrost driver. So it may be a while before I do another "release" for those who are using the builds I did. I also need to do some guides and instructions for things like adb over WiFi. I've been wanting to ask for logs of crashes from apps but had no easy way to advise on how to get them.

It would also be worthwhile if someone could pickup building LineageOS 16 so we can have root and maybe wifi display with a USB WiFi dongle. I patched 17.1 with wifi display to find my TV's and connect but error out and not display. But other devices had it working for Los 16.0.

Sorry for the long post.
These users thanked the author notime2d8 for the post:
sjuut (Mon Aug 31, 2020 6:37 am)
If I say something that sounds smart or like i know what i'm talking about....i'm faking it.

macromorgan
Posts: 30
Joined: Mon Dec 30, 2019 10:35 am
languages_spoken: english
ODROIDs: Odroid-GO
Has thanked: 0
Been thanked: 7 times
Contact:

Re: Anybody working on Android for the Odroid-Go A?

Post by macromorgan »

For the record panfrost as it is kind of sucks right now (at least for Android, where OpenGL ES appears to be king). 4.19 is probably the better kernel. That's to say nothing of the power management stuff that I haven't worked on yet.

If you need any help I can push your Android work to my Github; don't worry I'll gladly plaster your name all over it for the hard work you've put in (I've had credit stolen before too so I know how much it sucks).
These users thanked the author macromorgan for the post:
notime2d8 (Mon Aug 31, 2020 12:01 pm)

notime2d8
Posts: 160
Joined: Thu Dec 11, 2014 4:40 am
languages_spoken: english
Has thanked: 46 times
Been thanked: 76 times
Contact:

Re: Anybody working on Android for the Odroid-Go A?

Post by notime2d8 »

macromorgan wrote:
Mon Aug 31, 2020 11:37 am
For the record panfrost as it is kind of sucks right now (at least for Android, where OpenGL ES appears to be king). 4.19 is probably the better kernel. That's to say nothing of the power management stuff that I haven't worked on yet.

If you need any help I can push your Android work to my Github; don't worry I'll gladly plaster your name all over it for the hard work you've put in (I've had credit stolen before too so I know how much it sucks).
Thanks, Can you add the 4.19 kernel to your github with the added WIFI drivers? And i was thinking of trying the mainline Android kernel, with the ARM driver and Mali blobs from 4.19?

I've added the LineageOS 17.1 device and hardware folders here https://github.com/notime2d8 I need to figure out my changes and remove things that are not necessary, then add them to a clean Lineage build to see if it all works.
If I say something that sounds smart or like i know what i'm talking about....i'm faking it.

macromorgan
Posts: 30
Joined: Mon Dec 30, 2019 10:35 am
languages_spoken: english
ODROIDs: Odroid-GO
Has thanked: 0
Been thanked: 7 times
Contact:

Re: Anybody working on Android for the Odroid-Go A?

Post by macromorgan »

I can make an attempt to port things from the kernel you posted to the mainline 4.19. Also, I'd like to work on the devicetree just a bit. I learned a few things when doing the work on the 5.9 kernel, like I believe if you route the DSI panel through the VOP in the devicetree you can avoid that "panel sometimes works, sometimes doesn't" issue.

I now have both an original and a BE OGA, but I'm about to sell my original. For now though I can test on both.

zpy3
Posts: 8
Joined: Sat Aug 22, 2020 12:47 pm
languages_spoken: english
ODROIDs: OGA1.0,OGA1.1
Has thanked: 1 time
Been thanked: 0
Contact:

Re: Anybody working on Android for the Odroid-Go A?

Post by zpy3 »

notime2d8 wrote:
Mon Aug 31, 2020 5:10 am
So I have some good news and bad news:

The good is that I got lineage recovery working. You can boot into it and flash zips like normal.

The bad news is that magisk doesn't work. In hindsight I should've looked at the magisk patch... But it tries to patch the boot.img and ramdisk. Neither of which we use.

So im going to look back into manually adding magisk. I'm also going to try to setup an actual GitHub repo for LineageOS 17.1 so others can build it easily. I've been putting this off because of not having time and people using my work without giving credit. But that is life. We have an awesome community, I'm hoping we can get more involved and others building it to make a better end product.

So I'm going to setup a GitHub may ask @macromorgan to help with this, do one more release with a few tweaks, latest repo sync, and recovery soonish. Then I'm going to try a few things like Android 11 bring up, patching u-boot for better Android support, and moving over to the kernel @macromorgan is working on, and trying out the panfrost driver. So it may be a while before I do another "release" for those who are using the builds I did. I also need to do some guides and instructions for things like adb over WiFi. I've been wanting to ask for logs of crashes from apps but had no easy way to advise on how to get them.

It would also be worthwhile if someone could pickup building LineageOS 16 so we can have root and maybe wifi display with a USB WiFi dongle. I patched 17.1 with wifi display to find my TV's and connect but error out and not display. But other devices had it working for Los 16.0.

Sorry for the long post.
thanks for all you have done,Hope to get a good result

zpy3
Posts: 8
Joined: Sat Aug 22, 2020 12:47 pm
languages_spoken: english
ODROIDs: OGA1.0,OGA1.1
Has thanked: 1 time
Been thanked: 0
Contact:

Re: Anybody working on Android for the Odroid-Go A?

Post by zpy3 »

zpy3 wrote:
Tue Sep 01, 2020 9:58 am
notime2d8 wrote:
Mon Aug 31, 2020 5:10 am
So I have some good news and bad news:

The good is that I got lineage recovery working. You can boot into it and flash zips like normal.

The bad news is that magisk doesn't work. In hindsight I should've looked at the magisk patch... But it tries to patch the boot.img and ramdisk. Neither of which we use.

So im going to look back into manually adding magisk. I'm also going to try to setup an actual GitHub repo for LineageOS 17.1 so others can build it easily. I've been putting this off because of not having time and people using my work without giving credit. But that is life. We have an awesome community, I'm hoping we can get more involved and others building it to make a better end product.

So I'm going to setup a GitHub may ask @macromorgan to help with this, do one more release with a few tweaks, latest repo sync, and recovery soonish. Then I'm going to try a few things like Android 11 bring up, patching u-boot for better Android support, and moving over to the kernel @macromorgan is working on, and trying out the panfrost driver. So it may be a while before I do another "release" for those who are using the builds I did. I also need to do some guides and instructions for things like adb over WiFi. I've been wanting to ask for logs of crashes from apps but had no easy way to advise on how to get them.

It would also be worthwhile if someone could pickup building LineageOS 16 so we can have root and maybe wifi display with a USB WiFi dongle. I patched 17.1 with wifi display to find my TV's and connect but error out and not display. But other devices had it working for Los 16.0.

Sorry for the long post.
thanks for all you have done,Hope to get a good result
If you can open the internal folder read and write permissions, I think super su is feasible

macromorgan
Posts: 30
Joined: Mon Dec 30, 2019 10:35 am
languages_spoken: english
ODROIDs: Odroid-GO
Has thanked: 0
Been thanked: 7 times
Contact:

Re: Anybody working on Android for the Odroid-Go A?

Post by macromorgan »

macromorgan wrote:
Mon Aug 31, 2020 10:44 pm
I can make an attempt to port things from the kernel you posted to the mainline 4.19. Also, I'd like to work on the devicetree just a bit. I learned a few things when doing the work on the 5.9 kernel, like I believe if you route the DSI panel through the VOP in the devicetree you can avoid that "panel sometimes works, sometimes doesn't" issue.

I now have both an original and a BE OGA, but I'm about to sell my original. For now though I can test on both.
4.19 seems like kind of a mess. After getting everything situated I can't seem to fix a strange issue with the video output processor. Long story short the VOP keeps spamming dmesg log about an IRQ problem, but I can't seem to figure out what. Meanwhile, I have no output on my screen in X except when the screensaver starts (weird). Also there are a bunch of power regulator crashes, if I tell it the otg_switch is always on it alleviates some of them but not all.

On 5.9 I just pushed some changes to get the RGA working (luckily it's compatible with what's already upstream, so you just need the devicetree bindings). So as of right now that's sound, panfrost, VOP, and RGA working on the upstream kernel. I guess that means the video codecs are next? Note that the wifi isn't working either, but that should be a trivial fix. I think I already got the hwrng working too, but the crypto accelerator looks like it might be tricky too.
These users thanked the author macromorgan for the post:
notime2d8 (Thu Sep 03, 2020 9:56 am)

chaucer91
Posts: 1
Joined: Thu Sep 03, 2020 4:07 am
languages_spoken: english
ODROIDs: odroid go advance
Has thanked: 0
Been thanked: 0
Contact:

Re: Anybody working on Android for the Odroid-Go A?

Post by chaucer91 »

Hey there! This project looks fantastic! I was hoping I could get some assistance in getting this setup though, as I have been pretty unsuccessful in my attempts thus far :/ I've followed the instructions, however whenever I plug the sd card into the device, it doesn't turn on( as if the sd card is blank ). I've taken several screenshots to show exactly what I've done, any help would be appreciated. :)

Also is there a patreon setup for this project? :)

here's the partitions I set up in gparted.
Image

here's the commands to flash the images for system & vendor
Image

and here's the resulting directories after the fact.
Image

I'm on Pop!_OS v 20.04

again any help is appreciated! ^^;

notime2d8
Posts: 160
Joined: Thu Dec 11, 2014 4:40 am
languages_spoken: english
Has thanked: 46 times
Been thanked: 76 times
Contact:

Re: Anybody working on Android for the Odroid-Go A?

Post by notime2d8 »

chaucer91 wrote:
Thu Sep 03, 2020 4:28 am

again any help is appreciated! ^^;
I feel like the easiest route is to flash the SD card image @zztfoxdev posted a page or so back. Then just correct the data partition in g-parted.

And as far as what you did it all looks correct. But I've run into that issue in Ubuntu as well if i try to flash the SD card without one inserted. Can you try restarting your PC and trying your terminal commands again?

Also you did do ls /dev to verify that your SD card is mounted at dev/mmcblk0 and not like dev/sdc?
If I say something that sounds smart or like i know what i'm talking about....i'm faking it.

valadaa48
Posts: 161
Joined: Mon Feb 17, 2020 1:35 pm
languages_spoken: english
ODROIDs: odroid go advance
Has thanked: 7 times
Been thanked: 34 times
Contact:

Re: Anybody working on Android for the Odroid-Go A?

Post by valadaa48 »

@macromorgan I tried your 5.9 tree on Linux but it didn't get past the HK logo. Do you have a defconfig or config or has this kernel only been tested for android?

macromorgan
Posts: 30
Joined: Mon Dec 30, 2019 10:35 am
languages_spoken: english
ODROIDs: Odroid-GO
Has thanked: 0
Been thanked: 7 times
Contact:

Re: Anybody working on Android for the Odroid-Go A?

Post by macromorgan »

valadaa48 wrote:
Fri Sep 04, 2020 1:38 am
@macromorgan I tried your 5.9 tree on Linux but it didn't get past the HK logo. Do you have a defconfig or config or has this kernel only been tested for android?
I should clarify this is not an Android kernel. Later tonight I will work on an Android kernel and post a defconfig. Note I think Android will need to be updated with Mesa instead of the current Mail stuff though; I’m not an expert on Android though (just handy with the kernel).

For reference I am testing on a Debian install I built myself with Debootstrap.

valadaa48
Posts: 161
Joined: Mon Feb 17, 2020 1:35 pm
languages_spoken: english
ODROIDs: odroid go advance
Has thanked: 7 times
Been thanked: 34 times
Contact:

Re: Anybody working on Android for the Odroid-Go A?

Post by valadaa48 »

macromorgan wrote:
Fri Sep 04, 2020 3:50 am
valadaa48 wrote:
Fri Sep 04, 2020 1:38 am
@macromorgan I tried your 5.9 tree on Linux but it didn't get past the HK logo. Do you have a defconfig or config or has this kernel only been tested for android?
I should clarify this is not an Android kernel. Later tonight I will work on an Android kernel and post a defconfig. Note I think Android will need to be updated with Mesa instead of the current Mail stuff though; I’m not an expert on Android though (just handy with the kernel).

For reference I am testing on a Debian install I built myself with Debootstrap.
Thanks for the clarification. I'm only interested in compiling this for Linux at the moment so if you have an example config or defconfig then I'd be interested. Thanks!

Slaminger
Posts: 151
Joined: Tue Jul 16, 2019 12:30 am
languages_spoken: english
ODROIDs: Xu4, n2, c2, c4, OGA, OGA-BE
Location: Canada
Has thanked: 19 times
Been thanked: 45 times
Contact:

Re: Anybody working on Android for the Odroid-Go A?

Post by Slaminger »

i've started playing around with all the info thats been shared here and i was able to get lineage running on the oga, everything seems ok, the few apps ive tried
so far seem to work, ill play with it more shortly

macromorgan
Posts: 30
Joined: Mon Dec 30, 2019 10:35 am
languages_spoken: english
ODROIDs: Odroid-GO
Has thanked: 0
Been thanked: 7 times
Contact:

Re: Anybody working on Android for the Odroid-Go A?

Post by macromorgan »

valadaa48 wrote:
Fri Sep 04, 2020 4:07 am
macromorgan wrote:
Fri Sep 04, 2020 3:50 am
valadaa48 wrote:
Fri Sep 04, 2020 1:38 am
@macromorgan I tried your 5.9 tree on Linux but it didn't get past the HK logo. Do you have a defconfig or config or has this kernel only been tested for android?
I should clarify this is not an Android kernel. Later tonight I will work on an Android kernel and post a defconfig. Note I think Android will need to be updated with Mesa instead of the current Mail stuff though; I’m not an expert on Android though (just handy with the kernel).

For reference I am testing on a Debian install I built myself with Debootstrap.
Thanks for the clarification. I'm only interested in compiling this for Linux at the moment so if you have an example config or defconfig then I'd be interested. Thanks!
Here is what I am using. Again it works for me on stock Debian.

https://gist.github.com/macromorgan/575 ... 9f829891d6

valadaa48
Posts: 161
Joined: Mon Feb 17, 2020 1:35 pm
languages_spoken: english
ODROIDs: odroid go advance
Has thanked: 7 times
Been thanked: 34 times
Contact:

Re: Anybody working on Android for the Odroid-Go A?

Post by valadaa48 »

macromorgan wrote:
Fri Sep 04, 2020 9:32 am
valadaa48 wrote:
Fri Sep 04, 2020 4:07 am
macromorgan wrote:
Fri Sep 04, 2020 3:50 am
valadaa48 wrote:
Fri Sep 04, 2020 1:38 am
@macromorgan I tried your 5.9 tree on Linux but it didn't get past the HK logo. Do you have a defconfig or config or has this kernel only been tested for android?
I should clarify this is not an Android kernel. Later tonight I will work on an Android kernel and post a defconfig. Note I think Android will need to be updated with Mesa instead of the current Mail stuff though; I’m not an expert on Android though (just handy with the kernel).

For reference I am testing on a Debian install I built myself with Debootstrap.
Thanks for the clarification. I'm only interested in compiling this for Linux at the moment so if you have an example config or defconfig then I'd be interested. Thanks!
Here is what I am using. Again it works for me on stock Debian.

https://gist.github.com/macromorgan/575 ... 9f829891d6
Thanks, it boots. It's a great start!

EDIT: updated experience

macromorgan
Posts: 30
Joined: Mon Dec 30, 2019 10:35 am
languages_spoken: english
ODROIDs: Odroid-GO
Has thanked: 0
Been thanked: 7 times
Contact:

Re: Anybody working on Android for the Odroid-Go A?

Post by macromorgan »

valadaa48 wrote:
Fri Sep 04, 2020 11:14 am
macromorgan wrote:
Fri Sep 04, 2020 9:32 am
valadaa48 wrote:
Fri Sep 04, 2020 4:07 am
macromorgan wrote:
Fri Sep 04, 2020 3:50 am
valadaa48 wrote:
Fri Sep 04, 2020 1:38 am
@macromorgan I tried your 5.9 tree on Linux but it didn't get past the HK logo. Do you have a defconfig or config or has this kernel only been tested for android?
I should clarify this is not an Android kernel. Later tonight I will work on an Android kernel and post a defconfig. Note I think Android will need to be updated with Mesa instead of the current Mail stuff though; I’m not an expert on Android though (just handy with the kernel).

For reference I am testing on a Debian install I built myself with Debootstrap.
Thanks for the clarification. I'm only interested in compiling this for Linux at the moment so if you have an example config or defconfig then I'd be interested. Thanks!
Here is what I am using. Again it works for me on stock Debian.

https://gist.github.com/macromorgan/575 ... 9f829891d6
Thanks, it boots. It's a great start!

EDIT: updated experience
Good to hear.

So the video decoder (which lets face it, on a 480x320 screen gaming device isn't that important) might also already be upstreamed (https://git.kernel.org/pub/scm/linux/ke ... h=v5.9-rc3) too in the 5.9 staging drivers, I'll play with it later this weekend/next week. Assuming that DOES work, it basically means all we need to do to support the OGA on the 5.9 kernel is modify some devicetree bindings, do a few tweaks to the PM chip driver (to enable the audio codec), change some pins in the I2s driver (to enable the audio codec), and import the audio codec itself (with some pin defines included). Easy peasy.

valadaa48
Posts: 161
Joined: Mon Feb 17, 2020 1:35 pm
languages_spoken: english
ODROIDs: odroid go advance
Has thanked: 7 times
Been thanked: 34 times
Contact:

Re: Anybody working on Android for the Odroid-Go A?

Post by valadaa48 »

@macromorgan I added some missing wifi related kernel config options. https://github.com/valadaa48/rrvl/blob/ ... -odroidgo2

I still haven't managed to get RTL8812AU or ESP8089 working from dkms yet though. I suspect the wifi might be missing settings in the dts? The kernel module said it couldn't find it.

speaker-test -c 2 worked for me. DRM/KMS did not work for retroarch's vanilla drm graphics driver.

macromorgan
Posts: 30
Joined: Mon Dec 30, 2019 10:35 am
languages_spoken: english
ODROIDs: Odroid-GO
Has thanked: 0
Been thanked: 7 times
Contact:

Re: Anybody working on Android for the Odroid-Go A?

Post by macromorgan »

valadaa48 wrote:
Sat Sep 05, 2020 12:21 am
@macromorgan I added some missing wifi related kernel config options. https://github.com/valadaa48/rrvl/blob/ ... -odroidgo2

I still haven't managed to get RTL8812AU or ESP8089 working from dkms yet though. I suspect the wifi might be missing settings in the dts? The kernel module said it couldn't find it.

speaker-test -c 2 worked for me. DRM/KMS did not work for retroarch's vanilla drm graphics driver.
Yeah I technically couldn’t get it working either (DRM) but I assumed it was because I was doing something wrong with Mesa/X11. The render node was definitely present and dmesg said everything was fine.

The SDIO interface was disabled, and the ESP8089 was missing in the DT, which is why the Wifi isn’t working. I’ll try and add it this weekend if I have free time. It should be trivial though (just cut and paste the Wifi bits from the Hardkernel devicetree, set the SDIO from disabled to okay, and then compile the driver and it should just work).

valadaa48
Posts: 161
Joined: Mon Feb 17, 2020 1:35 pm
languages_spoken: english
ODROIDs: odroid go advance
Has thanked: 7 times
Been thanked: 34 times
Contact:

Re: Anybody working on Android for the Odroid-Go A?

Post by valadaa48 »

macromorgan wrote:
Sat Sep 05, 2020 12:29 pm
valadaa48 wrote:
Sat Sep 05, 2020 12:21 am
@macromorgan I added some missing wifi related kernel config options. https://github.com/valadaa48/rrvl/blob/ ... -odroidgo2

I still haven't managed to get RTL8812AU or ESP8089 working from dkms yet though. I suspect the wifi might be missing settings in the dts? The kernel module said it couldn't find it.

speaker-test -c 2 worked for me. DRM/KMS did not work for retroarch's vanilla drm graphics driver.
Yeah I technically couldn’t get it working either (DRM) but I assumed it was because I was doing something wrong with Mesa/X11. The render node was definitely present and dmesg said everything was fine.

The SDIO interface was disabled, and the ESP8089 was missing in the DT, which is why the Wifi isn’t working. I’ll try and add it this weekend if I have free time. It should be trivial though (just cut and paste the Wifi bits from the Hardkernel devicetree, set the SDIO from disabled to okay, and then compile the driver and it should just work).
I think it's really close. If we're going to use your repo as a base, then a defconfig would certainly be convenient. Let me know if you'd like me to supply one, but I think with all your effort you're probably best to act as the gatekeeper.

re: DRM, I'm not sure either... I think the retroarch driver may have been changed recently to use new DRM constructs that may be incompatible because I remember seeing this error even on kernel 4.4. I unfortunately ran out of spare microsds since I had to dedicate some for RRVL testing but I may try to compile an older retroarch version to see if it comes up. Alternatively, I may try wayland out and see how it performs. I think some env vars may be needed for acceleration from what I've read.

notime2d8
Posts: 160
Joined: Thu Dec 11, 2014 4:40 am
languages_spoken: english
Has thanked: 46 times
Been thanked: 76 times
Contact:

Re: Anybody working on Android for the Odroid-Go A?

Post by notime2d8 »

So i was poking around the kernel again looking for anything to increase the performance...I tried overclocking the ram and SD card neither of which made a difference. The ram overclock gave me some stability issues on one of 3 test i ran. But then i overclocked the GPU to 600mhz and i got a 4-7fps increase in a Dreamcast game!!!! followed by a major crash.... :oops:

Code: Select all

mali ff400000.gpu: JS: Job Hard-Stopped (took more than 50 ticks at 100 ms/tick)
mali ff400000.gpu: JS: Job has been on the GPU for too long (JS_RESET_TICKS_SS/DUMPING timeout hit). Issueing GPU soft-reset to resolve.
mali ff400000.gpu: Preparing to soft-reset GPU: Waiting (upto 3000 ms) for all jobs to complete soft-stop
mali ff400000.gpu: Resetting GPU (allowing up to 500 ms)
mali ff400000.gpu: Register state:
mali ff400000.gpu:   GPU_IRQ_RAWSTAT=0x00000200 GPU_STATUS=0x00000109
mali ff400000.gpu:   JOB_IRQ_RAWSTAT=0x00000000 JOB_IRQ_JS_STATE=0x00000002
mali ff400000.gpu:   JS0_STATUS=0x00000000      JS0_HEAD_LO=0xefe06f00
mali ff400000.gpu:   JS1_STATUS=0x00000008      JS1_HEAD_LO=0xddb7f100
mali ff400000.gpu:   JS2_STATUS=0x00000000      JS2_HEAD_LO=0x00000000
mali ff400000.gpu:   MMU_IRQ_RAWSTAT=0x00000000 GPU_FAULTSTATUS=0x00ff0388
mali ff400000.gpu:   GPU_IRQ_MASK=0x00000000    JOB_IRQ_MASK=0x00000000     MMU_IRQ_MASK=0x00000000
mali ff400000.gpu:   PWR_OVERRIDE0=0x00000000   PWR_OVERRIDE1=0x00000000
mali ff400000.gpu:   SHADER_CONFIG=0x00000000   L2_MMU_CONFIG=0x00000000
mali ff400000.gpu:   TILER_CONFIG=0x00000000    JM_CONFIG=0x00000000
mali ff400000.gpu: Reset complete
mali ff400000.gpu: t6xx: GPU fault 0x4002 from job slot 1
mali ff400000.gpu: t6xx: GPU fault 0x4002 from job slot 0
mali ff400000.gpu: GPU Fault 0x00ff0388 (SHAREABILITY_FAULT) at 0x0000000028627800
mali ff400000.gpu: There were multiple GPU faults - some have not been reported
The GPU actually reset, crashed again after a few minutes, and kept doing that until i exited out of the emulator. I'm going to try a smaller increment and also look into the voltage.., I foresee a new main-board in my future. :roll:


Edit: So no noticeable improvement from 520-580mhz . I went back to 600 to confirm the earlier fps increase but it's not stable and crashes.
These users thanked the author notime2d8 for the post:
odroid (Mon Sep 07, 2020 2:02 pm)
If I say something that sounds smart or like i know what i'm talking about....i'm faking it.

User avatar
rooted
Posts: 7974
Joined: Fri Dec 19, 2014 9:12 am
languages_spoken: english
Location: Gulf of Mexico, US
Has thanked: 724 times
Been thanked: 243 times
Contact:

Re: Anybody working on Android for the Odroid-Go A?

Post by rooted »

Did you increase the voltage of the GPU to match the increased frequency?

notime2d8
Posts: 160
Joined: Thu Dec 11, 2014 4:40 am
languages_spoken: english
Has thanked: 46 times
Been thanked: 76 times
Contact:

Re: Anybody working on Android for the Odroid-Go A?

Post by notime2d8 »

rooted wrote:
Mon Sep 07, 2020 5:25 pm
Did you increase the voltage of the GPU to match the increased frequency?
So i tried to but i don't think it worked. The stock kernel has this:

Code: Select all

&gpu_opp_table {
	opp-520000000 {
		opp-hz = /bits/ 64 <520000000>;
		opp-microvolt = <1175000>;
		opp-microvolt-L0 = <1175000>;
		opp-microvolt-L1 = <1150000>;
		opp-microvolt-L2 = <1100000>;
		opp-microvolt-L3 = <1050000>;
	};
But that was changed to below for the Go with the message "rk3326 max supply voltage for GPU is 1.15V.":

Code: Select all

&gpu_opp_table {
	opp-520000000 {
		opp-hz = /bits/ 64 <520000000>;
		opp-microvolt = <1150000>;
		opp-microvolt-L0 = <1150000>;
		opp-microvolt-L1 = <1150000>;
		opp-microvolt-L2 = <1100000>;
		opp-microvolt-L3 = <1050000>;
	};
And the regulator was set to this for the Go:

Code: Select all

			vdd_logic: DCDC_REG1 {
				regulator-always-on;
				regulator-boot-on;
				regulator-min-microvolt = <950000>;
				regulator-max-microvolt = <1150000>;
				regulator-ramp-delay = <6001>;
				regulator-initial-mode = <0x2>;
				regulator-name = "vdd_logic";
				regulator-state-mem {
					regulator-on-in-suspend;
					regulator-suspend-microvolt = <950000>;
				};
I need to find the doc for the CPU and regulator but the voltage may already be maxed out. The other few devices i found with this GPU have higher clocks Arm says 650mhz, Amlogic is using 800mhz...but i guess that doesn't matter as so many factors affect clock speeds.

Edit Rockchip has 1.10v as the recommended voltage and 1.15 as the absolute maximum for the GPU in the datasheet. Confused as to why they have 1.175 in the kernel

Edit 2: Under-volting to 1.10v also makes it crash sooner in menus.

Edit 3: Over-volting to 1.3 also makes it crash sooner in menus going to try values in between the two.
If I say something that sounds smart or like i know what i'm talking about....i'm faking it.

macromorgan
Posts: 30
Joined: Mon Dec 30, 2019 10:35 am
languages_spoken: english
ODROIDs: Odroid-GO
Has thanked: 0
Been thanked: 7 times
Contact:

Re: Anybody working on Android for the Odroid-Go A?

Post by macromorgan »

Working on my Android specific branch now. So far I got the proprietary Mali drivers included... and not much else. Not even the sound yet, but I'll get it eventually. It's uploading to Github now. I'm going to work on the linux specific branch to get the onboard Wifi going, then I will work on adding it all to the Android branch.

https://github.com/macromorgan/odroid_g ... ux_android

edit: Linux kernel branch has WiFi now. Will need to create specific device trees but otherwise the only “essential” missing functionality now is some PM stuff and the codecs”.

The Android branch is another matter. For some reason I can’t get it to detect the MMC card, the audio, and a lot of other stuff despite being the same kernel mostly. I’m almost wondering if it’s a u-boot problem?
Last edited by macromorgan on Wed Sep 09, 2020 10:27 pm, edited 1 time in total.

zpy3
Posts: 8
Joined: Sat Aug 22, 2020 12:47 pm
languages_spoken: english
ODROIDs: OGA1.0,OGA1.1
Has thanked: 1 time
Been thanked: 0
Contact:

Re: Anybody working on Android for the Odroid-Go A?

Post by zpy3 »

notime2d8 wrote:
Mon Aug 31, 2020 5:10 am
So I have some good news and bad news:

The good is that I got lineage recovery working. You can boot into it and flash zips like normal.

The bad news is that magisk doesn't work. In hindsight I should've looked at the magisk patch... But it tries to patch the boot.img and ramdisk. Neither of which we use.

So im going to look back into manually adding magisk. I'm also going to try to setup an actual GitHub repo for LineageOS 17.1 so others can build it easily. I've been putting this off because of not having time and people using my work without giving credit. But that is life. We have an awesome community, I'm hoping we can get more involved and others building it to make a better end product.

So I'm going to setup a GitHub may ask @macromorgan to help with this, do one more release with a few tweaks, latest repo sync, and recovery soonish. Then I'm going to try a few things like Android 11 bring up, patching u-boot for better Android support, and moving over to the kernel @macromorgan is working on, and trying out the panfrost driver. So it may be a while before I do another "release" for those who are using the builds I did. I also need to do some guides and instructions for things like adb over WiFi. I've been wanting to ask for logs of crashes from apps but had no easy way to advise on how to get them.

It would also be worthwhile if someone could pickup building LineageOS 16 so we can have root and maybe wifi display with a USB WiFi dongle. I patched 17.1 with wifi display to find my TV's and connect but error out and not display. But other devices had it working for Los 16.0.

Sorry for the long post.
What is the current progress of magisk? Have you encountered any difficulties?

macromorgan
Posts: 30
Joined: Mon Dec 30, 2019 10:35 am
languages_spoken: english
ODROIDs: Odroid-GO
Has thanked: 0
Been thanked: 7 times
Contact:

Re: Anybody working on Android for the Odroid-Go A?

Post by macromorgan »

macromorgan wrote:
Tue Sep 08, 2020 10:41 am
Working on my Android specific branch now. So far I got the proprietary Mali drivers included... and not much else. Not even the sound yet, but I'll get it eventually. It's uploading to Github now. I'm going to work on the linux specific branch to get the onboard Wifi going, then I will work on adding it all to the Android branch.

https://github.com/macromorgan/odroid_g ... ux_android

edit: Linux kernel branch has WiFi now. Will need to create specific device trees but otherwise the only “essential” missing functionality now is some PM stuff and the codecs”.

The Android branch is another matter. For some reason I can’t get it to detect the MMC card, the audio, and a lot of other stuff despite being the same kernel mostly. I’m almost wondering if it’s a u-boot problem?
Okay, so for now I'm going to halt Android 5.9 and work back on 4.19/4.4. For some reason on 5.9 I cannot for the life of me get the SDMMC controller (SDIO works, puzzlingly enough and with the same driver), the audio, or the PMIC (probably why sound doesn't work since it's built in the PMIC) to work. It's almost like the drivers just won't load, even though the bindings are identical. I've confirmed that it's not the kernel command line, U-boot, the devicetree, or anything else that could be the cause. It's got to be something in the Android specific parts of the kernel itself, but fuck me if I know what. I'll let it bake a bit longer with Google (it's still rc4 upstream after all).

notime2d8
Posts: 160
Joined: Thu Dec 11, 2014 4:40 am
languages_spoken: english
Has thanked: 46 times
Been thanked: 76 times
Contact:

Re: Anybody working on Android for the Odroid-Go A?

Post by notime2d8 »

macromorgan wrote:
Thu Sep 10, 2020 9:53 am
macromorgan wrote:
Tue Sep 08, 2020 10:41 am
Working on my Android specific branch now. So far I got the proprietary Mali drivers included... and not much else. Not even the sound yet, but I'll get it eventually. It's uploading to Github now. I'm going to work on the linux specific branch to get the onboard Wifi going, then I will work on adding it all to the Android branch.

https://github.com/macromorgan/odroid_g ... ux_android

edit: Linux kernel branch has WiFi now. Will need to create specific device trees but otherwise the only “essential” missing functionality now is some PM stuff and the codecs”.

The Android branch is another matter. For some reason I can’t get it to detect the MMC card, the audio, and a lot of other stuff despite being the same kernel mostly. I’m almost wondering if it’s a u-boot problem?
Okay, so for now I'm going to halt Android 5.9 and work back on 4.19/4.4. For some reason on 5.9 I cannot for the life of me get the SDMMC controller (SDIO works, puzzlingly enough and with the same driver), the audio, or the PMIC (probably why sound doesn't work since it's built in the PMIC) to work. It's almost like the drivers just won't load, even though the bindings are identical. I've confirmed that it's not the kernel command line, U-boot, the devicetree, or anything else that could be the cause. It's got to be something in the Android specific parts of the kernel itself, but fuck me if I know what. I'll let it bake a bit longer with Google (it's still rc4 upstream after all).
Funny that you mentioned that...i was just staring at my screen confused when i tried to boot it... but yeah no clue on what caused it. I'm going to try booting Android on your Linux kernel.

Code: Select all

Booting Linux on physical CPU 0x0000000000 [0x410fd042]
Linux version 5.9.0-rc4 (ken@ken-HP-EliteBook-2570p) (aarch64-linux-gnu-gcc (Linaro GCC 7.5-2019.12) 7.5.0, GNU ld (Linaro_Binutils-2019.12) 2.0
Machine model: ODROID-GO Advance
cma: Reserved 16 MiB at 0x000000003f000000
Zone ranges:
  DMA      [mem 0x0000000000200000-0x000000003fffffff]
  DMA32    empty
  Normal   empty
Movable zone start for each node
Early memory node ranges
  node   0: [mem 0x0000000000200000-0x00000000083fffff]
  node   0: [mem 0x000000000a200000-0x000000003fffffff]
Initmem setup node 0 [mem 0x0000000000200000-0x000000003fffffff]

Synopsys Designware Multimedia Card Interface Driver
dwmmc_rockchip ff380000.mmc: IDMAC supports 32-bit address mode.
dwmmc_rockchip ff380000.mmc: Using internal DMA controller.
dwmmc_rockchip ff380000.mmc: Version ID is 270a
dwmmc_rockchip ff380000.mmc: DW MMC controller at irq 22,32 bit host data width,256 deep fifo
mmc_host mmc0: Bus speed (slot 0) = 400000Hz (slot req 400000Hz, actual 400000HZ div = 0)

mmc0: queuing unknown CIS tuple 0x1b (8 bytes)
mmc_host mmc0: Bus speed (slot 0) = 50000000Hz (slot req 50000000Hz, actual 50000000HZ div = 0)
IPVS: Connection hash table configured (size=4096, memory=64Kbytes)
mmc0: queuing unknown CIS tuple 0x80 (1 bytes)
mmc0: queuing unknown CIS tuple 0x81 (1 bytes)
IPVS: ipvs loaded.
mmc0: queuing unknown CIS tuple 0x82 (1 bytes)
IPVS: [rr] scheduler registered.
mmc0: new high speed SDIO card at address 0001

usb 1-1: New USB device found, idVendor=046d, idProduct=c534, bcdDevice=29.01
cfg80211: Loading compiled-in X.509 certificates for regulatory database
usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
cfg80211: Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7'
usb 1-1: Product: USB Receiver
platform regulatory.0: Direct firmware load for regulatory.db failed with error -2
usb 1-1: Manufacturer: Logitech
ALSA device list:
  No soundcards found.
cfg80211: failed to load regulatory.db
input: Logitech USB Receiver as /devices/platform/ff300000.usb/usb1/1-1/1-1:1.0/0003:046D:C534.0001/input/input0
dw-apb-uart ff160000.serial: forbid DMA for kernel console
hid-generic 0003:046D:C534.0001: input,hidraw0: USB HID v1.11 Keyboard [Logitech USB Receiver] on usb-ff300000.usb-1/input0
input: Logitech USB Receiver Mouse as /devices/platform/ff300000.usb/usb1/1-1/1-1:1.1/0003:046D:C534.0002/input/input1
input: Logitech USB Receiver Consumer Control as /devices/platform/ff300000.usb/usb1/1-1/1-1:1.1/0003:046D:C534.0002/input/input2
input: Logitech USB Receiver System Control as /devices/platform/ff300000.usb/usb1/1-1/1-1:1.1/0003:046D:C534.0002/input/input3
hid-generic 0003:046D:C534.0002: input,hiddev96,hidraw1: USB HID v1.11 Mouse [Logitech USB Receiver] on usb-ff300000.usb-1/input1
Waiting for root device /dev/mmcblk0p2...
If I say something that sounds smart or like i know what i'm talking about....i'm faking it.

macromorgan
Posts: 30
Joined: Mon Dec 30, 2019 10:35 am
languages_spoken: english
ODROIDs: Odroid-GO
Has thanked: 0
Been thanked: 7 times
Contact:

Re: Anybody working on Android for the Odroid-Go A?

Post by macromorgan »

notime2d8 wrote:
Thu Sep 10, 2020 10:12 am
macromorgan wrote:
Thu Sep 10, 2020 9:53 am
macromorgan wrote:
Tue Sep 08, 2020 10:41 am
Working on my Android specific branch now. So far I got the proprietary Mali drivers included... and not much else. Not even the sound yet, but I'll get it eventually. It's uploading to Github now. I'm going to work on the linux specific branch to get the onboard Wifi going, then I will work on adding it all to the Android branch.

https://github.com/macromorgan/odroid_g ... ux_android

edit: Linux kernel branch has WiFi now. Will need to create specific device trees but otherwise the only “essential” missing functionality now is some PM stuff and the codecs”.

The Android branch is another matter. For some reason I can’t get it to detect the MMC card, the audio, and a lot of other stuff despite being the same kernel mostly. I’m almost wondering if it’s a u-boot problem?
Okay, so for now I'm going to halt Android 5.9 and work back on 4.19/4.4. For some reason on 5.9 I cannot for the life of me get the SDMMC controller (SDIO works, puzzlingly enough and with the same driver), the audio, or the PMIC (probably why sound doesn't work since it's built in the PMIC) to work. It's almost like the drivers just won't load, even though the bindings are identical. I've confirmed that it's not the kernel command line, U-boot, the devicetree, or anything else that could be the cause. It's got to be something in the Android specific parts of the kernel itself, but fuck me if I know what. I'll let it bake a bit longer with Google (it's still rc4 upstream after all).
Funny that you mentioned that...i was just staring at my screen confused when i tried to boot it... but yeah no clue on what caused it. I'm going to try booting Android on your Linux kernel.

Code: Select all

Booting Linux on physical CPU 0x0000000000 [0x410fd042]
Linux version 5.9.0-rc4 (ken@ken-HP-EliteBook-2570p) (aarch64-linux-gnu-gcc (Linaro GCC 7.5-2019.12) 7.5.0, GNU ld (Linaro_Binutils-2019.12) 2.0
Machine model: ODROID-GO Advance
cma: Reserved 16 MiB at 0x000000003f000000
Zone ranges:
  DMA      [mem 0x0000000000200000-0x000000003fffffff]
  DMA32    empty
  Normal   empty
Movable zone start for each node
Early memory node ranges
  node   0: [mem 0x0000000000200000-0x00000000083fffff]
  node   0: [mem 0x000000000a200000-0x000000003fffffff]
Initmem setup node 0 [mem 0x0000000000200000-0x000000003fffffff]

Synopsys Designware Multimedia Card Interface Driver
dwmmc_rockchip ff380000.mmc: IDMAC supports 32-bit address mode.
dwmmc_rockchip ff380000.mmc: Using internal DMA controller.
dwmmc_rockchip ff380000.mmc: Version ID is 270a
dwmmc_rockchip ff380000.mmc: DW MMC controller at irq 22,32 bit host data width,256 deep fifo
mmc_host mmc0: Bus speed (slot 0) = 400000Hz (slot req 400000Hz, actual 400000HZ div = 0)

mmc0: queuing unknown CIS tuple 0x1b (8 bytes)
mmc_host mmc0: Bus speed (slot 0) = 50000000Hz (slot req 50000000Hz, actual 50000000HZ div = 0)
IPVS: Connection hash table configured (size=4096, memory=64Kbytes)
mmc0: queuing unknown CIS tuple 0x80 (1 bytes)
mmc0: queuing unknown CIS tuple 0x81 (1 bytes)
IPVS: ipvs loaded.
mmc0: queuing unknown CIS tuple 0x82 (1 bytes)
IPVS: [rr] scheduler registered.
mmc0: new high speed SDIO card at address 0001

usb 1-1: New USB device found, idVendor=046d, idProduct=c534, bcdDevice=29.01
cfg80211: Loading compiled-in X.509 certificates for regulatory database
usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
cfg80211: Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7'
usb 1-1: Product: USB Receiver
platform regulatory.0: Direct firmware load for regulatory.db failed with error -2
usb 1-1: Manufacturer: Logitech
ALSA device list:
  No soundcards found.
cfg80211: failed to load regulatory.db
input: Logitech USB Receiver as /devices/platform/ff300000.usb/usb1/1-1/1-1:1.0/0003:046D:C534.0001/input/input0
dw-apb-uart ff160000.serial: forbid DMA for kernel console
hid-generic 0003:046D:C534.0001: input,hidraw0: USB HID v1.11 Keyboard [Logitech USB Receiver] on usb-ff300000.usb-1/input0
input: Logitech USB Receiver Mouse as /devices/platform/ff300000.usb/usb1/1-1/1-1:1.1/0003:046D:C534.0002/input/input1
input: Logitech USB Receiver Consumer Control as /devices/platform/ff300000.usb/usb1/1-1/1-1:1.1/0003:046D:C534.0002/input/input2
input: Logitech USB Receiver System Control as /devices/platform/ff300000.usb/usb1/1-1/1-1:1.1/0003:046D:C534.0002/input/input3
hid-generic 0003:046D:C534.0002: input,hiddev96,hidraw1: USB HID v1.11 Mouse [Logitech USB Receiver] on usb-ff300000.usb-1/input1
Waiting for root device /dev/mmcblk0p2...
I'm more of a kernel/raw Linux guy than an Android guy, but I didn't think Android would boot without the Ion memory manager and a few other pieces in their fork of the kernel?

macromorgan
Posts: 30
Joined: Mon Dec 30, 2019 10:35 am
languages_spoken: english
ODROIDs: Odroid-GO
Has thanked: 0
Been thanked: 7 times
Contact:

Re: Anybody working on Android for the Odroid-Go A?

Post by macromorgan »

macromorgan wrote:
Fri Sep 11, 2020 12:14 am
notime2d8 wrote:
Thu Sep 10, 2020 10:12 am
macromorgan wrote:
Thu Sep 10, 2020 9:53 am
macromorgan wrote:
Tue Sep 08, 2020 10:41 am
Working on my Android specific branch now. So far I got the proprietary Mali drivers included... and not much else. Not even the sound yet, but I'll get it eventually. It's uploading to Github now. I'm going to work on the linux specific branch to get the onboard Wifi going, then I will work on adding it all to the Android branch.

https://github.com/macromorgan/odroid_g ... ux_android

edit: Linux kernel branch has WiFi now. Will need to create specific device trees but otherwise the only “essential” missing functionality now is some PM stuff and the codecs”.

The Android branch is another matter. For some reason I can’t get it to detect the MMC card, the audio, and a lot of other stuff despite being the same kernel mostly. I’m almost wondering if it’s a u-boot problem?
Okay, so for now I'm going to halt Android 5.9 and work back on 4.19/4.4. For some reason on 5.9 I cannot for the life of me get the SDMMC controller (SDIO works, puzzlingly enough and with the same driver), the audio, or the PMIC (probably why sound doesn't work since it's built in the PMIC) to work. It's almost like the drivers just won't load, even though the bindings are identical. I've confirmed that it's not the kernel command line, U-boot, the devicetree, or anything else that could be the cause. It's got to be something in the Android specific parts of the kernel itself, but fuck me if I know what. I'll let it bake a bit longer with Google (it's still rc4 upstream after all).
Funny that you mentioned that...i was just staring at my screen confused when i tried to boot it... but yeah no clue on what caused it. I'm going to try booting Android on your Linux kernel.

Code: Select all

Booting Linux on physical CPU 0x0000000000 [0x410fd042]
Linux version 5.9.0-rc4 (ken@ken-HP-EliteBook-2570p) (aarch64-linux-gnu-gcc (Linaro GCC 7.5-2019.12) 7.5.0, GNU ld (Linaro_Binutils-2019.12) 2.0
Machine model: ODROID-GO Advance
cma: Reserved 16 MiB at 0x000000003f000000
Zone ranges:
  DMA      [mem 0x0000000000200000-0x000000003fffffff]
  DMA32    empty
  Normal   empty
Movable zone start for each node
Early memory node ranges
  node   0: [mem 0x0000000000200000-0x00000000083fffff]
  node   0: [mem 0x000000000a200000-0x000000003fffffff]
Initmem setup node 0 [mem 0x0000000000200000-0x000000003fffffff]

Synopsys Designware Multimedia Card Interface Driver
dwmmc_rockchip ff380000.mmc: IDMAC supports 32-bit address mode.
dwmmc_rockchip ff380000.mmc: Using internal DMA controller.
dwmmc_rockchip ff380000.mmc: Version ID is 270a
dwmmc_rockchip ff380000.mmc: DW MMC controller at irq 22,32 bit host data width,256 deep fifo
mmc_host mmc0: Bus speed (slot 0) = 400000Hz (slot req 400000Hz, actual 400000HZ div = 0)

mmc0: queuing unknown CIS tuple 0x1b (8 bytes)
mmc_host mmc0: Bus speed (slot 0) = 50000000Hz (slot req 50000000Hz, actual 50000000HZ div = 0)
IPVS: Connection hash table configured (size=4096, memory=64Kbytes)
mmc0: queuing unknown CIS tuple 0x80 (1 bytes)
mmc0: queuing unknown CIS tuple 0x81 (1 bytes)
IPVS: ipvs loaded.
mmc0: queuing unknown CIS tuple 0x82 (1 bytes)
IPVS: [rr] scheduler registered.
mmc0: new high speed SDIO card at address 0001

usb 1-1: New USB device found, idVendor=046d, idProduct=c534, bcdDevice=29.01
cfg80211: Loading compiled-in X.509 certificates for regulatory database
usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
cfg80211: Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7'
usb 1-1: Product: USB Receiver
platform regulatory.0: Direct firmware load for regulatory.db failed with error -2
usb 1-1: Manufacturer: Logitech
ALSA device list:
  No soundcards found.
cfg80211: failed to load regulatory.db
input: Logitech USB Receiver as /devices/platform/ff300000.usb/usb1/1-1/1-1:1.0/0003:046D:C534.0001/input/input0
dw-apb-uart ff160000.serial: forbid DMA for kernel console
hid-generic 0003:046D:C534.0001: input,hidraw0: USB HID v1.11 Keyboard [Logitech USB Receiver] on usb-ff300000.usb-1/input0
input: Logitech USB Receiver Mouse as /devices/platform/ff300000.usb/usb1/1-1/1-1:1.1/0003:046D:C534.0002/input/input1
input: Logitech USB Receiver Consumer Control as /devices/platform/ff300000.usb/usb1/1-1/1-1:1.1/0003:046D:C534.0002/input/input2
input: Logitech USB Receiver System Control as /devices/platform/ff300000.usb/usb1/1-1/1-1:1.1/0003:046D:C534.0002/input/input3
hid-generic 0003:046D:C534.0002: input,hiddev96,hidraw1: USB HID v1.11 Mouse [Logitech USB Receiver] on usb-ff300000.usb-1/input1
Waiting for root device /dev/mmcblk0p2...
I'm more of a kernel/raw Linux guy than an Android guy, but I didn't think Android would boot without the Ion memory manager and a few other pieces in their fork of the kernel?
Damnest thing, but now I'm trying on a 4.19 Android kernel porting over the patches, and I STILL can't get the PMIC to kick on. Same as before it's there, but it won't get picked up. I'm at a loss...

edit: Figured it out. In Android there are special patches in the drivers/base/core.c module on the 4.19 branch to load drivers that tell it to not freeze on devices and just keep trying to probe until it's available. On 5.9 there are no more patches since the functionality was upstreamed, but Android sets the default value from "permissive" to "on" which is why it won't load on Android but will on mainline. If you use the bootarg of "fw_devlink=permissive" in your kernel command line the kernel will boot.

Still working some more bugs out, but at least now I can see the root filesystem and sound card and initialize the PMIC on the 5.9 Android branch. The Android build you did crashes on loading the /init function because of some SELinux issue, but I don't know anything about that (the important thing is it looks like the kernel builds now).
These users thanked the author macromorgan for the post:
notime2d8 (Wed Sep 16, 2020 9:22 am)

macromorgan
Posts: 30
Joined: Mon Dec 30, 2019 10:35 am
languages_spoken: english
ODROIDs: Odroid-GO
Has thanked: 0
Been thanked: 7 times
Contact:

Re: Anybody working on Android for the Odroid-Go A?

Post by macromorgan »

I posted a few more changes to make the Android kernel now build as part of the Android build tree. I can generate a boot.img but can’t get u-boot to boot it. Still hammering away at it though.

As for the codec hardware, aside from the register layout and a workaround for init-ing the hardware it looks identical to the RK3399 which is supported in the mainline kernel (not all encoding/decoding functions, but the ones that matter). I’ll see what it takes to add it too.
These users thanked the author macromorgan for the post:
notime2d8 (Wed Sep 16, 2020 9:23 am)

User avatar
rooted
Posts: 7974
Joined: Fri Dec 19, 2014 9:12 am
languages_spoken: english
Location: Gulf of Mexico, US
Has thanked: 724 times
Been thanked: 243 times
Contact:

Re: Anybody working on Android for the Odroid-Go A?

Post by rooted »

Making some nice progress, thanks for continuing to update us.

notime2d8
Posts: 160
Joined: Thu Dec 11, 2014 4:40 am
languages_spoken: english
Has thanked: 46 times
Been thanked: 76 times
Contact:

Re: Anybody working on Android for the Odroid-Go A?

Post by notime2d8 »

macromorgan wrote:
Fri Sep 11, 2020 7:52 am
macromorgan wrote:
Fri Sep 11, 2020 12:14 am
notime2d8 wrote:
Thu Sep 10, 2020 10:12 am
macromorgan wrote:
Thu Sep 10, 2020 9:53 am
macromorgan wrote:
Tue Sep 08, 2020 10:41 am
Working on my Android specific branch now. So far I got the proprietary Mali drivers included... and not much else. Not even the sound yet, but I'll get it eventually. It's uploading to Github now. I'm going to work on the linux specific branch to get the onboard Wifi going, then I will work on adding it all to the Android branch.

https://github.com/macromorgan/odroid_g ... ux_android

edit: Linux kernel branch has WiFi now. Will need to create specific device trees but otherwise the only “essential” missing functionality now is some PM stuff and the codecs”.

The Android branch is another matter. For some reason I can’t get it to detect the MMC card, the audio, and a lot of other stuff despite being the same kernel mostly. I’m almost wondering if it’s a u-boot problem?
Okay, so for now I'm going to halt Android 5.9 and work back on 4.19/4.4. For some reason on 5.9 I cannot for the life of me get the SDMMC controller (SDIO works, puzzlingly enough and with the same driver), the audio, or the PMIC (probably why sound doesn't work since it's built in the PMIC) to work. It's almost like the drivers just won't load, even though the bindings are identical. I've confirmed that it's not the kernel command line, U-boot, the devicetree, or anything else that could be the cause. It's got to be something in the Android specific parts of the kernel itself, but fuck me if I know what. I'll let it bake a bit longer with Google (it's still rc4 upstream after all).
Funny that you mentioned that...i was just staring at my screen confused when i tried to boot it... but yeah no clue on what caused it. I'm going to try booting Android on your Linux kernel.
I'm more of a kernel/raw Linux guy than an Android guy, but I didn't think Android would boot without the Ion memory manager and a few other pieces in their fork of the kernel?
Damnest thing, but now I'm trying on a 4.19 Android kernel porting over the patches, and I STILL can't get the PMIC to kick on. Same as before it's there, but it won't get picked up. I'm at a loss...

edit: Figured it out. In Android there are special patches in the drivers/base/core.c module on the 4.19 branch to load drivers that tell it to not freeze on devices and just keep trying to probe until it's available. On 5.9 there are no more patches since the functionality was upstreamed, but Android sets the default value from "permissive" to "on" which is why it won't load on Android but will on mainline. If you use the bootarg of "fw_devlink=permissive" in your kernel command line the kernel will boot.

Still working some more bugs out, but at least now I can see the root filesystem and sound card and initialize the PMIC on the 5.9 Android branch. The Android build you did crashes on loading the /init function because of some SELinux issue, but I don't know anything about that (the important thing is it looks like the kernel builds now).
Cool, I missed these updates somehow. I'll try building it again later. And yes Android requires selinux or Init panics for not being able to locate the directory for it.

Also I was able to get a mouse mode working that uses the d-pad it still needs a few tweaks but that was one of the major request people kept asking about.

And Rockchip officially released their 4.19 kernel on their GitHub. I got it to boot but it still has the screen initialization issue and the screen gets artifacts in certain situations. Hoping to switch to yours and settle on a kernel.

I also added most of the files I use to build Android to my GitHub except for changes to platform/system/core. I couldn't import the folder to my GitHub for some reason.
And it's looking like I can't do a local manifest to pull in the changes to make building Android easier. I will need to do full manifest with all the packages listed along with the seven or so specified to pull from my GitHub.
If I say something that sounds smart or like i know what i'm talking about....i'm faking it.

macromorgan
Posts: 30
Joined: Mon Dec 30, 2019 10:35 am
languages_spoken: english
ODROIDs: Odroid-GO
Has thanked: 0
Been thanked: 7 times
Contact:

Re: Anybody working on Android for the Odroid-Go A?

Post by macromorgan »

notime2d8 wrote:
Wed Sep 16, 2020 9:49 am
Cool, I missed these updates somehow. I'll try building it again later. And yes Android requires selinux or Init panics for not being able to locate the directory for it.

Also I was able to get a mouse mode working that uses the d-pad it still needs a few tweaks but that was one of the major request people kept asking about.

And Rockchip officially released their 4.19 kernel on their GitHub. I got it to boot but it still has the screen initialization issue and the screen gets artifacts in certain situations. Hoping to switch to yours and settle on a kernel.

I also added most of the files I use to build Android to my GitHub except for changes to platform/system/core. I couldn't import the folder to my GitHub for some reason.
And it's looking like I can't do a local manifest to pull in the changes to make building Android easier. I will need to do full manifest with all the packages listed along with the seven or so specified to pull from my GitHub.
Do you by chance know what I'm missing? I'm thinking it's kernel based since it's doing this where the 4.19 kernel works fine. The exact issue is here in the init process:

Code: Select all

init: mount("selinuxfs", "/sys/fs/selinux", "selinuxfs", 0, NULL) failed No such file or directory
The thing is, I have sysfs and selinux enabled, so I'm not sure what it could be.

notime2d8
Posts: 160
Joined: Thu Dec 11, 2014 4:40 am
languages_spoken: english
Has thanked: 46 times
Been thanked: 76 times
Contact:

Re: Anybody working on Android for the Odroid-Go A?

Post by notime2d8 »

macromorgan wrote:
Wed Sep 16, 2020 11:03 am
notime2d8 wrote:
Wed Sep 16, 2020 9:49 am
Cool, I missed these updates somehow. I'll try building it again later. And yes Android requires selinux or Init panics for not being able to locate the directory for it.

Also I was able to get a mouse mode working that uses the d-pad it still needs a few tweaks but that was one of the major request people kept asking about.

And Rockchip officially released their 4.19 kernel on their GitHub. I got it to boot but it still has the screen initialization issue and the screen gets artifacts in certain situations. Hoping to switch to yours and settle on a kernel.

I also added most of the files I use to build Android to my GitHub except for changes to platform/system/core. I couldn't import the folder to my GitHub for some reason.
And it's looking like I can't do a local manifest to pull in the changes to make building Android easier. I will need to do full manifest with all the packages listed along with the seven or so specified to pull from my GitHub.
Do you by chance know what I'm missing? I'm thinking it's kernel based since it's doing this where the 4.19 kernel works fine. The exact issue is here in the init process:

Code: Select all

init: mount("selinuxfs", "/sys/fs/selinux", "selinuxfs", 0, NULL) failed No such file or directory
The thing is, I have sysfs and selinux enabled, so I'm not sure what it could be.
Do you have this selected? It's an option to select the default security model towards the end of the security options?

Code: Select all

DEFAULT_SECURITY_SELINUX [=y]  
If I say something that sounds smart or like i know what i'm talking about....i'm faking it.

macromorgan
Posts: 30
Joined: Mon Dec 30, 2019 10:35 am
languages_spoken: english
ODROIDs: Odroid-GO
Has thanked: 0
Been thanked: 7 times
Contact:

Re: Anybody working on Android for the Odroid-Go A?

Post by macromorgan »

notime2d8 wrote:
Wed Sep 16, 2020 11:34 am
macromorgan wrote:
Wed Sep 16, 2020 11:03 am
notime2d8 wrote:
Wed Sep 16, 2020 9:49 am
Cool, I missed these updates somehow. I'll try building it again later. And yes Android requires selinux or Init panics for not being able to locate the directory for it.

Also I was able to get a mouse mode working that uses the d-pad it still needs a few tweaks but that was one of the major request people kept asking about.

And Rockchip officially released their 4.19 kernel on their GitHub. I got it to boot but it still has the screen initialization issue and the screen gets artifacts in certain situations. Hoping to switch to yours and settle on a kernel.

I also added most of the files I use to build Android to my GitHub except for changes to platform/system/core. I couldn't import the folder to my GitHub for some reason.
And it's looking like I can't do a local manifest to pull in the changes to make building Android easier. I will need to do full manifest with all the packages listed along with the seven or so specified to pull from my GitHub.
Do you by chance know what I'm missing? I'm thinking it's kernel based since it's doing this where the 4.19 kernel works fine. The exact issue is here in the init process:

Code: Select all

init: mount("selinuxfs", "/sys/fs/selinux", "selinuxfs", 0, NULL) failed No such file or directory
The thing is, I have sysfs and selinux enabled, so I'm not sure what it could be.
Do you have this selected? It's an option to select the default security model towards the end of the security options?

Code: Select all

DEFAULT_SECURITY_SELINUX [=y]  
Yes, if you want you can see my config on the Android branch on my github.

edit: So the Linux kernel on my github (closer to mainline since it's a direct fork of Linus's tree) also doesn't work with sysfs. Interesting...

edit2: figured it out. The option of DEFAULT_SECURITY_SELINUX doesn't really do anything anymore. Setting CONFIG_LSM to = selinux,integrity did enable SELinux. I pushed a commit to the defconfig on my android tree. Now something else is failing in the init process (of course) but I'm too tired to figure it out tonight.

Code: Select all

init: init first stage started!
init: [libfs_mgr]ReadFstabFromDt(): failed to read fstab from dt
init: [libfs_mgr]Warning: unknown flag: inline_data
init: [libfs_mgr]Warning: unknown flag: inline_xattr
init: [libfs_mgr]Warning: unknown flag: discard
init: Using Android DT directory /proc/device-tree/firmware/android/
init: [libfs_mgr]superblock s_max_mnt_count:65535,/dev/block/mmcblk0p2
init: [libfs_mgr]__mount(source=/dev/block/mmcblk0p2,target=/system,type=ext4)=0: Success
init: Switching root to '/system'
init: [libfs_mgr]superblock s_max_mnt_count:65535,/dev/block/mmcblk0p3
EXT4-fs (mmcblk0p3): Ignoring removed nomblk_io_submit option
EXT4-fs (mmcblk0p3): warning: mounting unchecked fs, running e2fsck is recommended
EXT4-fs (mmcblk0p3): mounted filesystem without journal. Opts: errors=remount-ro,nomblk_io_submit
e2fsck: executing /system/bin/e2fsck failed: No such file or directory

e2fsck: e2fsck terminated by exit(255)

EXT4-fs (mmcblk0p3): mounted filesystem without journal. Opts: barrier=1
printk: init: 7 output lines suppressed due to ratelimiting
init: Loading SELinux policy
SELinux:  Permission nlmsg_readpriv in class netlink_route_socket not defined in policy.
SELinux:  Permission perfmon in class capability2 not defined in policy.
SELinux:  Permission bpf in class capability2 not defined in policy.
SELinux:  Permission checkpoint_restore in class capability2 not defined in policy.
SELinux:  Permission perfmon in class cap2_userns not defined in policy.
SELinux:  Permission bpf in class cap2_userns not defined in policy.
SELinux:  Permission checkpoint_restore in class cap2_userns not defined in policy.
SELinux:  Class perf_event not defined in policy.
SELinux: the above unknown classes and permissions will be denied
SELinux:  policy capability network_peer_controls=1
SELinux:  policy capability open_perms=1
SELinux:  policy capability extended_socket_class=1
SELinux:  policy capability always_check_network=0
SELinux:  policy capability cgroup_seclabel=0
SELinux:  policy capability nnp_nosuid_transition=1
SELinux:  policy capability genfs_seclabel_symlinks=0
audit: type=1403 audit(1600230613.837:2): auid=4294967295 ses=4294967295 lsm=selinux res=1
selinux: SELinux: Loaded policy from /vendor/etc/selinux/precompiled_sepolicy

selinux: SELinux: Loaded file_contexts

init: init second stage started!
init: Using Android DT directory /proc/device-tree/firmware/android/
selinux: SELinux: Loaded file_contexts

init: Running restorecon...
selinux: avc:  denied  { set } for property=pm.sleep_mode pid=1 uid=0 gid=0 scontext=u:r:vendor_init:s0 tcontext=u:object_r:pm_prop:s0 tclass=property_service permissive=1

init: Couldn't load property file '/product_services/build.prop': open() failed: No such file or directory: No such file or directory
init: Couldn't load property file '/factory/factory.prop': open() failed: No such file or directory: No such file or directory
init: Setting product property ro.product.brand to 'ODROID' (from ro.product.odm.brand)
init: Setting product property ro.product.device to 'odroidgoa' (from ro.product.odm.device)
init: Setting product property ro.product.manufacturer to 'HardKernel Co., Ltd.' (from ro.product.odm.manufacturer)
cgroup: Unknown subsys name 'blkio'
cgroup: Unknown subsys name 'schedtune'
cgroup: init (1) created nested cgroup for controller "memory" which has incomplete hierarchy support. Nested cgroups may change behavior in the future.
cgroup: "memory" requires setting use_hierarchy to 1 on the root
ueventd: ueventd started!
selinux: SELinux: Loaded file_contexts

ueventd: Parsing file /ueventd.rc...
ueventd: Parsing file /vendor/ueventd.rc...
ueventd: Unable to read config file '/vendor/ueventd.rc': open() failed: No such file or directory
ueventd: Parsing file /odm/ueventd.rc...
ueventd: Unable to read config file '/odm/ueventd.rc': open() failed: No such file or directory
ueventd: Parsing file /ueventd.odroidgoa.rc...
apexd: Bootstrap subcommand detected
apexd: wait for '/dev/loop-control' took 203ms
audit: type=1400 audit(1600230614.846:3): avc:  denied  { write } for  pid=28 comm="kdevtmpfs" name="/" dev="devtmpfs" ino=1 scontext=u:r:kernel:s0 tcontext=u:object_r:device:s0 tclass=dir permissive=1
apexd: Pre-allocated 9 loopback devices
audit: type=1400 audit(1600230614.846:4): avc:  denied  { mknod } for  pid=28 comm="kdevtmpfs" capability=27  scontext=u:r:kernel:s0 tcontext=u:r:kernel:s0 tclass=capability permissive=1
apexd: Scanning /system/apex for embedded keys
audit: type=1400 audit(1600230614.846:5): avc:  denied  { add_name } for  pid=28 comm="kdevtmpfs" name="loop8" scontext=u:r:kernel:s0 tcontext=u:object_r:device:s0 tclass=dir permissive=1
vendor storage:20190527 ret = -1
apexd: Scanning /product/apex for embedded keys
apexd: ... does not exist. Skipping
apexd: Scanning /system/apex looking for APEX packages.
apexd: Found /system/apex/com.android.media.apex
apexd: Skipped when bootstrapping
apexd: Found /system/apex/com.android.runtime.debug.apex
audit: type=1400 audit(1600230614.846:6): avc:  denied  { create } for  pid=28 comm="kdevtmpfs" name="loop8" scontext=u:r:kernel:s0 tcontext=u:object_r:device:s0 tclass=blk_file permissive=1
audit: type=1400 audit(1600230614.846:7): avc:  denied  { setattr } for  pid=28 comm="kdevtmpfs" name="loop8" dev="devtmpfs" ino=149 scontext=u:r:kernel:s0 tcontext=u:object_r:device:s0 tclass=blk_file permissive=1
ueventd: Coldboot took 0.468 seconds
EXT4-fs (loop0): mounted filesystem without journal. Opts: (null)
EXT4-fs (loop1): mounted filesystem without journal. Opts: (null)
printk: apexd: 13 output lines suppressed due to ratelimiting
rk808 0-0020: reboot: force RK817_RST_FUNC_REG ok!
These users thanked the author macromorgan for the post:
sjuut (Wed Sep 16, 2020 4:37 pm)

macromorgan
Posts: 30
Joined: Mon Dec 30, 2019 10:35 am
languages_spoken: english
ODROIDs: Odroid-GO
Has thanked: 0
Been thanked: 7 times
Contact:

Re: Anybody working on Android for the Odroid-Go A?

Post by macromorgan »

macromorgan wrote:
Wed Sep 16, 2020 11:46 am
notime2d8 wrote:
Wed Sep 16, 2020 11:34 am
macromorgan wrote:
Wed Sep 16, 2020 11:03 am
notime2d8 wrote:
Wed Sep 16, 2020 9:49 am
Cool, I missed these updates somehow. I'll try building it again later. And yes Android requires selinux or Init panics for not being able to locate the directory for it.

Also I was able to get a mouse mode working that uses the d-pad it still needs a few tweaks but that was one of the major request people kept asking about.

And Rockchip officially released their 4.19 kernel on their GitHub. I got it to boot but it still has the screen initialization issue and the screen gets artifacts in certain situations. Hoping to switch to yours and settle on a kernel.

I also added most of the files I use to build Android to my GitHub except for changes to platform/system/core. I couldn't import the folder to my GitHub for some reason.
And it's looking like I can't do a local manifest to pull in the changes to make building Android easier. I will need to do full manifest with all the packages listed along with the seven or so specified to pull from my GitHub.
Do you by chance know what I'm missing? I'm thinking it's kernel based since it's doing this where the 4.19 kernel works fine. The exact issue is here in the init process:

Code: Select all

init: mount("selinuxfs", "/sys/fs/selinux", "selinuxfs", 0, NULL) failed No such file or directory
The thing is, I have sysfs and selinux enabled, so I'm not sure what it could be.
Do you have this selected? It's an option to select the default security model towards the end of the security options?

Code: Select all

DEFAULT_SECURITY_SELINUX [=y]  
Yes, if you want you can see my config on the Android branch on my github.

edit: So the Linux kernel on my github (closer to mainline since it's a direct fork of Linus's tree) also doesn't work with sysfs. Interesting...

edit2: figured it out. The option of DEFAULT_SECURITY_SELINUX doesn't really do anything anymore. Setting CONFIG_LSM to = selinux,integrity did enable SELinux. I pushed a commit to the defconfig on my android tree. Now something else is failing in the init process (of course) but I'm too tired to figure it out tonight.

Code: Select all

init: init first stage started!
init: [libfs_mgr]ReadFstabFromDt(): failed to read fstab from dt
init: [libfs_mgr]Warning: unknown flag: inline_data
init: [libfs_mgr]Warning: unknown flag: inline_xattr
init: [libfs_mgr]Warning: unknown flag: discard
init: Using Android DT directory /proc/device-tree/firmware/android/
init: [libfs_mgr]superblock s_max_mnt_count:65535,/dev/block/mmcblk0p2
init: [libfs_mgr]__mount(source=/dev/block/mmcblk0p2,target=/system,type=ext4)=0: Success
init: Switching root to '/system'
init: [libfs_mgr]superblock s_max_mnt_count:65535,/dev/block/mmcblk0p3
EXT4-fs (mmcblk0p3): Ignoring removed nomblk_io_submit option
EXT4-fs (mmcblk0p3): warning: mounting unchecked fs, running e2fsck is recommended
EXT4-fs (mmcblk0p3): mounted filesystem without journal. Opts: errors=remount-ro,nomblk_io_submit
e2fsck: executing /system/bin/e2fsck failed: No such file or directory

e2fsck: e2fsck terminated by exit(255)

EXT4-fs (mmcblk0p3): mounted filesystem without journal. Opts: barrier=1
printk: init: 7 output lines suppressed due to ratelimiting
init: Loading SELinux policy
SELinux:  Permission nlmsg_readpriv in class netlink_route_socket not defined in policy.
SELinux:  Permission perfmon in class capability2 not defined in policy.
SELinux:  Permission bpf in class capability2 not defined in policy.
SELinux:  Permission checkpoint_restore in class capability2 not defined in policy.
SELinux:  Permission perfmon in class cap2_userns not defined in policy.
SELinux:  Permission bpf in class cap2_userns not defined in policy.
SELinux:  Permission checkpoint_restore in class cap2_userns not defined in policy.
SELinux:  Class perf_event not defined in policy.
SELinux: the above unknown classes and permissions will be denied
SELinux:  policy capability network_peer_controls=1
SELinux:  policy capability open_perms=1
SELinux:  policy capability extended_socket_class=1
SELinux:  policy capability always_check_network=0
SELinux:  policy capability cgroup_seclabel=0
SELinux:  policy capability nnp_nosuid_transition=1
SELinux:  policy capability genfs_seclabel_symlinks=0
audit: type=1403 audit(1600230613.837:2): auid=4294967295 ses=4294967295 lsm=selinux res=1
selinux: SELinux: Loaded policy from /vendor/etc/selinux/precompiled_sepolicy

selinux: SELinux: Loaded file_contexts

init: init second stage started!
init: Using Android DT directory /proc/device-tree/firmware/android/
selinux: SELinux: Loaded file_contexts

init: Running restorecon...
selinux: avc:  denied  { set } for property=pm.sleep_mode pid=1 uid=0 gid=0 scontext=u:r:vendor_init:s0 tcontext=u:object_r:pm_prop:s0 tclass=property_service permissive=1

init: Couldn't load property file '/product_services/build.prop': open() failed: No such file or directory: No such file or directory
init: Couldn't load property file '/factory/factory.prop': open() failed: No such file or directory: No such file or directory
init: Setting product property ro.product.brand to 'ODROID' (from ro.product.odm.brand)
init: Setting product property ro.product.device to 'odroidgoa' (from ro.product.odm.device)
init: Setting product property ro.product.manufacturer to 'HardKernel Co., Ltd.' (from ro.product.odm.manufacturer)
cgroup: Unknown subsys name 'blkio'
cgroup: Unknown subsys name 'schedtune'
cgroup: init (1) created nested cgroup for controller "memory" which has incomplete hierarchy support. Nested cgroups may change behavior in the future.
cgroup: "memory" requires setting use_hierarchy to 1 on the root
ueventd: ueventd started!
selinux: SELinux: Loaded file_contexts

ueventd: Parsing file /ueventd.rc...
ueventd: Parsing file /vendor/ueventd.rc...
ueventd: Unable to read config file '/vendor/ueventd.rc': open() failed: No such file or directory
ueventd: Parsing file /odm/ueventd.rc...
ueventd: Unable to read config file '/odm/ueventd.rc': open() failed: No such file or directory
ueventd: Parsing file /ueventd.odroidgoa.rc...
apexd: Bootstrap subcommand detected
apexd: wait for '/dev/loop-control' took 203ms
audit: type=1400 audit(1600230614.846:3): avc:  denied  { write } for  pid=28 comm="kdevtmpfs" name="/" dev="devtmpfs" ino=1 scontext=u:r:kernel:s0 tcontext=u:object_r:device:s0 tclass=dir permissive=1
apexd: Pre-allocated 9 loopback devices
audit: type=1400 audit(1600230614.846:4): avc:  denied  { mknod } for  pid=28 comm="kdevtmpfs" capability=27  scontext=u:r:kernel:s0 tcontext=u:r:kernel:s0 tclass=capability permissive=1
apexd: Scanning /system/apex for embedded keys
audit: type=1400 audit(1600230614.846:5): avc:  denied  { add_name } for  pid=28 comm="kdevtmpfs" name="loop8" scontext=u:r:kernel:s0 tcontext=u:object_r:device:s0 tclass=dir permissive=1
vendor storage:20190527 ret = -1
apexd: Scanning /product/apex for embedded keys
apexd: ... does not exist. Skipping
apexd: Scanning /system/apex looking for APEX packages.
apexd: Found /system/apex/com.android.media.apex
apexd: Skipped when bootstrapping
apexd: Found /system/apex/com.android.runtime.debug.apex
audit: type=1400 audit(1600230614.846:6): avc:  denied  { create } for  pid=28 comm="kdevtmpfs" name="loop8" scontext=u:r:kernel:s0 tcontext=u:object_r:device:s0 tclass=blk_file permissive=1
audit: type=1400 audit(1600230614.846:7): avc:  denied  { setattr } for  pid=28 comm="kdevtmpfs" name="loop8" dev="devtmpfs" ino=149 scontext=u:r:kernel:s0 tcontext=u:object_r:device:s0 tclass=blk_file permissive=1
ueventd: Coldboot took 0.468 seconds
EXT4-fs (loop0): mounted filesystem without journal. Opts: (null)
EXT4-fs (loop1): mounted filesystem without journal. Opts: (null)
printk: apexd: 13 output lines suppressed due to ratelimiting
rk808 0-0020: reboot: force RK817_RST_FUNC_REG ok!
It now boots (almost) fully and I pushed my changes to the github. Surfaceflinger and all the GUI stuff crashes, and I'm not sure why. I'm working on getting Mesa3d and the Panfrost stack working now to see if that's a viable option.

notime2d8
Posts: 160
Joined: Thu Dec 11, 2014 4:40 am
languages_spoken: english
Has thanked: 46 times
Been thanked: 76 times
Contact:

Re: Anybody working on Android for the Odroid-Go A?

Post by notime2d8 »

macromorgan wrote:
Thu Sep 17, 2020 7:31 am

It now boots (almost) fully and I pushed my changes to the github. Surfaceflinger and all the GUI stuff crashes, and I'm not sure why. I'm working on getting Mesa3d and the Panfrost stack working now to see if that's a viable option.
Awesome, which Android version are you working with?
If I say something that sounds smart or like i know what i'm talking about....i'm faking it.

macromorgan
Posts: 30
Joined: Mon Dec 30, 2019 10:35 am
languages_spoken: english
ODROIDs: Odroid-GO
Has thanked: 0
Been thanked: 7 times
Contact:

Re: Anybody working on Android for the Odroid-Go A?

Post by macromorgan »

notime2d8 wrote:
Thu Sep 17, 2020 8:03 am
macromorgan wrote:
Thu Sep 17, 2020 7:31 am

It now boots (almost) fully and I pushed my changes to the github. Surfaceflinger and all the GUI stuff crashes, and I'm not sure why. I'm working on getting Mesa3d and the Panfrost stack working now to see if that's a viable option.
Awesome, which Android version are you working with?
Lineage OS 17.1. The GPU stuff keeps craping out on Lineage with the Mali stuff, I assume I did something wrong when porting things over; something about an IRQ error. I'm debating between moving to the Rockchip 4.19 kernel (which has a nasty crash in the regulators subsystem every time you turn one off) or trying to make 5.9 work with Panfrost (will likely be S-L-O-W even with GPU acceleration, and has a slightly annoying crash on reboot that keeps it from rebooting cleanly).

Do you know perchance if a newer Mali kernel driver can work with an older Mali binary driver? That might help.

Found these guys who are doing Lima Android AOSP; figured it's not a stretch to jump from Lima to Panfrost... https://github.com/GloDroid

notime2d8
Posts: 160
Joined: Thu Dec 11, 2014 4:40 am
languages_spoken: english
Has thanked: 46 times
Been thanked: 76 times
Contact:

Re: Anybody working on Android for the Odroid-Go A?

Post by notime2d8 »

macromorgan wrote:
Thu Sep 17, 2020 10:29 am
notime2d8 wrote:
Thu Sep 17, 2020 8:03 am
macromorgan wrote:
Thu Sep 17, 2020 7:31 am

It now boots (almost) fully and I pushed my changes to the github. Surfaceflinger and all the GUI stuff crashes, and I'm not sure why. I'm working on getting Mesa3d and the Panfrost stack working now to see if that's a viable option.
Awesome, which Android version are you working with?
Lineage OS 17.1. The GPU stuff keeps craping out on Lineage with the Mali stuff, I assume I did something wrong when porting things over; something about an IRQ error. I'm debating between moving to the Rockchip 4.19 kernel (which has a nasty crash in the regulators subsystem every time you turn one off) or trying to make 5.9 work with Panfrost (will likely be S-L-O-W even with GPU acceleration, and has a slightly annoying crash on reboot that keeps it from rebooting cleanly).

Do you know perchance if a newer Mali kernel driver can work with an older Mali binary driver? That might help.

Found these guys who are doing Lima Android AOSP; figured it's not a stretch to jump from Lima to Panfrost... https://github.com/GloDroid
Yes the June 2020 Mali driver drops right in from the Arm site here https://developer.arm.com/tools-and-sof ... ost-kernel

Edit: well it did for the 4.19 kernel... I just tried it and got a few errors with your Android mainline kernel.
If I say something that sounds smart or like i know what i'm talking about....i'm faking it.

Post Reply

Return to “Platform development”

Who is online

Users browsing this forum: No registered users and 1 guest