Related
Hi !
I'm actually porting/playing with ubuntu on my Galaxy S. The goal would be to boot ubuntu "natively" from the ubuntu initramfs, but since i was unable to get a working framebuffer output on kernel boot (if someone have a solution for this, it would really help me), i'm using a chrooted environment for now. Some guys already had ubuntu to run on the Galaxy S in a chrooted environment, but the android UI was still running (using a lot of memory) and we had to use VNC to experience the ubuntu desktop. With this version, X is using the s3cfb framebuffer and fbdev driver to draw to the screen. I have also modified a Xorg input driver (plpevtch) to have a preliminary touch screen support. Since we still run it after the android services initializations, ubuntu will use the current connection (wifi, 3G).
If someone want's to play/help/try this stuff, here is the procedure i'v done for now :
Requirements :
- A Linux computer ( tested on ubuntu 10.10 )
- Galaxy S i9000 running an android kernel with ext2 support ( tested with Universal lagfix kernel )
- root (provided with the previous kernel i think)
- busybox (market)
- sdcard 2GB at least, primary partition formated to ext2 (play with the scripts to change to fat or ext4 etc)
- I think that's all
Download :
Download the attached package and extract it, this one contains the required scripts to download/patch ubuntu, prepare the sdcard, and stat/stop ubuntu.
Usage :
create.sh :
usage : create.sh /path/to/my/ext2/sdcard
This script will download the ubuntu netbook 10.10 compressed image for arm, decompress it, mount it then copy the filesystem to a specified path (should be an ext2 formated partition on the sdcard, and be the first partition on the sdcard ( /dev/mmcblkXp1 ).
Should be run first, one time ...
start.sh :
usage : start.sh
This script run "droid_ubuntu_init.sh" on the phone, which stop the android interface, mount the sdcard, prepare the chrooted environment and start a chrooted session (chroot_init.sh, which simulate a "daemon" to allow services to run in the background and start the ubuntu desktop.
Should be run everytime you wants to start ubuntu.
update.sh :
usage : update.sh
At the first "boot", ubuntu desktop (X) will not work, we have to update the distribution. To do so, run "start.sh" (if not already done) to start ubuntu, then run this script. It will update ubuntu (you should really use a wifi connection to do so), and X should then work. It will also install an ssh server. This will take a long time
Should be run one time.
====== Notes =====
If you want to run some "services", you should edit the file "scripts/chroot_init.sh" and add your service here (after the ssh service for example).
The package contains the "patch" applied to the ubuntu rootfs, and the sources of the modified touchscreen xorg input driver.
I did not work on a "stop" script yet, you'll have to reboot the phone if you want the android UI back.
It's really a work in progress, nothing really usable for now.
This is realy cool thumbs up
Il defently start looking at this at first possible time slice.
Download the attached package
Click to expand...
Click to collapse
Hi, where is the script ?
I would love to see Ubuntu running in native mode like it did on my former HD2 (witch, btw, i still think it's the best smartphone ever, Galaxy S - no were near).
mdalacu said:
Hi, where is the script ?
I would love to see Ubuntu running in native mode like it did on my former HD2 (witch, btw, i still think it's the best smartphone ever, Galaxy S - no were near).
Click to expand...
Click to collapse
Won't that be primarily because of the HUGE amount of development for it?
What about trying with a lightweight disto like puppy linux? last one uses lucid lynx package and it can run in ram (so very light).
Also maybe you can make some kind of "boot menu" using recovery mode:
in recovery mode, android is not started so if we add an entry to to recovery to run the start script on the sd from there it should be what you are looking for.
The only big problem i see for me to port ubuntu or anything else natively is a way to debug the boot process. Unfortunately, i was unable to get the kernel framebuffer to work, i would really need some help on this. For now it work great enough in a chrooted env to port some drivers etc. Anyone ? Else yes i'm using a custom rootfs to debug the kernel/drivers/rootfs.
Let's hope i find the time to try this tonight, while booting from a Ubuntu livecd
Oups, i did forget to attach the files. .. Will do so tomorow.
Has anyone worked on "really" porting another distro, done some work on kernel drivers? Actually it seems the s3cfb framebuffer isnt hardware accelerated using fbdev, preventing screen rotation and such. Any hint?
Hi,
I'm a french poweruser of Ubuntu (Server/Desktop).
May I have your script please?
Thanks,
RolluS
Hi,
I'm a french poweruser of linux
Mais ou sont donc les scripts ?
How is the script ?
Julien_050
Cpasjuste said:
Oups, i did forget to attach the files. .. Will do so tomorow
Click to expand...
Click to collapse
Posting the script might generate more interest.
When the files are up, i will try it thx.
koe1974 said:
Posting the script might generate more interest.
Click to expand...
Click to collapse
+1
hi, i was almost at goal, but when starting X-session, it unmounts my sd card... any ideas?
Right when it starts?
Maybe some x app is taking over the sdcard.. just an idea
Hello,
I'm owning a Acer Iconia A200 and I found a Version of Ubuntu Touch, that was ported to the Iconia A500 (the A200 and the A500 are similar) so I downloaded it and tried to flash it. After some testing, i found out, how i have to modify the .zip file to flash it on my tablet. When I booted into System, the was no output except of the bootloader (acer logo). So I got the sourcecode of the native linux kernel for a500 and started compiling and added the zImage to the boot.img of the .zip file. After I flashed this .zip, i got a output of Linux kernel. The System still doesn't boot, because it cant mount the root partition. Does anybody have an Idea, why?
Native Linux Kernel:
http://forum.xda-developers.com/showthread.php?t=1158260
ubuntu touch for the a500:
http://forum.xda-developers.com/showthread.php?p=38428344#post38428344
Thanks in Advance
EDIT:
I've watched the kernel output.
It says something about
[7.50705] fs_mgr: cannot mount filesystem on /dev/block/mmcblk03 at /system
the folowing errors are resulting of that (accessing files at /system)
Hello . every one :laugh:. May i ask support for running linux natively on tab 3 7.0.?
Currently i could run Kali ,Ubuntu and Debian in my tablet,,, but only in chroot method , another is i am also able to install the image file (kali.img) in the 2nd partition of my ext sdcard to give it more space,,,, .
The only method that i couldnt make is to run it natively on this tab,,,, I hope there is solution to this ,,,,
How did you get the chroot method to work? I can't get it to
Sent from my 831C using XDA Free mobile app
reinaldistic said:
How did you get the chroot method to work? I can't get it to
Sent from my 831C using XDA Free mobile app
Click to expand...
Click to collapse
just download the complete linux installer ,allow superuser permission
then go to /data/data/com.zpwebsites.linuxonandroid/files
you will see a bootscript.sh file .Edit it using a text editor you prefered and find this line
"mount -t ext2 /dev/block/loop255 /data/local/mnt"
and edit it as
"mount -t ext4 /dev/block/loop255 /data/local/mnt"
save the file. and boot linux now via complete linux installer.
You must have terminal emulator and vnc (if you want to see the GUI).
:good:
stuff to DO
anvil_10 said:
Hello . every one :laugh:. May i ask support for running linux natively on tab 3 7.0.?
Currently i could run Kali ,Ubuntu and Debian in my tablet,,, but only in chroot method , another is i am also able to install the image file (kali.img) in the 2nd partition of my ext sdcard to give it more space,,,, .
The only method that i couldnt make is to run it natively on this tab,,,, I hope there is solution to this ,,,,
Click to expand...
Click to collapse
anvil,
working on p5210 towards this end.
you need
1 an arm-linux distro set to /boot /root and/or /system and /home on seperate partitions and then an .img of those partitions
to correspond to the limitations of your devices mmcblk setup.
2 rebuild your kernel to work with the above - mountpoints dev etc.
3 put up with android for a while because figuring out the above is going to take a WHILE.
if i figure out anything i will post.
m
an afterthought- most of it's already here in a lesser form i think it's mostly
unhooking from one userspace setup into another.
moonbutt74 said:
anvil,
working on p5210 towards this end.
you need
1 an arm-linux distro set to /boot /root and/or /system and /home on seperate partitions and then an .img of those partitions
to correspond to the limitations of your devices mmcblk setup.
2 rebuild your kernel to work with the above - mountpoints dev etc.
3 put up with android for a while because figuring out the above is going to take a WHILE.
if i figure out anything i will post.
m
an afterthought- most of it's already here in a lesser form i think it's mostly
unhooking from one userspace setup into another.
Click to expand...
Click to collapse
yeah i saw many post on other forum your procedure, but unfortunately i dont have any idea how to do it, like making the custom kernel to boot the linux distro instead of android,
init process and initramfs
anvil,
i was reading on another site that the linux kernel since 2.6 [i think] has a default behaviour of searching
for an init process in alternate locations when it can't find the first one, there's also an option
during configuration that allows you to specify an specific location of/for the ramdisk.
meaning if i understand it correctly, the kernel itself is bound to your boot/kernel mmcblk
by the bootloader BUT you could locate your init/ramdisk "off-world" by setting a different / location in kernel cmdline
you can also specify support for different compression methods for initramfs/initrd but i'm not sure if that actually builds in
or if you need a module [*.ko].
m
kali linux
How to get kali linux on tab 3 7.0?? Plz tell me . Tell what all things needed and how to??
Hi,
It's available here (sorry, I'm not allowed to post links):
goo.gl / sl6rMu (you only need nvidia-shield-tv-utopic.arm64.img.2G.gz and nvidia_boot.img, the remaining files are used for development)
OS: Ubuntu Core Utopic ARM64
Packets: typical: sshd plus LXDE
How to:
1. root/unlock your nvidia shield tv
2. unpack the disk image: nvidia-shield-tv-utopic.arm64.img.2G.gz (zcat nvidia-shield-tv-utopic.arm64.img.2G.gz >nvidia-shield-tv-utopic.arm64.img.2G)
3. save it to a microsd card (min ~2.5GB): dd if=nvidia-shield-tv-utopic.arm64.img.2G of=/dev/sdh bs=4194304 oflag=sync
4. Put your minisd card into nvidia shield tv
5 Boot into linux
a). (in bootloader) fastboot boot nvidia_boot.img
or
b). save it permanently as a recovery image (fastboot flash recovery nvidia_boot.img) and boot into it (3 sec tap during shield tv boot, then choose 'boot recovery kernel')
user: android pass: changeme
user: root pass: changeme
What works:
- eth card
- usb hub
- wifi (probably, firmware is there and the card is able to scan networks)
- virtual terminal / framebuffer (you should be able to log in with an usb keyboard)
What doesn't work:
- bluetooth (probably, I haven't tested it)
- sometimes xorg doesn't display anything after boot, and it's necessary to restart lxdm: stop lxdm; start lxdm
- accelerated gfx driver (nvidia hasn't released aarch64 drviers yet)
There are also scripts and the kernel config I used to build the boot image on the drive
I unfortunately won't have time to try this until later next week, so I want to ask a quick question. What kernel is this? Mainline or a modified Nvidia? I tinkered with a Fedora kernel a little while back and couldn't get it to boot.
In any case, next week I need to dive back into getting multirom working here, things like this is what I need it for.
Steel01 said:
I unfortunately won't have time to try this until later next week, so I want to ask a quick question. What kernel is this? Mainline or a modified Nvidia? I tinkered with a Fedora kernel a little while back and couldn't get it to boot.
Click to expand...
Click to collapse
It's a compiled kernel from nvidia's repo
nv-tegra.nvidia.com / gitweb / ?p=linux-3.10.git;a=summary
The config is here: nvidia_shield_tv_root -> kernel_config -> 3.10.config-foster_e.txt
From what I remember the changes (to the stock config) were not extensive, things like disabling "Android paranoid sockets", enabling "Mount devtmpfs at boot", adding some features like namespaces
jagger11 said:
Hi,
It's available here (sorry, I'm not allowed to post links):
goo.gl / sW5K3T
https drive google.com / folderview ? id=0B86hdL7CeBvAfjBfNkhqMVB1dzZSS1VxUVBJZmFqSXNFYUhpN2lHcklhVzZtX0Z5OENxdU0
OS: Ubuntu Core Utopic ARM64
Packets: typical: sshd plus LXDE
How to:
1. root/unlock your nvidia shield tv
2. unpack the disk image: nvidia-shield-tv-utopic.arm64.img.2G.gz (zcat nvidia-shield-tv-utopic.arm64.img.2G.gz >nvidia-shield-tv-utopic.arm64.img.2G)
3. save it to a microsd card (min ~2.5GB): dd if=nvidia-shield-tv-utopic.arm64.img.2G of=/dev/sdh bs=4194304 oflag=sync
4. Put your minisd card into nvidia shield tv
5 Boot into linux
a). fastboot boot nvidia_boot.img, or
b). save it permanently as a recovery image (fastboot flash recovery nvidia_boot.img) and boot into it (3 sec tap during shield tv boot, then choose 'boot recovery kernel')
user: android pass: changeme
user: root pass: changeme
What works:
- eth card
- usb hub
- wifi (probably, firmware is there and the card is able to scan networks)
- virtual terminal / framebuffer (you should be able to log in with an usb keyboard)
What doesn't work:
- bluetooth (probably, I haven't tested it)
- sometimes xorg doesn't display anything after boot, and it's necessary to restart lxdm: stop lxdm; start lxdm
There are also scripts and the kernel config I used to build the boot image on the drive
Click to expand...
Click to collapse
First link is missing img for step 2, second link has img but cannot be downloaded due to it not being a public file.
alwaysbless said:
First link is missing img for step 2, second link has img but cannot be downloaded due to it not being a public file.
Click to expand...
Click to collapse
Thanks, I fixed the goo.gl link
Files should be 'downloadable' now.
BTW, you only need nvidia-shield-tv-utopic.arm64.img.2G.gz and nvidia_boot.img - the remaining files are used for development
Request Help to boot ubuntu on NVIDIA SHIELD PRO
Hi Team,
This is vinod mopuri .Trying to install ubuntu (dual boot) on NVIDIA SHIELD PRO and followed steps as suggested but while booting NVDIA SHIELD doesn't ask from which device need to boot up.
Can any one suggest how to enable to boot from sd card instead of default path what i'm missing ?
Really appreciate your help in advance.
Steps followed :
1. root/unlock your nvidia shield tv
Vinod: How to do this ? please advice is it possible to have dual boot ?
2. unpack the disk image: nvidia-shield-tv-utopic.arm64.img.2G.gz (zcat nvidia-shield-tv-utopic.arm64.img.2G.gz >nvidia-shield-tv-utopic.arm64.img.2G)
vinod: Done,on linux machine
3. save it to a microsd card (min ~2.5GB): dd if=nvidia-shield-tv-utopic.arm64.img.2G of=/dev/sdh bs=4194304 oflag=sync
Vinod: Done (tried with linux and fat file system) on micro sd card.
4. Put your minisd card into nvidia shield tv
Vinod : Done.
--- VInod Mopuri
Nice work!
I actually managed to boot arch linux with the same nvidia_boot.img. (Go to the arch linux arm site and select: Platforms, ARMv8, Generic.)
No luck with graphics acceleration thought. Hopefully the "Smaug" platform will bring those X11 drivers with it.
Cheers!
You need to use fastboot to boot the image that was in the first post. That contains the the boot information. You can flash that's stated, or just boot it via fastboot to not change anything on the system.
Edit: sorry, thought I hit quote. Response to the guy unable to boot.
I just tried it, but without luck.
I was able to flash the microSDcard and booting via fastboot.
1. adb reboot bootloader
2. fastboot boot nvidia_boot.img
- it seem's it doesn't read the image from sdcard
downloading 'boot.img'...
OKAY [ 0.751s]
booting...
OKAY [ 0.003s]
finished. total time: 0.753s
- I get the NVIDIA logo on the hdmi screen
- then it changes to a black screen
- now, nothing happens at all
BTW, I'm using the standard NVIDIA SHIELD ANDROID-TV, not the PRO model.
dieter.reuter said:
I just tried it, but without luck.
I was able to flash the microSDcard and booting via fastboot.
1. adb reboot bootloader
2. fastboot boot nvidia_boot.img
- it seem's it doesn't read the image from sdcard
downloading 'boot.img'...
OKAY [ 0.751s]
booting...
OKAY [ 0.003s]
finished. total time: 0.753s
- I get the NVIDIA logo on the hdmi screen
- then it changes to a black screen
- now, nothing happens at all
BTW, I'm using the standard NVIDIA SHIELD ANDROID-TV, not the PRO model.
Click to expand...
Click to collapse
I also have the non-PRO version. Some ideas
* did you unzip the image before flashing it
* is your microsd card seen correctly in android
* maybe it's actually booting, and you don't see anything on the screen, scan your network with 'nmap -sP 192.168.0.0/24' (or whatever network you're using) to check for new devices
jagger11 said:
It's a compiled kernel from nvidia's repo
nv-tegra.nvidia.com / gitweb / ?p=linux-3.10.git;a=summary
The config is here: nvidia_shield_tv_root -> kernel_config -> 3.10.config-foster_e.txt
From what I remember the changes (to the stock config) were not extensive, things like disabling "Android paranoid sockets", enabling "Mount devtmpfs at boot", adding some features like namespaces
Click to expand...
Click to collapse
Looking for a little more help on building the kernel. I am having problems with the usb 3.0 getting deadlock and want to turn on more kernel info to find the problem. I cloned the git repo you mentioned and then checked out the branch rel-22r2-golden-fostermp. I used your config and your ubuntu image on the shield tv to compile the kernel and then made a boot img with your Makefile. However, the kernel will not boot. Is there another step I am missing? Everything looks like it should work but does not. I only have limited debug because my img only makes the nvidia logo flash on the screen.
granolamatt said:
Looking for a little more help on building the kernel. I am having problems with the usb 3.0 getting deadlock and want to turn on more kernel info to find the problem. I cloned the git repo you mentioned and then checked out the branch rel-22r2-golden-fostermp. I used your config and your ubuntu image on the shield tv to compile the kernel and then made a boot img with your Makefile. However, the kernel will not boot. Is there another step I am missing? Everything looks like it should work but does not. I only have limited debug because my img only makes the nvidia logo flash on the screen.
Click to expand...
Click to collapse
IIRC you need to use arch/arm64/boot/Image and not arch/arm64/boot/zImage - i.e. the one which is 15-20MB in size. The naming of zImage in the makefile is confusing.
One more thing, the initrd doesn't need to include the kernel, you can safely remove the kernel from the dir, which is used as root for initramfs, my mistake to put it there.
jagger11 said:
IIRC you need to use arch/arm64/boot/Image and not arch/arm64/boot/zImage - i.e. the one which is 15-20MB in size. The naming of zImage in the makefile is confusing.
One more thing, the initrd doesn't need to include the kernel, you can safely remove the kernel from the dir, which is used as root for initramfs, my mistake to put it there.
Click to expand...
Click to collapse
Brilliant!! That did it, I can compile now to see what is going on. I am trying to attach a Nuand bladeRF to the shield TV and use it's gpu to process the RF. I am running into deadlock issues running it at 3.0 regardless of rate. However, if I run it through a 2.0 hub and force it to 2.0 it runs fine. Thought it was kernel related but same story in Android.
This will help me figure out what is going on. I can let you know as I find out more, specifically if I get cuda going in ubuntu on the shield tv and what I find out about the usb.
Your post is what gave me the idea and I bought a shield tv because of it. It is most helpful and I just want to say many thanks!!!
Hello,
First off, thank you for this. It was great to get linux running on my shield tv.
Did anyone succeed in getting CUDA running? Or the cuda driver kernel module?
If yes, then which branch or tag from the nvidia 3.10 kernel repository worked for you?
Thanks
Hello,
thank you very much for the pre-built kernel and ubuntu images. I have 2 questions regarding the Pro model.
1) Can I use the same kernel image for the Pro version of the shield or do I have to compile one for myself?
2) Is it possible to install ubuntu onto the 500GB HDD itself? If yes, I would be really glad for some pointers.
Thanks
Imasius said:
Hello,
thank you very much for the pre-built kernel and ubuntu images. I have 2 questions regarding the Pro model.
1) Can I use the same kernel image for the Pro version of the shield or do I have to compile one for myself?
2) Is it possible to install ubuntu onto the 500GB HDD itself? If yes, I would be really glad for some pointers.
Thanks
Click to expand...
Click to collapse
1. Should be absolutely fine.
2. Nope. This should not be considered stable enough for a perminant solution, and would not suggest using it that way. Definately stick to micro SD for the time being.
Nvidia tegra x1 development board is avaiable.
Linux4Tegra now is compatible with X1.
Good luck. I hope soon you can port it to Shield TV.
http://www.cnx-software.com/2015/11/11/nvidia-jetson-tx1/
Compiling kernel
granolamatt said:
Looking for a little more help on building the kernel. I am having problems with the usb 3.0 getting deadlock and want to turn on more kernel info to find the problem. I cloned the git repo you mentioned and then checked out the branch rel-22r2-golden-fostermp. I used your config and your ubuntu image on the shield tv to compile the kernel and then made a boot img with your Makefile. However, the kernel will not boot. Is there another step I am missing? Everything looks like it should work but does not. I only have limited debug because my img only makes the nvidia logo flash on the screen.
Click to expand...
Click to collapse
Where exactly is rel-22r2-golden-fostermp?
kernel does not compile
hausi14 said:
Where exactly is rel-22r2-golden-fostermp?
Click to expand...
Click to collapse
/bin/sh: 1: -Wp,-MD,arch/arm64/kernel/vdso32/.vgettimeofday.o.d: not found
/kernel/linux-3.10/arch/arm64/kernel/vdso32/Makefile:36: recipe for target 'arch/arm64/kernel/vdso32/vgettimeofday.o' failed
make[2]: *** [arch/arm64/kernel/vdso32/vgettimeofday.o] Error 127
scripts/Makefile.build:455: recipe for target 'arch/arm64/kernel/vdso32' failed
make[1]: *** [arch/arm64/kernel/vdso32] Error 2
Makefile:802: recipe for target 'arch/arm64/kernel' failed
I was able to find out the mentioned kernel. But now it does crash on vdso32. Does somebody have any idea?
Is there any Ubuntu that does not require rooting the sheild that layers over Android, like Ubuntu on Android does. I had one uncompleted on on my tab years ago, but they abandoned it.
Thanks.
I present to you instructions on how to get Arch Linux working natively on your shield TV dual booted with your Android rom. This is all thanks to the amazing people in this thread for getting Ubuntu on the shield and would not be possible without them.
http://forum.xda-developers.com/shield-tv/general/ubuntu-utopic-nvidia-shield-tv-t3150352
This install will put arch Linux on a micro SD card, and does not modify your shield at all if you so choose. First download these 2 files.
Archlinux Stage 3 install
http://archlinuxarm.org/os/ArchLinuxARM-aarch64-generic-latest.tar.gz
Kernel (Credits to jagger11 from his thread) You only need nvidia_boot.img
https://drive.google.com/folderview...ZSS1VxUVBJZmFqSXNFYUhpN2lHcklhVzZtX0Z5OENxdU0
To intstall
1. Unlock your shield TV
2. Format your SD card to EXT4
3. Mount the SD card
4. As the root user on your linux distro (not sudo) run this command (From the same directory that you downloaded that file to, and replacing mountpoint to where you mounted the SD to)
bsdtar -xpf ArchLinuxARM-aarch64-generic-latest.tar.gz -C mountpoint
5. Unmount the drive, then run the command "sync". When that finishes, pull the SD card from the computer.
6. Put the SD in the shield
7. Reboot to bootloader (adb reboot fastboot) with your preferred method
8. Boot Linux
To boot it once run this
a) fastboot boot nvidia_boot.img
To save to recovery run this (Reboot android to recovery to boot arch after)
b) fastboot flash recovery nvidia_boot.img
Default users and passwords are
root:root
alarm:alarm
For more information, check this page.
http://archlinuxarm.org/platforms/armv8/generic
Tested Working
*Ethernet
*USB
*TTY Terminals
*Framebuffer (Install X11 as usual and xf86-video-fbdev)
Untested
*WIFI (Should work)
*Bluetooth (Probably doesn't work)
Broken
*3D acceleration (Will work on this in the future)
*You tell me
*Sometimes does not boot after a few working boots (I think it's a problem with my SD, or my android install messing with it. Working that out now, but please report if you have this issue only after it boots fine at least once)
My request to you. I am not a kernel dev any more. I once was, but things have unfortunately changed, and I don't have the time or resources to learn it all again. If anyone wants to develop a kernel for this, please do and I'll add it in the OP. Unless something changes, and Ubuntu kernel from the Utopic thread will work fine here)
I'll format this a bit better later, but hopefully this is a good start. I have some good tips and tricks to add if people are interested in this, and was able to watch quite a lot of my videos in vlc even on framebuffer. Please give me some feedback on what you want to see, and ask any questions. I'll be glad to help!
kdb424 said:
I present to you instructions on how to get Arch Linux working natively on your shield TV dual booted with your Android rom. This is all thanks to the amazing people in this thread for getting Ubuntu on the shield and would not be possible without them.
http://forum.xda-developers.com/shield-tv/general/ubuntu-utopic-nvidia-shield-tv-t3150352
This install will put arch Linux on a micro SD card, and does not modify your shield at all if you so choose. First download these 2 files.
Archlinux Stage 3 install
http://archlinuxarm.org/os/ArchLinuxARM-aarch64-generic-latest.tar.gz
Kernel (Credits to jagger11 from his thread) You only need nvidia_boot.img
https://drive.google.com/folderview...ZSS1VxUVBJZmFqSXNFYUhpN2lHcklhVzZtX0Z5OENxdU0
To intstall
1. Unlock your shield TV
2. Format your SD card to EXT4
3. Mount the SD card
4. As the root user on your linux distro (not sudo) run this command (From the same directory that you downloaded that file to, and replacing mountpoint to where you mounted the SD to)
bsdtar -xpf ArchLinuxARM-aarch64-generic-latest.tar.gz -C mountpoint
5. Unmount the drive, then run the command "sync". When that finishes, pull the SD card from the computer.
6. Put the SD in the shield
7. Reboot to bootloader (adb reboot fastboot) with your preferred method
8. Boot Linux
To boot it once run this
a) fastboot boot nvidia_boot.img
To save to recovery run this (Reboot android to recovery to boot arch after)
b) fastboot flash recovery nvidia_boot.img
Default users and passwords are
root:root
alarm:alarm
For more information, check this page.
http://archlinuxarm.org/platforms/armv8/generic
Tested Working
*Ethernet
*USB
*TTY Terminals
*Framebuffer (Install X11 as usual and xf86-video-fbdev)
Untested
*WIFI (Should work)
*Bluetooth (Probably doesn't work)
Broken
*3D acceleration (Will work on this in the future)
*You tell me
*Sometimes does not boot after a few working boots (I think it's a problem with my SD, or my android install messing with it. Working that out now, but please report if you have this issue only after it boots fine at least once)
My request to you. I am not a kernel dev any more. I once was, but things have unfortunately changed, and I don't have the time or resources to learn it all again. If anyone wants to develop a kernel for this, please do and I'll add it in the OP. Unless something changes, and Ubuntu kernel from the Utopic thread will work fine here)
I'll format this a bit better later, but hopefully this is a good start. I have some good tips and tricks to add if people are interested in this, and was able to watch quite a lot of my videos in vlc even on framebuffer. Please give me some feedback on what you want to see, and ask any questions. I'll be glad to help!
Click to expand...
Click to collapse
Thanks for the new thread. You are correct that the "nvidia_boot.img" from jagger11 can boot to archLinux but the kernel I built can't.
I have always been using Ubuntu with desktop enabled by default. How did you install X11 under archLinux?
yahoo2016 said:
Thanks for the new thread. You are correct that the "nvidia_boot.img" from jagger11 can boot to archLinux but the kernel I built can't.
I have always been using Ubuntu with desktop enabled by default. How did you install X11 under archLinux?
Click to expand...
Click to collapse
Following the standard guide on their wiki.
I installed
xorg-server
xorg-server-utils
xorg-init
xf86-video-fb
And then just the standard startx after setting my xinitrc to the usual. In my case I used awesome WM, though you can use any, and exec that in your .xinitrc file
kdb424 said:
Following the standard guide on their wiki.
I installed
xorg-server
xorg-server-utils
xorg-init
xf86-video-fb
And then just the standard startx after setting my xinitrc to the usual. In my case I used awesome WM, though you can use any, and exec that in your .xinitrc file
Click to expand...
Click to collapse
I have to admit I was spoiled by Ubuntu which installs everything by default. I have to read archLinux wiki and try them tomorrow morning.
yahoo2016 said:
I have to admit I was spoiled by Ubuntu which installs everything by default. I have to read archLinux wiki and try them tomorrow morning.
Click to expand...
Click to collapse
Those packages will do you other than desktop manager, but I have to say, I'm pretty minimalist, and arch is by default, so don' feel too bad. I've just been using arch for the last few years, and was using Gentoo before that, which is all even more manual and source built.
https://wiki.archlinux.org/index.php/Xorg
That page will go through it all. Once you know what desktop manager you want (I recommend XFCE if you don't know what, or LXDE which is even lighter), check the pages out on there for them. It covers haw to do absolutely everything. I honestly use arch linux for the wiki. It's by far the best source of linux information on the net I'd be willing to bet.
kdb424 said:
Those packages will do you other than desktop manager, but I have to say, I'm pretty minimalist, and arch is by default, so don' feel too bad. I've just been using arch for the last few years, and was using Gentoo before that, which is all even more manual and source built.
https://wiki.archlinux.org/index.php/Xorg
That page will go through it all. Once you know what desktop manager you want (I recommend XFCE if you don't know what, or LXDE which is even lighter), check the pages out on there for them. It covers haw to do absolutely everything. I honestly use arch linux for the wiki. It's by far the best source of linux information on the net I'd be willing to bet.
Click to expand...
Click to collapse
What display driver should I install?
The wiki starts with
lspci | grep -e VGA -e 3D
But lspci does not work for shield TV.
yahoo2016 said:
What display driver should I install?
The wiki starts with
lspci | grep -e VGA -e 3D
But lspci does not work for shield TV.
Click to expand...
Click to collapse
xf86-video-fbdev works for me. Since we don't have access to the GPU directly, we are using the framebuffer at the moment.
kdb424 said:
xf86-video-fbdev works for me. Since we don't have access to the GPU directly, we are using the framebuffer at the moment.
Click to expand...
Click to collapse
That confused me since I thought xf86 meant x86 but Shield has Arm CPUs.
yahoo2016 said:
That confused me since I thought xf86 meant x86 but Shield has Arm CPUs.
Click to expand...
Click to collapse
Yeah, it's actually got nothing to do with architecture. Not quite sure why they are named as such. Also, xf86-video-fbdev isn't listed there as it's a last resort kinda thing, but it works well on the shield for the moment. Once I figure out why my system stops booting linux from time to time, I'll work on GPU drivers. Hard to know what broke it if I don't fix that first.
kdb424 said:
Yeah, it's actually got nothing to do with architecture. Not quite sure why they are named as such. Also, xf86-video-fbdev isn't listed there as it's a last resort kinda thing, but it works well on the shield for the moment. Once I figure out why my system stops booting linux from time to time, I'll work on GPU drivers. Hard to know what broke it if I don't fix that first.
Click to expand...
Click to collapse
You may want to have a look at this: https://github.com/NVIDIA/tegra-nouveau-rootfs
Arch Linux is the target rootfs and the Jetson TX1 is supported. Now the questions is how to get a mainline kernel running on shield tv. I guess one issue is the device tree which will not be provided by uboot like on normal arm systems. In the kernel configuration you can define that the device tree is appended to the kernel image (e.g. by "cat Image foster.dtb > newImage"). Maybe this is a solution.
Thanks_Meter said:
You may want to have a look at this: https://github.com/NVIDIA/tegra-nouveau-rootfs
Arch Linux is the target rootfs and the Jetson TX1 is supported. Now the questions is how to get a mainline kernel running on shield tv. I guess one issue is the device tree which will not be provided by uboot like on normal arm systems. In the kernel configuration you can define that the device tree is appended to the kernel image (e.g. by "cat Image foster.dtb > newImage"). Maybe this is a solution.
Click to expand...
Click to collapse
Thanks for the info. I'm going to have the next 2 days off work, so I'll definately get to work. I'm going to need assistance in getting a working kernel as I don't have an x86 machine around currently. Crazy, I know, but I don't. I'll see if I can get the drivers installed if someone works on a kernel. If not, I'll contact some of my linux friends and see what they come up with.
kdb424 said:
Thanks for the info. I'm going to have the next 2 days off work, so I'll definately get to work. I'm going to need assistance in getting a working kernel as I don't have an x86 machine around currently. Crazy, I know, but I don't. I'll see if I can get the drivers installed if someone works on a kernel. If not, I'll contact some of my linux friends and see what they come up with.
Click to expand...
Click to collapse
That link mentioned:
"The first prerequisite is that you must use an up-to-date U-Boot as bootloader"
Jetson TK1 and TX1 uses U-boot, Shield TV however uses fastboot not U-boot and the kernel is not Linux but Android.
I'd really like someone can have u-boot ported to Shield TV as 2nd or 3rd stage boot loader.
Damn! I just found out that this CONFIG_ARM_APPENDED_DTB trick only works with zImage but not with Image as needed for abootimg. Currently I don't have an idea how to get a mainline kernel running on the shield tv. I guess uboot makes no sense since we don't have an uart.
Thanks_Meter said:
Damn! I just found out that this CONFIG_ARM_APPENDED_DTB trick only works with zImage but not with Image as needed for abootimg. Currently I don't have an idea how to get a mainline kernel running on the shield tv. I guess uboot makes no sense since we don't have an uart.
Click to expand...
Click to collapse
u-boot could use netconsole:
http://forum.doozan.com/read.php?3,14,14
---------- Post added at 10:33 PM ---------- Previous post was at 10:28 PM ----------
My kernel can boot to command line archLinux now, I updated the procedure:
http://forum.xda-developers.com/showpost.php?p=64330336&postcount=147
I'll try that kernel when get home with the gui running on framebuffer. Should work.
kdb424 said:
I'll try that kernel when get home with the gui running on framebuffer. Should work.
Click to expand...
Click to collapse
I uploaded my latest kernel tested with command line archLinux:
https://drive.google.com/file/d/0Bz5kaPQJx_AgUklNekxGeWFuNW8/view
yahoo2016 said:
I uploaded my latest kernel tested with command line archLinux:
https://drive.google.com/file/d/0Bz5kaPQJx_AgUklNekxGeWFuNW8/view
Click to expand...
Click to collapse
Any chance you can maybe try to patch in the Nouveau kernel driver from here?
With a kernel running that I can get 3D acceleration work started. Till I get that sorted out I can only guess if my changes are working or not.
I'll also be trying to get the closed source binaries running on this. I have decided to pay a decent sum of money for a VPS to get a compile machine. Hopefully we can get this project rolling.
kdb424 said:
Any chance you can maybe try to patch in the Nouveau kernel driver from here?
With a kernel running that I can get 3D acceleration work started. Till I get that sorted out I can only guess if my changes are working or not.
I'll also be trying to get the closed source binaries running on this. I have decided to pay a decent sum of money for a VPS to get a compile machine. Hopefully we can get this project rolling.
Click to expand...
Click to collapse
I did not expect it'd take me so long just to have gui running for archLinux. As I mentioned before this thread started, I'd like to try Cuda 7.0 on ArchLinux. I main goal is to have Cuda working so I can use Gpgpu of Tegra for image processing and other applications.
A script or procedure for post installation to quickly install gui is what I was interested. To install archlinux rootfs without gui was very simple and I did it the first day when I received my Shield TV to troubleshoot Utopic rootfs. I could read the wiki to have gui working for archLinux, but I have to spend my time on other things, e.g., without hope to have u-boot or multirom working for Shield TV, I have to learn Android kernel (I'm in the process of clone Android kernel source tree).
I'll write a script for you once I get home. Thanks for the input. Any requests for a desktop environment or window manager? If not I'll just pick a light one like lxde.
kdb424 said:
I'll write a script for you once I get home. Thanks for the input. Any requests for a desktop environment or window manager? If not I'll just pick a light one like lxde.
Click to expand...
Click to collapse
Any desktop is fine. I'd like to push Cuda 7.0 from my build PC to archLinux like I did for L4T. Network connection and any desktop are what I need. If it works, we can see performance differences between 32 bits and 64 bits
Thanks.