Related
I am trying to connect to my company's vpn server (Cisco) with an application named vpnc.
but it needs a tun.ko module which I can't find on the Dell Streak.
I find tun.ko for other devices but I can't use them as a module on the Dell Streak. It does not accept the exec format.
Can anyone compile a tun.ko for Dell Streak ? Or is there any compiled tun.ko for it ?
Thanks.
I'd appreciate any help...
I misunderstood the OP query
As the OP said, tun.ko needs to be specific to the device.
The one you found says:
"tun for Android 2.2 (Froyo) Nexus One devices"
We are both looking for one for the Streak - in my case at 2.1 level.
Thanks for looking.
Post #12 Here http://forum.xda-developers.com/showthread.php?t=630703&page=2 appears to have all the instructions, but I don't have the skills.
mardibloke said:
As the OP said, tun.ko needs to be specific to the device.
The one you found says:
"tun for Android 2.2 (Froyo) Nexus One devices"
We are both looking for one for the Streak - in my case at 2.1 level.
Thanks for looking.
Post #12 Here http://forum.xda-developers.com/showthread.php?t=630703&page=2 appears to have all the instructions, but I don't have the skills.
Click to expand...
Click to collapse
is there really that much difference between the streak and the nexus?
I misunderstood what the OP meant by "other devices" I Presumed he meant linux not android,
have you thought about asking on that google code page for them to compile it for you?
-----edit scratch that..
having read that thread..
I think you need the streak source code..
Best get involved in the attempts to get Dell to release it to comply with the GPL.
actually, we don't need the source code of Streak.
we just need to compile tun.ko for Streak.
I don't know how to do that.
I asked in the project site but nobody answered.
mrmrmrmr said:
actually, we don't need the source code of Streak.
we just need to compile tun.ko for Streak.
I don't know how to do that.
I asked in the project site but nobody answered.
Click to expand...
Click to collapse
according to the thread mardibloke posted you need the source as he checks out the nexus-one specific head..
Finaly! I figured out how to build tun.ko module for the stock kernel.
If anybody wants to repeat that:
* I have Android OpenSource installed in /opt/android
* In /opt/android I did: git clone git://android.git.kernel.org/kernel/msm.git kernel-nexus
* In kernel-nexus I did:
- git checkout -b origin/android-msm-2.6.29-nexusone
- git checkout HEAD^
(The last operation reverses one revision, I needed a previous revision from the tree. Different revisions generate modules with different vermagic values)
(Actually, instead of previous two this should work as well - it should checkout the correct revision: git checkout 4bc62c230b2942bea72c3b5258e3e4f1d6cb534b )
- make ARCH=arm CROSS_COMPILE=/opt/android/prebuilt/linux-x86/toolchain/arm-eabi-4.4.0/bin/arm-eabi- distclean
- adb pull /proc/config.gz
- gunzip config.gz
- mv config .config
- Edited .config: changed "# CONFIG_TUN is not set" to: "CONFIG_TUN=m"
- make ARCH=arm CROSS_COMPILE=/opt/android/prebuilt/linux-x86/toolchain/arm-eabi-4.4.0/bin/arm-eabi- modules
- The driver ends up in: drivers/net/tun.ko
- You can verify if it is going to match the kernel by running:
+ strings drivers/net/tun.ko | grep 2.6.29
+ It should produce "vermagic=2.6.29-01117-g4bc62c2 preempt mod_unload ARMv7"
+ The "2.6.29-01117-g4bc62c2" should be the same as the "Kernel version" in "Settings->About phone" on your phone.
* Now you can upload the module to your phone. I did:
- adb shell mount -o remount,rw /dev/block/mtdblock3 /system
- adb push drivers/net/tun.ko /system/lib/modules/
- adb shell mount -o remount,ro /dev/block/mtdblock3 /system
- And you can use adb shell, enter /system/lib/modules and run: insmod tun.ko
- It should work
Click to expand...
Click to collapse
Made some progress, but now stuck getting the tun.ko file copied onto my streak.
Streak 2.1 does not appear to have cp or pull commands.
Cannot push the file over via adb, to where I need it
Cannot move the file
Any help really appreciated.
>adb push tun.ko /system/lib/modules/tun.ko
failed to copy 'tun.ko' to '/system/lib/modules/tun.ko': Permission denied
>adb push tun.ko /sdcard/tun.ko
877408 KB/s (158130 bytes in 0.000s)
>adb shell
$ su
su
# mount -o remount,rw /dev/block/mtdblock3 /system
mount -o remount,rw /dev/block/mtdblock3 /system
#
# mv /sdcard/tun.ko /system/lib/modules/tun.ko
mv /sdcard/tun.ko /system/lib/modules/tun.ko
failed on '/sdcard/tun.ko' - Cross-device link
how did you get it compiled for the streak without the kernel source?
Can we see if I get it working before I comment on that
couldn't you just put in on your sd card and copy over to system/lib/modules once you mount it r/w with root explorer?
I don't appear to have the cp command available
You see I tired to move it (as mv command was available), and that failed.
I'm new to Linux, so maybe I missed something obvious?
>adb shell
$ su
su
# mount -o remount,rw /dev/block/mtdblock3 /system
mount -o remount,rw /dev/block/mtdblock3 /system
#
# mv /sdcard/tun.ko /system/lib/modules/tun.ko
mv /sdcard/tun.ko /system/lib/modules/tun.ko
failed on '/sdcard/tun.ko' - Cross-device link
more coffee, and found CAT is available..
cat /sdcard/tun.ko > /system/lib/modules/tun.ko
appears to have worked, off for some more testing.
can you share that ?
Attached is tun.ko that as you will see below appears to run on my 2.1 Streak
VPNC not currently connecting for me though :/
Code:
[email protected]:~/mydroid/kernel-streak$ adb push drivers/net/tun.ko /sdcard/tun.ko
1572 KB/s (161314 bytes in 0.100s)
[email protected]:~/mydroid/kernel-streak$ adb shell
$ su
# mount -o remount,rw /dev/block/mtdblock3 /system
# cat /sdcard/tun.ko > /system/lib/modules/tun.ko
# mount -o remount,ro /dev/block/mtdblock3 /system
# cd /system/lib/modules
# insmod tun.ko
# exit
$ exit
[email protected]:~/mydroid/kernel-streak$
thank you for sharing. but why doesn't vpnc connect ?
Sorry don't know why vpnc does not connect.
To be honest, I don't know how to tell tun is running properly.
Any advice, places to check logs etc appreciated.
Was interested if it worked for you, as I may just have my vpnc config wrong for our work connection.
Nothing bad has happened since I installed, and ran the tun.ko that I attached, but clearly I should say using it is at your own risk.
For example i see:
Known issues¶
Usernames can not contain the @ symbol
and my usernames do have the @ symobol for my work credentials
w00t! or whatever you say after spending 3 evenings trying to get this working.
Am connected fine, using the tun.ko file I already attached.
Final issue for me was solved by some debug with using a shell on my Streak and command:
Code:
/data/data/org.codeandroid.vpnc_frontend/files/vpnc --script /data/data/org.codeandroid.vpnc_frontend/files/vpnc-script --no-detach --debug 1
To see what was going on, turns out I *just* needed to install Busybox.
So I think what you need to be the same as me is:
2.1 UK Build 6941
Rooted
Busybox install - on marketplace
Then the tun.ko file I posted, and use the commands shown in the same post.
Any problems, just ask.
Did I mention, pretty pleased
it's obvious that you are pleased
let's see:
I have only Android 1.6 on my Dell Streak.
Would that work ?
it's rooted already.
installing BusyBox right now. (why is that needed btw ?)
done !
copied tun.ko to /system/lib/modules
insmod is fine. I can see the module loaded by "lsmod"
configured my company vpn.
btw, my user also has @ sign , is that a problem ?
leave password empty. it asks for password. fine....
"failed to connect"
what do I have to check ?
The system is stable now on my tab, don't forget, you have only 256MB of RAM, i cannot make the impossible Lots of tweaks are include into the kernel and the ROM to have a fast tab...!
If you have any problem, go there:
Sources:
Github: https://github.com/bizcuite
Kernel sources is available here: https://github.com/bizcuite/Archos_OPENAOS_Kernel_ICS
Frameworks base folder: https://github.com/bizcuite/android_frameworks_base
Device Folder: https://github.com/bizcuite/Device_ICS-for-ARCHOS-GEN8
--------------------------------------------------------------------------------------------------------------------
/!\
DON'T TRY THE KERNELWITH OTHERS OS for GEN8
IT IS NOT COMPATIBLE WITH OTHERS SYSTEMS
/!\
--------------------------------------------------------------------------------------------------------------------
Works:
3D - libs comes from Galaxy SL - and Kernel drivers from RowBoat
Sensors - Rotation
Sound
Youtube (HD is not smooth- 15/20FPS)
Touchscreen in multipoint (thanks to Divx118 and Letama for their help on my thread)
Wifi
Sdcard & MMC - USB SHARE
12/03/2013
H264/H263 - MP3/AAC played with hard decoders
OMX interface comes from CM10.1
UI optimised (thanks defy dev)
Sound HAL from opensource
Camera but you cannot take any picture or video with this camera ATM
Version 1.6 (17/03/2013):
- Dspmanager has been removed (bug)
- MusicPlayer from google AOSP include.
- Phone.apk removed too
CYANOBIZ - BETA 2.0/2.3 - 10/04/2013
- GPU Libs update
- OPENGL renderer activated
- WallPaper works
- WebGL works well (Chrome can works now)
- Network statistics works
- Sound noises are less frequents than v1.7 and V1.8
CYANOBIZ - BETA 2.1 - 18/04/2013
- Youtube works (i had heard that it doesn't worked in beta 2.0)
CYANOBIZ - BETA 2.4 - 11/05/2013
-Libs from Samsung Galaxy Ace works very well (better) than rowboat libs.
-A43 must have a working TS
-Zram configured directly to have 250MB of ZRam (better perf than compcache)
CYANOBIZ - BETA 2.5/2.6 - 19/05/2013
-TLS register activated
-Swap of 175MB added in the image file
-Zram can be activated (re-added) - i have a way to activated zram1 as ext4 partition...
KERNEL:
- OC kernel by interface (see in /sys/power/)
- dsp to 800MHz when 5th step is activated
- GPU drivers Updated (backported)
- CPU Alignment (backported)
- JHash update
- Network stat driver added (backported)
- Lots of modules directly include into the kernel
- Cleancache include (backported) and activated http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/Documentation/vm/cleancache.txt?id=4fe4746ab694690af9f2ccb80184f5c575917c7f
- Genlock Backported from 2.6.35
- New Zram
- New driver wifi functions (configurate in ".config" files) i find wifi better
- TLS register hacked
- Zram
- Snappy compression from google
- Compcache 25% or 35% of RAM
Doesn't work:
-Bluetooth can works with a command enter in a terminal hciconfig hci0 up.
-Camera (you can preview only)
-Battery stats (% works, but no notification of charge)
-Bugs - report please
-------------------------------------------------------------FILES TO DOWNLOAD-------------------------------------------------------------
SINCE V2.4 AND DON'T USE ANY SWAP SOFTWARE WITH THIS VERSION
---------- V2.6 with another start order for Swap: /swapfile (175MB) uses in first, zram in second and compcache in last. = 175+50MB+25%/35% of your RAM
A101 - v2.6 = http://www.mediafire.com/download.php?444vbceqerzboqb
A70 - A70S2 (change the dpi to 160 in build.prop for A70S2 only) - v2.6 = http://www.mediafire.com/download.php?1urte0y2f5dnzwu
A43 - TS not fix in landscape ATM - v2.6 = http://www.mediafire.com/download.php?206d2tqybl1260w
GAPP: http://www.mediafire.com/download.php?blsz6ie172i1qzo
For kernel initramfs and data image see attachment files
25% of RAM is "compcached" with zram snappy compression
35% of RAM is "compcached" with zram snappy compression
25% of RAM is "compcached" with zram LZO compression
-------------------------------------------------------------SYSTEM INSTALLATION-------------------------------------------------------------
How install CM9 on archos gen8
-Download CM9 image files from mediafire that i have shared, choose appropriate image.
-Download initramfs.cpio.gz (NOT MINICOM except i tell you to install it for a report)
-Download Kernel in attachment files (don't uncompress the Kernel file, just rename it like this: zImage)
-Download data.img.tar.gz and uncompress it - choose the data image that you want and renamed it like data_ICS.img
Install Kernel and initramfs.cpio.gz
-install kernel and initramfs.cpio.gz (don't install the minicom version) by SDE menu
-Don't uncompress the Kernel file, just rename it like this: zImage
-Just copy-paste, ONE BY ONE the kernel and initramfs.cpio.gz (if I paste together the files, it doesn't worked for me)
/!\ BUT BIZCUITE, I HAVE A PROBLEM, THE TAB SAYS ME THAT zImage IS NOT INSTALLED, AAAAAAAAH!!!!!PLEAAAASE HEEELP
=>You have WINDOWS please read this!!!
Install CM9 Image:
-uncompress image of CM9 downloaded
-copy paste image on the root of internal sdcard (like CM7)
-uncompressed data.img.tar.gz if it's not done, choose an image and rename it like data_ICS.img
-copy/paste the data_ICS.img to the root of the internal sdcard.
How configure menu.lst (See the file in attachment, just uncompress it)
-edit your menu.lst, copy paste my line
Code:
CYANOBIZ||/CYANOBIZ_BETA2.X_AX.img|/init|0Archos|ARCHOS|ARCHOS|/init
Change "CYANOBIZ_BETA2.X_AX.img" by the version and the type of tab that you have downloaded
Exemple: CYANOBIZ_BETA2.4_A101.img
If you haven't the file. Create a file named "menu.lst" with notepad++ under windows (not the windows notepad!!!) Or gedit for ubuntu.
And copy paste the line on it. Save and copy paste the file on the root of the internal sdcard.
-------------------------------------------------------------GOOGLE APP. INSTALLATION-------------------------------------------------------------
How install Google App.
If you have NEVER installed GApp:
-Download the file
-Rename the file like this "gapps-ics-20120429-signedremake_all_dpi_works.zip" ( just WITHOUT the "-" )
-Copy paste the file in the download folders of your internal SDCARD
-Reboot
-After the first reboot wait 5 minutes (the system uncompresses the files and install its)
-Reboot and enjoy
-------------------------------------------------------------BLUETOOTH ACTIVATION-------------------------------------------------------------
If you want to have Bluetooth
In a terminal enter:
Code:
hciconfig hci0 up
-------------------------------------------------------------SWAP CONFIGURATION-------------------------------------------------------------
SWAP / Zram / CompCache:
The swap is used with this priority:
Code:
[email protected]:/ # cat /proc/swaps
Filename Type Size Used Priority
/swapfile file 179156 5716 -1
/dev/block/zram0 partition 51192 0 -2
/dev/block/ramzswap0 partition 175464 0 -3
This the new swap_activation.sh
Code:
swapoff /dev/block/ramzswap0
swapoff /dev/block/zram0
echo $((50*1024*1024)) > /sys/block/zram0/disksize
mkswap /dev/block/zram0
swapon /swapfile
swapon /dev/block/zram0
swapon /dev/block/ramzswap0
Just change the order of this lines to start differently the swap.
First to start : swapon /swapfile
second to start: swapon /dev/block/zram0
last to start: swapon /dev/block/ramzswap0
Play with this lines to see if performance are better.
-------------------------------------------------------------OVERCLOCK-------------------------------------------------------------
HOW OVERCLOCK THE CPU
just change the value with a root explorer into the file at this path:
/sys/power/mpu_freq_opp5
YOU WILL LOSE THE CHANGE AFTER A REBOOT
but if you find your oc stable write the line in the init.rc, under " # Enabling power management features":
Code:
write /sys/power/mpu_freq_opp5 1100
-------------------------------------------------------------SOFT TO USE-------------------------------------------------------------
Which software i used to have a better tab or functions:
Performance:
Seeder (more smooth): http://forum.xda-developers.com/showthread.php?t=1987032
Tools:
Archos Video player: To have access to SMB server and watch directly video. (deactivate hardware decoding)
ZRAM Status:to keep an eye on my Zram Swap (lots of information)
LogCat:
Logcat Extreme: to share me a logcat when you have a crash or others problems
--------------------------------------------------------------------------------------------------------------------
FAQ:
I HAVE TRIED GMAIL, IT DOESN'T WORKED WITH MY TAB
HOX FIX IT: Biz, gmail works by installing maps, then open gmail it will force close, then go to accounts and sync gmail reboot tablet and works ==> Thanks Porobu
How have a good Camera image :
-> just open camera app, unplug usb cable and press power button to activate deep sleep mode (wait the led turn off) and presss again power button. Re open the camera app and the image is clean.
--------------------------------------------------------------------------------------------------------------------
If you have any problem with kernel or OS, download again all files and reinstall its.
If you have bootloop or crash of tablet, make me a report plz.
--------------------------------------------------------------------------------------------------------------------
/!\ To make a report /!\ MINICOM version of initramfs is required.
YOU DON'T USED ADB (select NONE option) .. JUST MINICOM (SERIAL option)
I used the initramfs.cpio.gz with debug by serial made by Divx118.
install minicom and enter in a terminal under root rights:
"minicom -D /dev/ttyACM2" (when you are after selection of debug types screen and when OS screen selection appears press "enter" don't forget to plug usb cable )
The minicom must be connected. and DMESG log appears on terminal.
CONFIGURE YOUR TERMINAL TO HAVE UNLIMITED CHARACTERS ON THE SCREEN (else log will be cut)
See the tutorial about debug on Openaos website
Have Fun!!
Bizcuite
Thanks to:
-Letama
-Divx118
-Powerplop for his help on sound pb
-All who have helped me indirectly or directly
-My beer shop :angel:
-Many thanks to Wilsey and Guanfy to have helped me to debug screen and TS without them, your tabs couldn't worked correctly.
-Bingoig for his help to fix menubutton for A101
-Mavasilisk for his great help and his topic about my ROM in general section
-Mikerla
-Porobu
-All donators (4 times)]
18/10/2012
UPDATE: init.rc FOR A101 ONLY FIX SCREEN ORIENTATION
How push it:
With adb, you must have installed adb initramfs.cpio.gz (see first page)
run adb with adb shell after have configure it to see if the configuration is good:
"adb shell"
"exit"
"adb root"
"adb push / /"
---------------------------------------------------------------------------------------------------------------
19/10/2012
UPDATE KERNEL TO SEE IF TouchScreen OF A70S WORKS works with all Tabs!!
---------------------------------------------------------------------------------------------------------------
22/10 i have include in rom, binaries for TS from archos firmware. And update init.rc. see first post to download the new update.
---------------------------------------------------------------------------------------------------------------
26/10 I have made a modification in code to have TS working for all tabs, i need log and report to see if it works correctly
See V0.4 to have update.
Modification in the code are situate in inputreader.cpp in framework/base/service/:
Code:
if (mParameters.orientationAware
|| mParameters.deviceType == Parameters::DEVICE_TYPE_TOUCH_SCREEN
|| mParameters.deviceType == Parameters::DEVICE_TYPE_POINTER) {
mParameters.associatedDisplayIsExternal = false;
mParameters.deviceType == Parameters::DEVICE_TYPE_TOUCH_SCREEN
&& getDevice()->isExternal();
mParameters.associatedDisplayId = 0;
---------------------------------------------------------------------------------------------------------------
29/10 -- CM9 - V0.5
-Kernel revert back (for A101, bad name of TS, it was a test that i had forgotten to remove)
-data_ICS.img to install to root of SDCARD (like CM7)
-Bootloop fix
-NO BOOTANIMATION (black screen, please wait that the first boot finished it)
-BUG WITH CPU GOV ALWAYS AT PERFORMANCE (see first post to fix it)
----------------------------------------------------------------------------------------------------------------
30/10 -- CM9 - V0.6
-soft button fix (ty guanfy and Wisley)
----------------------------------------------------------------------------------------------------------------
31/10 -- CM9 - V1.0
-All about screen works well for all tabs (A70S2 - A101S - A70S-H confirmed)
-CM9 Sources in "cooking" for share
---------------------------------------------------------------------------------------------------------------
22/12:
FIx USB SHARE for SDRAM Version.
New version ALPHA 1.1 in progress
Had to need to update my Ubuntu to 12 to download update of ICS from Cyanogen (Git-Core error, impossible to update git-core with 10.04)
Kernel modify for more stability (Cpu Gov conf - 5th freq. step deleted)
I will make another kernel to include driver for A43 tabs TouchScreen.
But i need logcat by A43 tabs users.[/B]
VolumeManager.cpp has been changed to have USB SHARE working.
---------------------------------------------------------------------------------------------------------------
Problem with stability is fix. with Kernel V1.4
DON'T TRY TO COMPILE ATM, IT'S JUST A BETA VERSION OF THE HOW - I HAVEN'T TEST IT!!
How to compile CyanoBiz:
Make sure that you have Ubuntu 10.04 or 12 - 64Bits - 4GB of RAM - 100GB free on HD and a Quad core CPU is better to compile it (i have 4GB of RAM and a little Core2duo 1.6GHz - dual core on a T60P Lenovo - HD of 300GB).
Go to your work foder. i have put it directly in my home directory, done it as you want.
mkdir -p ./BIZ_ICS
PATH=~/bin:$PATH
curl https://dl-ssl.google.com/dl/googlesource/git-repo/repo > ~/bin/repo
chmod a+x ~/bin/repo
repo init -u git://github.com/CyanogenMod/android.git -b ics-release
repo sync -j16
Wait that the download is finished....
Download my github and uncompress the framework, device and hardware zip files (not update ATM).
Replace CM9 folders by mine:
-./framework/base
-./hardware/...
-./device/archos/g8
To compile:
. build/envsetup.sh
lunch
choosecombo
-> option userdebug let the others default value
Make -j4
To make the image file after compilation
Code:
rm CYANOBIZ*.img
umount /mnt
echo A70S:
qemu-img create -f raw ./CYANOBIZ_BETA2.x_A70.img 300M
mkfs.ext4 -qF -O ^huge_file ./CYANOBIZ_BETA2.x_A70.img
mount -o loop ./CYANOBIZ_BETA2.x_A70.img /mnt/
rsync -rlpgotvDH --progress --delete ./root/ /mnt/
rsync -rlpgotvDH --progress --delete ./system/ /mnt/system/
mkdir -p /mnt/data/test /mnt/mnt /mnt/mnt/storage
ln -sf /mnt/storage /mnt/storage
chmod 0777 /mnt/mnt/storage /mnt/data/test
chown -R root:root /mnt/
chmod 0755 /mnt/system/framework/*
chmod 6755 /mnt/system/xbin/su
chmod -R 0755 /mnt/system/media/*
chmod -R 0755 /mnt/system/usr/share/alsa/*
chmod -R 0755 /mnt/system/lib/dsp/*
chmod -R 0644 /mnt/system/lib/libOMX.*
chmod -R 0755 /mnt/lib/*
chmod -R 0777 /mnt/system/app/*
chmod -R 0755 /mnt/system/bin/*
mkdir /mnt/system/media
cp -R ../../../../device/archos/g8/media/* /mnt/system/media/
mkdir /mnt/system/usr/share/alsa
cp -R ../../../../device/archos/g8/system/usr/share/alsa/* /mnt/system/usr/share/alsa/
cp -R ../../../../device/archos/g8/init.rc /mnt/init.rc
mkdir /mnt/system/lib/dsp
cp -R ../../../../device/archos/g8/system/lib/* /mnt/system/lib/
mkdir /mnt/lib
cp -R ../../../../device/archos/g8/lib/* /mnt/lib/
rm /mnt/system/app/Phone.apk
chmod -R 0777 /mnt/system/app/*
chmod -R 0755 /mnt/system/bin/*
chmod -R 0755 /mnt/system/lib/*
sync
umount /mnt
echo A101:
qemu-img create -f raw ./CYANOBIZ_BETA2.x_A101.img 300M
mkfs.ext4 -qF -O ^huge_file ./CYANOBIZ_BETA2.x_A101.img
mount -o loop ./CYANOBIZ_BETA2.x_A101.img /mnt/
rsync -rlpgotvDH --progress --delete ./root/ /mnt/
rsync -rlpgotvDH --progress --delete ./system/ /mnt/system/
mkdir -p /mnt/data/test /mnt/mnt /mnt/mnt/storage
ln -sf /mnt/storage /mnt/storage
chmod 0777 /mnt/mnt/storage /mnt/data/test
chown -R root:root /mnt/
chmod 0755 /mnt/system/framework/*
chmod 6755 /mnt/system/xbin/su
chmod -R 0755 /mnt/system/media/*
chmod -R 0755 /mnt/system/usr/share/alsa/*
chmod -R 0755 /mnt/system/lib/dsp/*
chmod -R 0644 /mnt/system/lib/libOMX.*
chmod -R 0755 /mnt/lib/*
chmod -R 0777 /mnt/system/app/*
chmod -R 0755 /mnt/system/bin/*
mkdir /mnt/system/media
cp -R ../../../../device/archos/g8/media/* /mnt/system/media/
mkdir /mnt/system/usr/share/alsa
cp -R ../../../../device/archos/g8/system/usr/share/alsa/* /mnt/system/usr/share/alsa/
cp -R ../../../../device/archos/g8/init.rc /mnt/init.rc
mkdir /mnt/system/lib/dsp
cp -R ../../../../device/archos/g8/system/lib/* /mnt/system/lib/
mkdir /mnt/lib
cp -R ../../../../device/archos/g8/lib/* /mnt/lib/
rm /mnt/system/app/Phone.apk
chmod -R 0777 /mnt/system/app/*
chmod -R 0755 /mnt/system/bin/*
chmod -R 0755 /mnt/system/lib/*
sync
umount /mnt
Hello,
ICS doesn't work on my A43. It stay locked on the OpenAOS screen after the .img selection menu.
Maybe my tablet isn't compatible.
Thanks for your great work
Sent from my A43 using xda premium
GoL LuM said:
Hello,
ICS doesn't work on my A43. It stay locked on the OpenAOS screen after the .img selection menu.
Maybe my tablet isn't compatible.
Thanks for your great work
Sent from my A43 using xda premium
Click to expand...
Click to collapse
Have you any cable connected on the tab and have you seen this?
Others things:
If you want to power on your tab without make any debug, don't forget to disconnect the tab from the USB computer.
If you do that, the CM9 doesn't want boot.
DISCONNECT USB CABLE IF YOU HAVEN'T MINICOM RUNNING
Retry without cable please and with the new kernel!!
Try to see if you have any log on terminal if it doesn't worked
Bizcuite
Please report about Touchscreen it's very important for me (and for you if you want a CM9 who works on your tab )
Make a report like this:
Model of tab: Archos xx
Touchescreen works: yes / no
Another bug (except if it writes on first post)
Remember: the first boot takes time the dexopt is active 2-3 minutes to have unlock screen.
Bizcuite
Bizcuite
Biz,
I've flashed the new kernel, booted back into CM. I've been sitting at the bootsplash for 20 minutes now. Attachment below.
Is it safe to try it on A70S with "kboot" installed? Seconds question that I'd like to know is that the touchscreen isnt currently working, right?
Mavasilisk said:
Is it safe to try it on A70S with "kboot" installed? Seconds question that I'd like to know is that the touchscreen isnt currently working, right?
Click to expand...
Click to collapse
I don't know if it works with kboot, the kernel is based on CM7 kernel, if it works with it i think that yes!!
Touchscreen for A70S doesn't work (except if it uses Hanvon TS, it must work now), yes and i need a full log to fix it if i can (without tab it's very difficult).
Biz,
I've flashed the new kernel, booted back into CM. I've been sitting at the bootsplash for 20 minutes now. Attachment below.
Click to expand...
Click to collapse
You have a harddrive version, that's the pb, there is no error who permit me to fix it ATM.
I will pm you and see it later.
Edit: i have seen that all your log is cut, can you remake it with a more larger terminal (or more little char.) to have all lines
Bizcuite
the last thing that I see when I boot is some cyano guy who is traveling in space. Do I have to wait longer or its the unlock screen and my touchscreen isnt working?
EDIT: Rename your data.img to something else.
EDIT2: Can u help me run adb successfully, I've tried many times with guides but it was not for gen8 and I couldnt make it run. I really wanna join.
EDIT3: It booted. The touchscreen on A70S is working only at the upper left side (I can pull down the statusbar and enable/disable wifi). Nothing else is working on touchscreen. Hope it helps you cuz I cant run adb.
Bootloop
Mavasilisk said:
the last thing that I see when I boot is some cyano guy who is traveling in space. Do I have to wait longer or its the unlock screen and my touchscreen isnt working?
EDIT: Rename your data.img to something else.
EDIT: Can u help me run adb successfully, I've tried many times with guides but it was not for gen8 and I couldnt make it run. I really wanna join.
Click to expand...
Click to collapse
/!\ To make a report /!\
YOU DON'T USED ADB.. JUST MINICOM (adb cannot worked with this initramfs.cpio.gz, don't change it if you want adb, i have another version without serial debug)
I don't think that rename data.img is usefull:
look the init.rc:
Code:
mount ext4 /dev/block/mmcblk1p1 /mnt/storage
mount vfat /dev/block/mmcblk1p1 /mnt/storage
mount ext3 /dev/block/mmcblk0p2 /mnt/system
# mount ext3 /dev/block/mmcblk0p4 /data nosuid nodev
# mount ext4 [email protected]/mnt/storage/data.img /data nosuid nodev
data.img is not mount i used only data folder IN the image.
I need a log to see what's appened, i will retry my rom upload when i will be at home
If you have any linux machine you can try to see if there are crash errors when you mount the image in the data folder and tombstones folder
To mount image file enter:
mount -o loop /media/A70S/openaos-cm.img /mnt/
look the path of your tab, maybe it's not the same.
Bizcuite
arkade91 said:
Bootloop
Click to expand...
Click to collapse
More usefull with a log please.
Thanks
Bizcuite
I dont have a linux machine. Is there any tutorial "how to set up minicom" or what is it?
bootlooping for about 10 mins on a101it using kboot, is it related to kboot i wonder, anyway il see if i can pull logs later, right now i got to go somewhere?
bizcuite said:
I don't know if it works with kboot, the kernel is based on CM7 kernel, if it works with it i think that yes!!
Touchscreen for A70S doesn't work (except if it uses Hanvon TS, it must work now), yes and i need a full log to fix it if i can (without tab it's very difficult).
You have a harddrive version, that's the pb, there is no error who permit me to fix it ATM.
I will pm you and see it later.
Edit: i have seen that all your log is cut, can you remake it with a more larger terminal (or more little char.) to have all lines
Bizcuite
Click to expand...
Click to collapse
I can expand the terminal window, but I already changed the profile for unlimited scrolling. The entire log as it was recorded should be there. I can produce another one with a maximized terminal window if that will help. Log attached.
---------- Post added at 09:59 PM ---------- Previous post was at 09:54 PM ----------
Mavasilisk said:
I dont have a linux machine. Is there any tutorial "how to set up minicom" or what is it?
Click to expand...
Click to collapse
Your best bet if you want to get serious on testing and debug is to install a linux distro. Since android was born from linux, it's much easier to get the work done from a linux platform. Your best best would be to used an Ubuntu based distro, like Ubuntu or it's variants, or Linux Mint. If you use that, I can give you instructions on what you need to get rolling. PM me if you are interested in doing that.
Yes I am interested in installing Linux. Anyway I found something. On A70S the TS seems to be miss calibrated, I entered settings and enabled the cursor (something that displays my touch direction) and it seems like its miss calibrated for a bigger screed or bigger resolution. Hope it helps.
Mavasilisk said:
Yes I am interested in installing Linux. Anyway I found something. On A70S the TS seems to be miss calibrated, I entered settings and enabled the cursor (something that displays my touch direction) and it seems like its miss calibrated for a bigger screed or bigger resolution. Hope it helps.
Click to expand...
Click to collapse
PM sent. Let me know if you have further questions.
Ok i go home and i will try another thing this evening (launcher pb??)
Wait and see.
I put my log how i like it
Bizcuite
Ranomez said:
bootlooping for about 10 mins on a101it using kboot, is it related to kboot i wonder, anyway il see if i can pull logs later, right now i got to go somewhere?
Click to expand...
Click to collapse
It is not related to kboot I think, i have A70S with kboot and the only difference between them both is the large screen that 101 has.
Hi, I've recently acquired a Trekstor Surftab breeze 10.1 quad and my first (admittedly inexperienced) attempts at rooting it have failed miserably.
The tablet is a 10.1 inch 8GB device with a Mediatek MT8127 running Android 4.4.2 (Kernel 3.4.67 [email protected] #1). I tried first with Towelroot (including the various advanced modes), which did nothing, not even the temporary root option. Kingo Root and iRoot (former vRoot) are able to connect to the tablet in debug mode, but after trying several scripts and rebooting the device a few times they ultimately failed.
I'd rather not change the recovery without a having a backup, but I tried MTK Tools to at least get some useful information. I couldn't get a scatter file because the button was greyed out (I don't think the program is fully compatible with the MT8127), but the partitioning info was slightly different from other MT8127-based devices (I checked the Cube U27GT MT8127 tablet). Getting a scatter file from an existing ROM (or just modifying a ROM to add the su binary) seems to be out of the question, because I couldn't find one on the Trekstor site and a quick Google search gave me nothing. I also tried to get temporary root but it failed with a suggestion to install CWM recovery.
Also, just in case I was being an idiot and the tablet came with the su binary already installed (other Trekstor devices do), I tried installing SuperSU directly, but I had no such luck.
If I find anything else I'll post it here, but for the time being I've run out of ideas. Any suggestions?
I've finally cracked it and been able to put together some notes. They are intended for the Surftab Quad 10.1, but they might be useful with some modifications for other devices based on a Mediatek SOC that can't be rooted using the usual tools (or if you don't trust the usual tools). I've tried to attach the programs I've used, but I've been having a lot of trouble because some files are too large. You can get everything from these Mega links instead:
ext4_utils_new_cygwin_fixed.tar.gz: https://mega.co.nz/#!YIkhFTRJ!uemCzV5fTlXoyK61Vr3Ib-sPXYlzmrffYG7YwUxXaU0
MT6577 USB VCOM drivers.rar: https://mega.co.nz/#!dcNx2QBC!eHyKtnwbVc2Gj5hCUQXQIlQsv9G3dGXWvPEvrB15mNw
MT8127_Android_scatter_surftab_quad_101.txt: https://mega.co.nz/#!Yd0nnRoL!s5ztQIwwZLa3i89zVU9vFJL0xZXg5LKqIDSkRAdj45k
MtkDroidTools v2.5.3.zip: https://mega.co.nz/#!0FVxjILC!0-FOlPfT_OIRETYj_MsJofmse7zBeRMsSumJLicj5sM
spflash_5.14.16.zip: https://mega.co.nz/#!hcE0HKBJ!mkcdVjXBOUs7W1GhTF_qssgO14GNGs7kSWaOE9FJx2o
UPDATE-SuperSU-v2.45.zip: https://mega.co.nz/#!BUMzRaaR!R7_kGU7UN3SchcaEDCxKW7Oehfoi0PDsD-OeX9gJh0M
1) Make (or in this case check) the scatter file with MTK Droid Tools.
a) Turn on the device.
b) Enable USB debug.
c) Connect it to the PC.
d) Open MTK Droid Tools.
e) Check that the device information is correct, view block map, compare with scatter file and modify if needed.Alternatively, you can use the ADB terminal (it can be opened from MTK Droid Tools) and use the command “adb pull /proc/dumchar_info”. The resulting text file should contain the same information.
2) Install the VCOM drivers (I provide the Win7 version)
http://forum.xda-developers.com/showthread.php?t=2206421
http://forum.xda-developers.com/general/rooting-roms/guide-mediatek-spflashtool-failure-t2936933
The gist of it is, use USBDeview to remove any old VCOM drivers, install, reboot and plug in the switched off tablet. A new COM port-type device should flash for an instant in the device admin. Some guides recommend to change the preloader driver for DA, but in this case I found it not to be necessary. That said, the connection is a bit finicky and the USB cable that comes with the device and the port in the device itself seem to be pretty crappy, so in later steps it gave repeated COM errors unless I kept pressing on the micro USB connector or used a different cable altogether (the one belonging to my Kindle, to be precise). After a bit of trial and error, I also had a bit of trouble if the COM port assigned to the device was above port 9. That can be set in the device properties dialog, under the “Port configuration” tab and in “Advanced options”.
USBDeview might be necessary.
http://www.nirsoft.net/utils/usb_devices_view.html
3) Extract the system image (and make a full backup, just in case) with SP Flash Tools.
a) With the device unplugged and turned off, start SP Flash Tool.
b) Load the scatter file.
c) Under the Readback tab, click on “Add” and double click on the new field. I recommend to back up the entire device first, so name the file “full_dump.img” or somesuch and save from 0x00000000 to 0x4db00000, which would be everything but the user data and BMTPOOL. Then we add a second dump, named “system.img” starting on 0x5d00000 and with size 0x40000000. Those values come from the scatter file. They shouldn’t change if the device is the same, but if they do modify them as fit.
c) With the device turned off, plug the micro-usb side of the cable first (it’s more convenient that way), click “read back” and insert the cable into the pc. As mentioned before, the process can fail for many reasons. Sometimes unplugging the device, pressing briefly the tablet’s reset button and trying again helps.
4) Now prepare to continue working on Linux, a virtual machine like VirtualBox running Ubuntu should be enough. A bit over 2GB of free space will be needed.
a) Create a work directory, copy the system.img, ext4 utils and SuperSU files into it and open a terminal there.
b) If they aren't installed already, install compression and compilation tools (I might have been left out a few packages, I didn't have a clean setup to test it; if something isn't installed by default, finding the package shouldn't be hard). Assuming you are using Ubuntu:
Code:
sudo apt-get install unzip build-essential
c) Extract everything and compile the ext4 utils.
Code:
tar -xf ext4_utils_new_cygwin_fixed.tar.gz
unzip -d supersu UPDATE-SuperSU-v2.45.zip
cd ext4_utils_new; make; cd ..
d) Mount the original system image and copy everything it contains to a new directory.
Code:
mkdir system_old system_root
sudo mount -t ext4 -o loop system.img ./system_old
sudo cp -a system_old/* system_root
4) Install the SuperSU binaries and app.
The package I've included is intended to be installed automatically by the recovery menu, but we are going to do it manually by following the steps described in the setup script (supersu/META-INF/com/google/android/update-binary):
Code:
# API source target chmod chcon required
#
# 7-19 common/Superuser.apk /system/app/Superuser.apk 0644 u:object_r:system_file:s0 gui
# 20+ common/Superuser.apk /system/app/SuperSU/SuperSU.apk 0644 u:object_r:system_file:s0 gui
#
# 17+ common/install-recovery.sh /system/etc/install-recovery.sh 0755 *1 required
# 17+ /system/bin/install-recovery.sh (symlink to /system/etc/...) required
# *1: same as /system/bin/toolbox: u:object_r:system_file:s0 if API < 20, u:object_r:toolbox_exec:s0 if API >= 20
#
# 7+ ARCH/su /system/xbin/su *2 u:object_r:system_file:s0 required
# 7+ /system/bin/.ext/.su *2 u:object_r:system_file:s0 gui
# 17+ /system/xbin/daemonsu 0755 u:object_r:system_file:s0 required
# 17+ /system/xbin/sugote 0755 u:object_r:zygote_exec:s0 required
# *2: 06755 if API < 18, 0755 if API >= 18
#
# 19+ ARCH/supolicy /system/xbin/supolicy 0755 u:object_r:system_file:s0 required
# 19+ ARCH/libsupol.so /system/lib(64)/libsupol.so 0644 u:object_r:system_file:s0 required
#
# 17+ /system/bin/sh or mksh *3 /system/xbin/sugote-mksh 0755 u:object_r:system_file:s0 required
# *3: which one (or both) are available depends on API
#
# 21+ /system/bin/app_process32 *4 /system/bin/app_process32_original 0755 u:object_r:zygote_exec:s0 required
# 21+ /system/bin/app_process64 *4 /system/bin/app_process64_original 0755 u:object_r:zygote_exec:s0 required
# 21+ /system/bin/app_processXX *4 /system/bin/app_process_init 0755 u:object_r:system_file:s0 required
# 21+ /system/bin/app_process (symlink to /system/xbin/daemonsu) required
# 21+ *4 /system/bin/app_process32 (symlink to /system/xbin/daemonsu) required
# 21+ *4 /system/bin/app_process64 (symlink to /system/xbin/daemonsu) required
# *4: Only do this for the relevant bits. On a 64 bits system, leave the 32 bits files alone, or dynamic linker errors
# will prevent the system from fully working in subtle ways. The bits of the su binary must also match!
#
# 17+ common/99SuperSUDaemon *5 /system/etc/init.d/99SuperSUDaemon 0755 u:object_r:system_file:s0 optional
# *5: only place this file if /system/etc/init.d is present
#
# 17+ 'echo 1 >' or 'touch' *6 /system/etc/.installed_su_daemon 0644 u:object_r:system_file:s0 optional
# *6: the file just needs to exist or some recoveries will nag you. Even with it there, it may still happen.
#
# It may seem some files are installed multiple times needlessly, but
# it only seems that way. Installing files differently or symlinking
# instead of copying (unless specified) will lead to issues eventually.
#
# The following su binary versions are included in the full package. Each
# should be installed only if the system has the same or newer API level
# as listed. The script may fall back to a different binary on older API
# levels. supolicy are all ndk/pie/19+ for 32 bit, ndk/pie/20+ for 64 bit.
#
# binary ARCH/path build type API
#
# arm-v5te arm aosp static 7+
# x86 x86 aosp static 7+
#
# arm-v7a armv7 ndk pie 17+
# mips mips ndk pie 17+
#
# arm64-v8a arm64 ndk pie 20+
# mips64 mips64 ndk pie 20+
# x86_64 x64 ndk pie 20+
#
# Note that if SELinux is set to enforcing, the daemonsu binary expects
# to be run at startup (usually from install-recovery.sh, 99SuperSUDaemon,
# or app_process) from u:r:init:s0 or u:r:kernel:s0 contexts. Depending
# on the current policies, it can also deal with u:r:init_shell:s0 and
# u:r:toolbox:s0 contexts. Any other context will lead to issues eventually.
#
# After installation, run '/system/xbin/su --install', which may need to
# perform some additional installation steps. Ideally, at one point,
# a lot of this script will be moved there.
#
# The included chattr(.pie) binaries are used to remove ext2's immutable
# flag on some files. This flag is no longer set by SuperSU's OTA
# survival since API level 18, so there is no need for the 64 bit versions.
# Note that chattr does not need to be installed to the system, it's just
# used by this script, and not supported by the busybox used in older
# recoveries.
#
# Non-static binaries are supported to be PIE (Position Independent
# Executable) from API level 16, and required from API level 20 (which will
# refuse to execute non-static non-PIE).
#
# The script performs serveral actions in various ways, sometimes
# multiple times, due to different recoveries and firmwares behaving
# differently, and it thus being required for the correct result.
What the script is supposed to do depends on the API version, which can be identified by doing:
Code:
cat system_root/build.prop | grep "ro.build.version.sdk="
We should have API version 19, but at one point the instructions are misleading. When adjusting the security context of install-recovery.sh it states that it should match that of toolbox, which is correct, but next gives values for different API versions which do not match our case. We shouldn't trust them and use
Code:
ls -Z system_root/bin/toolbox
to obtain the right value, in our case ubject_r:toolbox_exec:s0 (as in API version higher than 20).
Next I give all the commands, so assuming the directory names are the same I used they can just be copied and pasted into the terminal:
Code:
sudo cp supersu/common/Superuser.apk system_root/app/
sudo chmod 0664 system_root/app/Superuser.apk
sudo chcon u:object_r:system_file:s0 system_root/app/SuperSU/SuperSU.apk
sudo cp supersu/common/install-recovery.sh system_root/etc/
sudo chmod 0755 system_root/etc/install-recovery.sh
#we have to copy the chcon of system_root/bin/toolbox: ls -Z system_root/bin/toolbox, the original script is misleading or our android setup isn't standard.
sudo chcon u:object_r:toolbox_exec:s0 system_root/etc/install-recovery.sh
sudo ln -s /system/etc/install-recovery.sh system_root/bin/install-recovery.sh
sudo cp supersu/armv7/su system_root/xbin/
sudo mkdir system_root/bin/.ext
sudo cp supersu/armv7/su system_root/bin/.ext/.su
sudo chmod 0755 system_root/xbin/su system_root/bin/.ext/.su
sudo chcon u:object_r:system_file:s0 system_root/xbin/su system_root/bin/.ext/.su
sudo cp supersu/armv7/su system_root/xbin/daemonsu
sudo cp supersu/armv7/su system_root/xbin/sugote
sudo chmod 0755 system_root/xbin/daemonsu system_root/xbin/sugote
sudo chcon u:object_r:system_file:s0 system_root/xbin/daemonsu
sudo chcon u:object_r:zygote_exec:s0 system_root/xbin/sugote
sudo cp supersu/armv7/supolicy system_root/xbin/
sudo cp supersu/armv7/libsupol.so system_root/lib/
sudo chmod 755 system_root/xbin/supolicy
sudo chmod 0755 system_root/xbin/supolicy
sudo chmod 0644 system_root/lib/libsupol.so
sudo chcon u:object_r:system_file:s0 system_root/xbin/supolicy
sudo chcon u:object_r:system_file:s0 system_root/lib/libsupol.so
sudo cp system_root/bin/mksh system_root/xbin/sugote-mksh
sudo chmod 0755 system_root/xbin/sugote-mksh
sudo chcon u:object_r:system_file:s0 system_root/xbin/sugote-mksh
6) Generate a new image file with make_ext4fs.
Code:
./ext4_utils_new/make_ext4fs -a system -l 1G system_root.img system_root/
We can now mount it and verify that the files are in place and with the right permissions.
Code:
mkdir system_test
sudo mount -t ext4 -o loop system_root.img ./system_test
ls -la system_test/app/SuperSU.apk
ls -Z system_test/app/SuperSU.apk
ls -la system_test/xbin/su
ls -Z system_test/xbin/su
And finally unmount everything
Code:
sudo umount system_root
sudo umount system_test
7) Return to Windows and flash our rooted system image.
a) Open the flash tool, checking that we have loaded the right scatter file.
b) Select “download only” in the drop-down menu, make sure only “ANDROID” is checked in the list and, double-clicking that entry, pick the system_rooted.img file we have just created.
c) Just as when we extracted the image, we press “Download” and plug in the USB cable with the device turned off. Note: If you have been using a virtual machine, at some point mounted the rooted image to check that all the files were in place and forgot to unmount it, the file will be locked and the flash tool can spit out an error message. It took me a few tries to notice and shut down the VM completely. Don’t be me.
8) After it has finished flashing, unplug the device and boot it again. The first time it boots it should show a boot message saying that it’s updating one app, and once it’s finished we should have a working rooted tablet.
Same here with the trekstor surftab breeze 7.0 quad (ST70408-2).
I have tried everything with no results...
did you try rootgenius? (shuame.com/en/root/)
Y es. I have tried with no results.
Sent from my XT1032 using xda premium
I did it the hard way, eventually. I dumped the original rom, mounted it on linux, copied all the SU binaries manually in the right places (following the instructions in the installation script), and flashed it back.
I'm not sure if I can get in trouble for uploading the whole rooted ROM, but as soon as I have some free time I'd like to at least post more detailed instructions, the programs I used and the scatter file for my 10.1 quad in case someone finds it useful.
I would really appreciate if you could find the time to add a description.
I have a Surftab Breeze 7.0 quad and I am struggeling with backing it up and rooting it.
Looking forward to reading your notes.
sdfsdfgdhshxzv said:
I did it the hard way, eventually. I dumped the original rom, mounted it on linux, copied all the SU binaries manually in the right places (following the instructions in the installation script), and flashed it back.
I'm not sure if I can get in trouble for uploading the whole rooted ROM, but as soon as I have some free time I'd like to at least post more detailed instructions, the programs I used and the scatter file for my 10.1 quad in case someone finds it useful.
Click to expand...
Click to collapse
can u attach your scatterfile plz?
mr9to5 said:
can u attach your scatterfile plz?
Click to expand...
Click to collapse
Sure. This is for my MT8127-based Trekstor Surftab Quad 10.1.
Sorry about the rest of my notes, I've just changed jobs and I'm having a few horribly busy weeks so I've had no time to make them presentable. But once you have the utilities to mount the image on linux, it's just a matter of extracting the supersu archive and looking into the setup script to see where every file goes, where to create links and which permissions to set for the right Android version.
I've finally added my step by step notes to the first post. I hope someone finds them useful.
sdfsdfgdhshxzv said:
I've finally added my step by step notes to the first post. I hope someone finds them useful.
Click to expand...
Click to collapse
very useful, but i have a big problem.
Code:
$ sudo chcon u:object_r:toolbox_exec:s0 system_root/etc/install-recovery.sh
chcon: ungültiger Kontext: u:object_r:toolbox_exec:s0: Datei oder Verzeichnis nicht gefunden
can u help?
mr9to5 said:
very useful, but i have a big problem.
Code:
$ sudo chcon u:object_r:toolbox_exec:s0 system_root/etc/install-recovery.sh
chcon: ungültiger Kontext: u:object_r:toolbox_exec:s0: Datei oder Verzeichnis nicht gefunden
can u help?
Click to expand...
Click to collapse
Hum... not sure what happened there. Can you please try this? (assuming you have used the same directory names I did, change them if you haven't)
Code:
ls -Z system_root/etc/install-recovery.sh
ls -Z system_old/bin/toolbox
sdfsdfgdhshxzv said:
Hum... not sure what happened there. Can you please try this? (assuming you have used the same directory names I did, change them if you haven't)
Code:
ls -Z system_root/etc/install-recovery.sh
ls -Z system_old/bin/toolbox
Click to expand...
Click to collapse
it works, but this errormessages are from selinux, the copied files have no content so we can´t change this.
Sucefull startet CWM recovery
not perfect but runs, incl adb root shell in recovery mode.
la solución al root de esta tablet esta aquí w w w . m g y u n . c o m /
100% efectiva.
---------- Post added at 12:47 PM ---------- Previous post was at 12:11 PM ----------
¿algun propietario de la surftab brisa 10.1 quad, me podría enviar las apk de bluetooth ?
es que manipulando un explorador root he borrado por equivocación estos archivos y no me funciona el bluetooth de la tablet.
gracias.
This is the XPAD linux kernel module, built for the Fire TV 2. Kindly enough, Amazon built their kernel with module support, so we can load modules. We'll have to wait until we get kexec before we can fully replace the kernel.
Note: I added modules for the Fire TV 1, but I don't own a Fire TV 1 so they're unsupported. I've had others tell me they work great though.
Demo Video
Prerequisites:
rooted amazon fire tv 2
Instructions:
Download the Zip and extract the two modules
Copy the modules to your fire tv wherever you like
Open a shell.
Type these commands, accept root permission on your FireTV if prompted:
Code:
su
mount -o remount,rw /system
cp /system/usr/keylayout/Vendor_045e_Product_0291.kl /system/usr/keylayout/Vendor_045e_Product_02d1.kl
chmod 644 /system/usr/keylayout/Vendor_045e_Product_02d1.kl
mount -o remount,ro /system
reboot
When your FireTV comes back up, open a shell again.
Type these commands, accept root permission on your FireTV if prompted:
Code:
su
insmod <module location>/ff-memless.ko
insmod <module location>/firepad.ko
Your controller should instantly work. Upon every reboot you'll have to 'insmod' the modules again.
A nice way to deal with this is D4rKn3sSyS's Module Loader Apk from 2011.
You can find that here: http://forum.xda-developers.com/showthread.php?t=1228605
Basically, you need to give it permanent root access, add your modules in the list, save them, and go into the settings of the app to enable it on boot. (Use the Menu key on your remote to enter the settings)
Enjoy!
Use at your own risk!
Source can be found here:
https://gitlab.com/miketweaver/android_kernel_amazon_sloane
Thanks goes to:
zeroepoch - For root. You rock, my friend.
xpad developers - They coded the module. I just changes a few function names to make it work on the firetv2.
Prebuilt Kernel Modules (DIY instructions found in next post)
Download Mirrors:
Fire TV 1 - OUTDATED
Fire TV 2
DIY/Build Instructions
Only if you want to build yourself. Prebuilt modules are found in the post above.
These instructions are geared towards a linux machine, though you may be able to adapt it to a windows environment.
Build Setup
Download and extract the AArch64 compiler
http://developer.android.com/ndk/downloads
Clone the repo
Code:
$ git clone https://gitlab.com/miketweaver/android_kernel_amazon_sloane.git
$ cd android_kernel_amazon_sloane/
Setup the build environment
Code:
$ export PATH=<path_to_ndk>/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/bin:$PATH
Create the kernel config
Code:
$ make ARCH=arm64 CROSS_COMPILE=aarch64-linux-android- mt8173_sloane_defconfig
Set Firepad to be a module in the kernel config
Code:
$ make ARCH=arm64 CROSS_COMPILE=aarch64-linux-android- menuconfig
Device Drivers -> Input Device Support -> Joysticks/Gamepads
Hit <M> to set "X-box Gamepad Support" as a module
(optional) Hit <space> to add "X-Box gamepad rumble support (NEW)" and "LED Support for Xbox360 controller 'BigX' LED (NEW)", if desired.
Build the kernel and modules
Code:
$ make ARCH=arm64 CROSS_COMPILE=aarch64-linux-android- -j<num_cores>
Copy the kernel and modules
Code:
$ cp arch/arm64/boot/Image <target_dir>/
$ find . -name '*ko' -exec cp '{}' ~/<target_dir>/ \;
The module you're looking for is "firepax.ko" and (optional) "ff-memless.ko".
Clean kernel sources (optional)
Code:
$ make ARCH=arm64 CROSS_COMPILE=aarch64-linux-android- mrproper
I added information about a good module loader.
http://forum.xda-developers.com/showthread.php?t=1228605
This solves the issue with the modules not surviving reboot.
It looks like you forgot to add the new files to the repo since they were untracked, although the old files were removed. I'm not trying to build it just an observation.
Any chance this can be done for the first Fire TV?
Sizzlechest said:
Any chance this can be done for the first Fire TV?
Click to expand...
Click to collapse
I don't have a firetv 1, but I should be able to cross compile for it. Give me a bit to check if I can build the kernel for it. Once I get it done, would you be willing to test?
zeroepoch said:
It looks like you forgot to add the new files to the repo since they were untracked, although the old files were removed. I'm not trying to build it just an observation.
Click to expand...
Click to collapse
Wow, that's a rookie mistake. Thanks for pointing that out. Fixed.
I also added the build instructions, for those who want to build themselves, or would like a guide on building the kernel for the fire tv 2.
Awesome! Thanks @bash-ninja ... I'm still trying to compile the aftv2 kernel with some of zeroepoch's fixes, but you're howto guide definitely helps. I might go buy a used xbox one controller just to test this.. lol.
Good work! :good:
z_thompsonpa said:
Awesome! Thanks @bash-ninja ... I'm still trying to compile the aftv2 kernel with some of zeroepoch's fixes, but you're howto guide definitely helps. I might go buy a used xbox one controller just to test this.. lol.
Good work! :good:
Click to expand...
Click to collapse
The guide is a simple adaptation of the Readme found in @zeroepoch's repo. The thanks goes to him!
bash-ninja said:
I don't have a firetv 1, but I should be able to cross compile for it. Give me a bit to check if I can build the kernel for it. Once I get it done, would you be willing to test?
Click to expand...
Click to collapse
Absolutely!
Sizzlechest said:
Absolutely!
Click to expand...
Click to collapse
Go ahead and give these a try:
https://www.androidfilehost.com/?fid=24269982087021362
I wanted to report that it works on my FireTV 1. BTW, how do I handle button mappings? I tried it with Pacman 256 and Crossy Road and the controls don't seem to work correctly. Pacman 256 works with the analog stick, but not the dpad. Crossy Road doesn't work at all.
Sizzlechest said:
I wanted to report that it works on my FireTV 1. BTW, how do I handle button mappings? I tried it with Pacman 256 and Crossy Road and the controls don't seem to work correctly. Pacman 256 works with the analog stick, but not the dpad. Crossy Road doesn't work at all.
Click to expand...
Click to collapse
Did you setup the .kl file? If you have, and rebooted, it should work just like the xbox 360 controller.
Code:
adb shell
$ su
$ mount -o remount,rw /system
$ cp /system/usr/keylayout/Vendor_045e_Product_0291.kl /system/usr/keylayout/Vendor_045e_Product_02d1.kl
$ chmod 644 /system/usr/keylayout/Vendor_045e_Product_02d1.kl
$ mount so remount,ro /system
$ reboot
I'm not home, but when I am, I'll take a look at those games and see if they work with the mapping I already have.
Edit: @Sizzlechest, I tested out Crossy Road. It didn't work with my controller, but neither did the generic controller I plugged in via USB. Whatever is causing issues in that game it's not just the Xbox Controller, but it's many others. There's something wrong with their app. (Makes sense pac-man 256 is having issues too because it's made by the same people) The apps I've tried and work are Asphalt, Minecraft, Moonlight Gaming, KOTOR, Prince of Persia, and Lego Star Wars.
I've never hooked up 360 controller, but for xbox one does this work wireless or wired usb?
YoColdRain said:
I've never hooked up 360 controller, but for xbox one does this work wireless or wired usb?
Click to expand...
Click to collapse
Plugged in via USB. The only devices that support the Xbox One wireless dongle are Windows 7, 8, and 10.
As far as I'm aware, no one has reversed engineered the Wireless dongle yet.
The 360 works wireless or wired, I've been told. I don't own a 360 controller.
hi ninja it doesnt work for me on my firetv1
do I need specific version of the firmware? I didn't update it after the initial root.
shell output:
Code:
[email protected]:/ $ su
su
[email protected]:/ # mount -o remount,rw /system
mount -o remount,rw /system
[email protected]:/ # cp /system/usr/keylayout/Vendor_045e_Product_0291.kl /system/usr/keylayout/Vendor_045e_Product_02d1.kl
_045e_Product_0291.kl /system/usr/keylayout/Vendor_045e_Product_02d1.kl <
[email protected]:/ # chmod 644 /system/usr/keylayout/Vendor_045e_Product_02d1.kl
chmod 644 /system/usr/keylayout/Vendor_045e_Product_02d1.kl
[email protected]:/ # mount so remount,ro /system
mount so remount,ro /system
[U]Usage: mount [-r] [-w] [-o options] [-t type] device directory[/U]
1|[email protected]:/ # reboot
reboot
thanks
godlike1984 said:
hi ninja it doesnt work for me on my firetv1
do I need specific version of the firmware? I didn't update it after the initial root.
only indication is this:
Code:
[email protected]:/ $ su
su
[email protected]:/ # mount -o remount,rw /system
mount -o remount,rw /system
[email protected]:/ # cp /system/usr/keylayout/Vendor_045e_Product_0291.kl /system/usr/keylayout/Vendor_045e_Product_02d1.kl
_045e_Product_0291.kl /system/usr/keylayout/Vendor_045e_Product_02d1.kl <
[email protected]:/ # chmod 644 /system/usr/keylayout/Vendor_045e_Product_02d1.kl
chmod 644 /system/usr/keylayout/Vendor_045e_Product_02d1.kl
[email protected]:/ # mount so remount,ro /system
mount so remount,ro /system
[U]Usage: mount [-r] [-w] [-o options] [-t type] device directory[/U]
1|[email protected]:/ # reboot
reboot
thanks
Click to expand...
Click to collapse
Looks like a typo on my part of the tutorial.
The command should be:
Code:
mount -o remount,ro /system
Also, is your controller a regular Xbox one? (not an elite/etc)
yes it is the normal one the newer model with regular jack for headphones... I am afraid it still doesn't work on my side... did i do something wrong using the typo that could prevent it from running?
After chatting with @godlike1984 it looks like his controller is registering as a covert forces controller (idVendor=045e, idProduct=02dd) instead of the regular xbox controller (idVendor=045e, idProduct=02d1). I'm going to see if I can get access to one to fix it. It may take awhile. If someone has a covert forces controller and has it working, let me know.
Any chance we can get something for wired 360 controllers, especially the Rock Candy ones. Helf the time the triggers respond and the same goes with the right stick.
This is a full featured port of NVIDIA L4T R32.7.2 (Ubuntu 18.04) for the SHIELD TV (2015, 2017). It has full hardware support including:
GPU acceleration
Wifi/Bluetooh
USB 3.0
HDMI with audio
microSD (supported models)
Power management
etc
DownloadDownload Latest (R32.7.2, 07/09/22)
DetailsThe main challenge in this port was getting the right kernel version to match with the on-device DTB. The DTB is structured in a way that Cboot must be able to parse (and modify it) and then Linux kernel must be able to parse it as well. There are various issue with previous documented methods of flashing a Jetson DTB. NVIDIA stopped distributing SHIELD TV (Foster) DTBs with L4T releases years ago so you would have to manually port a newer DTB or be stuck with an older kernel. Flashing an (years) older DTB is not an option because a newer Cboot will fail to parse it and you'll end up with a brick. Flashing a custom DTB is dangerous for this reason as well. Flashing an older Cboot is not possible due to signature requirements even on an unlocked device. So we are stuck with one option: build a L4T kernel around the device's Android DTB.
NVIDIA maintains two forks of Linux for Tegra X1. The L4T kernel and the Android (downstream) kernel are not 1-to-1 compatible. DTB property names can differ, ioctl structure sizes can differ, etc. I tried various ways to cleanly merge the two and ended up with the following working strategy:
Kernel 4.9 + NVIDIA drivers from Android fork
Build config from L4T release hand merged with options from the Android TV kernel
NVGPU drivers from L4T fork (due to lack of source for and need for compatibility with userland drivers)
Initramfs from L4T release
I also had to port some patches from one fork to the other (especially for NVGPU). The end result is a kernel that combines both forks and therefore is relatively stable and fully featured.
Booting
The build is tested with the 9.0.0 and 9.1.0 release. It is recommended that you update to 9.0.0.
Note that once you update Cboot, you cannot downgrade to a lower version anymore! If you do not update, some things may not work properly due to the DTB differences noted above however, any relatively "modern" build may still work.
You need a USB drive with at least 8GB of free space. Flash rootfs.img to the first partition (replace sdX1 with your USB drive partition):
Code:
$ sudo dd if=rootfs.img of=/dev/sdX1 bs=1MiB
Make sure your SHIELD TV is unlocked and connected to fastboot.
Either boot the kernel directly:
Code:
$ fastboot boot boot.img
Or you may also flash the kernel if you want to:
Code:
$ fastboot flash boot boot.img
$ fastboot reboot
The initramfs will attempt to boot from the following devices (in order):
1. sda1: First partition of external USB on 16GB model
2. sdb1: First partition of external USB on 500GB model
3. mmcblk2p1: First partition of microSD on supported models
4. mmcblk0p29: Userdata partition of eMMC on 16GB model
5. sda32: Userdata partition of HDD on 500GB model
6. sda33: Partition 33 of HDD on 500GB model (partition table modification needed)
7. sda34: Partition 34 of HDD on 500GB model (partition table modification needed)
8. mmcblk0p19: System partition of eMMC on 16GB model (too small to hold rootfs unless partition table is modified)
After installation, you should resize the partition if your device is > 8GB (replace sdX1 with your installation device).
Code:
$ sudo e2fsck -f /dev/sdX1
$ sudo resize2fs /dev/sdX1
Flashing to internal eMMC
If you wish to flash rootfs to your internal eMMC, you need to first install to a USB and boot into Ubuntu. Flashing from fastboot will NOT work due to some eMMC issues (I think Cboot does not respect the block remap).
The following will flash to the userdata partition and will WIPE any existing data on the device!
Code:
$ sudo dd if=rootfs.img of=/dev/mmcblk0p29 bs=1MiB
$ sudo e2fsck -f /dev/mmcblk0p29
$ sudo resize2fs /dev/mmcblk0p29
You can follow similar steps to flash to sda32 on a 500GB model. Follow the steps in the first section to flash boot.img.
Uninstalling
As long as you didn't touch the other partitions, you can easily restore Android TV with the recovery images.
Code:
$ fastboot erase userdata
$ fastboot flash boot nv-recovery-image-shield-atv-9.0.0/boot.img
TroubleshootingThe USB/microSD does not boot and is stuck at a blinking cursor
Make sure you wait long enough (at least five minutes).
Make sure your USB drive (or microSD) is formatted with MBR with a single partition. You should be writing to /dev/sdX1 (X is some letter) with a "1" at the end. Do not write to /dev/sdX.
Try to mark the first partition as bootable.
Manual BuildDownload Latest (R32.7.2, 07/09/22)
Prerequisite
Linux for Tegra R32.7.2
Linux for Tegra R32.7.2 Sources
Linux for Tegra R32.7.2 Root Filesystem
Jetson GCC Toolchain 32.2
NVIDIA SHIELD ANDROID TV 2015 Recovery OS Image 9.0.0
Utilities (apt install): simg2img, git, fastboot, abootimg
Building the kernel
1. Install the toolchain.
Code:
$ wget -O toolchain.tar.xz https://developer.nvidia.com/embedded/dlc/l4t-gcc-7-3-1-toolchain-64-bit
$ tar xpf toolchain.tar.xz
$ sudo mv gcc-linaro-7.3.1-2018.05-x86_64_aarch64-linux-gnu /opt/l4t-toolchain
2. Fetch the SHIELD TV Android kernel sources.
Code:
$ git clone --depth 1 https://nv-tegra.nvidia.com/r/linux-4.9.git -b rel-shield-r-9.0.2-opensource-4.9 linux-4.9
$ git clone --depth 1 https://nv-tegra.nvidia.com/r/linux-nvidia.git -b rel-shield-r-9.0.2-opensource nvidia
3. Fetch the Linux For Tegra NVGPU sources.
Code:
$ wget https://developer.nvidia.com/embedded/l4t/r32_release_v7.2/sources/t210/public_sources.tbz2
$ tar xpf public_sources.tbz2
$ tar xpf Linux_for_Tegra/source/public/kernel_src.tbz2
$ mv kernel/nvgpu nvgpu
You should have three directories: linux-4.9, nvidia, and nvgpu
4. Patch the sources.
Code:
$ cat patches/kernel-4.9/*.patch | patch -p1 -dlinux-4.9
$ cat patches/nvidia/*.patch | patch -p1 -dnvidia
$ cat patches/nvgpu/*.patch | patch -p1 -dnvgpu
5. Build the kernel and install the modules.
Code:
$ export CROSS_COMPILE=/opt/l4t-toolchain/bin/aarch64-linux-gnu-
$ export ARCH=arm64
$ mkdir -p Linux_for_Tegra/rootfs/
$ pushd linux-4.9
$ make shieldtv_defconfig
$ make -j$(nproc) zImage
$ make -j$(nproc) modules
$ make modules_install INSTALL_MOD_PATH=../Linux_for_Tegra/rootfs/
$ sudo chown -R root:root ../Linux_for_Tegra/rootfs/lib
$ popd
Building Root Filesystem
1. Extract jetson-210_linux_r32.7.2_aarch64.tbz2 and tegra_linux_sample-root-filesystem_r32.7.2_aarch64.tbz2.
Code:
$ tar xpf jetson-210_linux_r32.7.2_aarch64.tbz2
$ pushd Linux_for_Tegra/rootfs/
$ sudo tar xpf ../../tegra_linux_sample-root-filesystem_r32.7.2_aarch64.tbz2
$ sudo touch etc/nv_boot_control.conf
Note the use of sudo for the last two commands. This is required for file permissions to be correct. The touch at the end resolves a bug in NVIDIA's code that resulted in the installer not launching.
2. Install the filesystem.
Code:
$ cd ..
$ sudo ./apply_binaries.sh
$ popd
3. To enable Wifi and NVDEC, need to first convert vendor.img downlaoded from the SHIELD recovery image to an ext4 image.
Code:
$ simg2img nv-recovery-image-shield-atv-9.0.0/vendor.img vendor-raw.img
4. Next mount the image.
Code:
$ mkdir vendor
$ sudo mount -o loop vendor-raw.img vendor
5. Copy the firmware over.
Code:
$ sudo cp vendor/firmware/bcmdhd_clm_foster.blob Linux_for_Tegra/rootfs/lib/firmware/brcm/bcmdhd.clm_blob
$ sudo cp vendor/firmware/fw_bcmdhd.bin Linux_for_Tegra/rootfs/lib/firmware/brcm/fw_bcmdhd.bin
$ sudo cp vendor/firmware/nvram_foster_e_4354.txt Linux_for_Tegra/rootfs/lib/firmware/brcm/nvram.txt
$ sudo cp vendor/firmware/tegra21x/* Linux_for_Tegra/rootfs/lib/firmware/tegra21x/
$ sudo cp vendor/firmware/tegra21x/vic04_ucode.bin Linux_for_Tegra/rootfs/lib/firmware/nvidia/tegra210/
$ sudo umount vendor
6. Create and mount a new ext4 image. Note that we will create 8GiB image which should be enough to hold the root filesystem. After you flash it to your device and boot successfully, you'll want to run resize2fs.
Code:
$ dd if=/dev/zero of=rootfs.img bs=1MiB count=8196
$ mkfs.ext4 rootfs.img
$ mkdir mount
$ sudo mount -o loop rootfs.img mount
7. Copy the filesystem to the disk image.
Code:
$ sudo mv Linux_for_Tegra/rootfs/* mount/
$ sudo umount mount
Building boot image
1. Extract the existing initramfs.
Code:
$ mkdir initramfs
$ pushd initramfs
$ cat Linux_for_Tegra/bootloader/l4t_initrd.img | gunzip -c | cpio -i
2. Patch init.
Code:
$ cp patches/initramfs/init init
3. Rebuild the image.
Code:
$ find ./ | cpio -H newc -o -R root:root | gzip -9 -c > ../initramfs.img
4. Build boot.img
Code:
$ abootimg --create boot.img -f patches/bootimg.cfg -k linux-4.9/arch/arm64/boot/zImage -r initramfs.img
I've updated the download to fix an issue I found with connecting to 5GHz wifi. Using the other nvram.txt fixed it. I also noticed that NVENC/NVDEC doesn't work properly and am unsure if it's a kernel issue or a L4T issue. I tried building with nvdec bootloader disabled and used L4T's ns firmware and it still didn't work.
EDIT: Made another update to fix the NVENC/NVDEC issue. Additionally, the led lightbar control driver is added in. I also made the following systemd script to disable the lightbar at boot.
Code:
[Unit]
Description=Disable the lightbar
After=multi-user.target
[Service]
Type=oneshot
RemainAfterExit=yes
ExecStartPre=-/bin/sh -c "/sbin/rmmod leds-cy8c && /sbin/modprobe leds-cy8c"
ExecStart=/bin/sh -c "echo 0 > /sys/class/leds/led_lightbar/brightness"
ExecStop=/bin/sh -c "echo 255 > /sys/class/leds/led_lightbar/brightness"
[Install]
WantedBy=multi-user.target
Is this a fully working ubuntu desktop OS experience or is this a Kernel for the shield?
EgomafiaX said:
Is this a fully working ubuntu desktop OS experience or is this a Kernel for the shield?
Click to expand...
Click to collapse
Full Ubuntu 18.04, it’s not just a kernel. I’ve been using it for the past week and haven’t run into any issues so far. You can try it out without modifying anything by flashing rootfs.img to a usb drive and booting the kernel from fastboot.
Very Interesting, I just got my shield last week and i wanna try some few things on it. Don’t have any experience with flashing whatsoever
What's performance like? I was thinking of buying a new SBC but this could be just what I am looking for
moshtin said:
What's performance like? I was thinking of buying a new SBC but this could be just what I am looking for
Click to expand...
Click to collapse
Nvidia SHIELD TV Benchmarks in Ubuntu Shows Core i3 Like Performance - CNX Software
Nvidia SHIELD Android TV was announced this March with Nvidia Tegra X1 octa-core Cortex A57 + A53 processor. So far, I had not seen any Ubuntu or other
www.cnx-software.com
Hi!
Thanks for your work.
This seems promising. Any chance anything similar should work on SHIELD TV Pro (2019)?
I compared recovery images provided by NVIDIA and I did not come across many differences between vendor binaries so I guess there is won't be any issue with the roottfs and kernel.
However on the SHIELD TV Pro, the boot.img is twice as big and the recovery image seems to contain a DTB image (mdarcy.dtb.img) and a vbmeta.img. I suspect the boot process to be somewhat different on this plateform.
Did anyone manage to get anything working on a SHIELD TV Pro?
yifanlu said:
$ pushd kernel-4.9
Click to expand...
Click to collapse
I guess you meant:
Code:
$ pushd linux-4.9
yifanlu said:
$ sudo mv Linux_for_Tegra/rootfs/rootfs/* mount/
Click to expand...
Click to collapse
and
Code:
$ sudo mv Linux_for_Tegra/rootfs/* mount/
Also the shieldtv_defconfig is located in arm/ instead of arm64/ in the patches you provide.
I tried the instructions from the first post on a Shield TV (2017) model and after doing "fastboot boot boot.img" the screen goes black with a blinking underscore on the top left and gets stuck there.
Any idea on what could be wrong? I dd'ed the rootfs.img to a usb stick attached to the usb port adjacent to the hdmi port. The usb A->A cable for fastboot/adb is attached to the usb port away from the hdmi cable.
chaitan3 said:
I tried the instructions from the first post on a Shield TV (2017) model and after doing "fastboot boot boot.img" the screen goes black with a blinking underscore on the top left and gets stuck there.
Any idea on what could be wrong? I dd'ed the rootfs.img to a usb stick attached to the usb port adjacent to the hdmi port. The usb A->A cable for fastboot/adb is attached to the usb port away from the hdmi cable.
Click to expand...
Click to collapse
I also seem to have hit same roadblock, did you succed with this.
kihmathi said:
I also seem to have hit same roadblock, did you succed with this.
Click to expand...
Click to collapse
No, I have not been able to proceed. @yifanlu any hints on what we could do to debug?
I only have a 2015 shieldtv but I read the hardware are the same. Maybe I was wrong and there’s some kernel changes needed. I would diff the defconfig between the latest android release for both and see what the differences are. Then add those to the config.
EDIT: I downloaded the recovery image for 2017 and compared the kernel defconfig and it’s identical. That means the kernel isn’t the issue. My next guess would be the init script I wrote. Maybe the dev number is different on 2017?
Can confirm, I have the same issue on model P2897 not pro.
In my init script, I wait 10s for the root device to show up before giving up and trying the next one. Perhaps this isn’t long enough?
If you update the init file inside the initramfs, there is on line 71 “while [ ${count} -lt 20 ]” maybe change that to “while [ ${count} -lt 100 ]” to try 100 times (with 0.2s in between).
Could anyone here running this image try out https://github.com/cobalt2727/L4T-Megascript? It's been tested against the base model Nintendo Switch and a Jetson Nano, but no Shield hardware so far (although it should perfectly support it in theory)
yifanlu said:
In my init script, I wait 10s for the root device to show up before giving up and trying the next one. Perhaps this isn’t long enough?
If you update the init file inside the initramfs, there is on line 71 “while [ ${count} -lt 20 ]” maybe change that to “while [ ${count} -lt 100 ]” to try 100 times (with 0.2s in between).
Click to expand...
Click to collapse
I tried this on my 2017 shield, didn't fix the issue, there is a blinking underscore on the top left. Is there any way to get logs, or show some debug messages on the screen?