Hi there,
I got Linux to boot at OPAL via linwizard project. Here are steps needed to get it work.
1) download image from:
http://tinderbox.x86.dev.gentoo.org/embedded/linwizard/gizard-20080602.tar.bz2
2) copy content of file to the microSD card
3) edit default txt and replace init=/linuxrc with init=/bin/sh
4) run haret and let it boot.
After a while you'll get to shell. No graphics.
Now you can attach microusb cable and connect it with your linux laptop (I recommend ubuntu)
and you will get usb0 interfece to start up.
Which IP to use to connect with OPAL I still must investigate.
Well ip connectivity now works:
ip=<client-ip>:<server-ip>:<gw-ip>:<netmask>:<hostname>:<device>:<autoconf>
Notas:/# ifconfig usb0 up 192.168.2.200 netmask 255.255.255.0
Listik:/usr/src/linux-2.6.27/Documentation# ping 192.168.2.202
PING 192.168.2.202 (192.168.2.202) 56(84) bytes of data.
64 bytes from 192.168.2.202: icmp_seq=1 ttl=64 time=2.95 ms
64 bytes from 192.168.2.202: icmp_seq=2 ttl=64 time=1.72 ms
And how to do it:
prolong "set CMDLINE" line with
ip=192.168.2.202:192.168.2.200:192.168.2.200pal:usb0
But in this image there doesn't seem to be any telnet/ssh server running. I will try cook image with ssh server support later
Download error
Were not able to re-upload
404 file not found error!!
http://tinderbox.x86.dev.gentoo.org/embedded/linwizard/
and open latest gizard-<date>.tar.bz2
or that I suppose.
The latest link should be http://tinderbox.x86.dev.gentoo.org/embedded/linwizard/gizard-20090703.tar.bz2
does this mean any chance of android working? anyone tried?
Hey,
I'm a new Opal user and I'm interested in getting *nix running on my device. I still haven't had the chance to mess around with this stuff but I'm excited to see this thread.
I was looking into the possibility of running Android on the Opal and it seems the closest thing is this thread bout running it on the Herald (it uses the same processor as the Opal).
I don't any experience in Linux porting so I thought I'd share this, in case anyone else is interested. And at the same time, I'll try to see if I can get something working based on what has been/is being done for other devices.
Sorry for the long post.
Hey Folks,
Any progress on getting Android on Opal? I am eagerly waiting to load one.
Kindly let me know, if this version of Linux when loaded, gives the UI.
Cheers'
Vijay
cijoml said:
Hi there
I got Linux to boot at OPAL via linwizard project. Here are steps needed to get it work.
1) download image from:
http://tinderbox.x86.dev.gentoo.org/embedded/linwizard/gizard-20080602.tar.bz2
2) copy content of file to the microSD card
3) edit default txt and replace init=/linuxrc with init=/bin/sh
4) run haret and let it boot.
After a while you'll get to shell. No graphics.
Now you can attach microusb cable and connect it with your linux laptop (I recommend ubuntu)
and you will get usb0 interfece to start up.
Which IP to use to connect with OPAL I still must investigate.
Click to expand...
Click to collapse
Android can boot on Opal
I have some good news, Android can boot on the Opal. This is just a proof of concept as it's missing tons of drivers and is completely useless.
Touchscreen and all keys except for the volume control (and obviously the reset button) are not working. So you basically can't do anything when you run it.
What I tried is the same as what's written in this thread about running Android on Gene. They're using the build made for the Herald/Wing (just as I was proposing in my last post) with customized initramfs and kernel.
You'll find all the necessary details in that thread. However, there's a newer build than the one mentioned there it's wing-linux-0.4pre2.cab. And the suitable kernel for that build is supposed to be the pre2 posted in this post but it didn't work on my Opal so I tried the older Gene kernel and it worked. The main difference between the two is bluetooth support, and that's obviously is of no use for us.
This doesn't effect the Windows rom, nor does it requires any special partitioning. Still it's best to have everything backed up before launching it, just in case.
This is the official site for the wing/herald build:
http://wing-linux.sf.net/
This thread on their forums about the Gene port will probably be of use to us:
http://sourceforge.net/apps/phpbb/wing-linux/viewtopic.php?f=4&t=4
I'm reading about the next steps but as I said before, I don't have any previous experience or knowledge about this type of things. If someone can give me hand, I would be more than grateful. At any rate, once I have better understanding of the concept I'll contact the people behind the Wing and the Gene ports.
P.S: If you do try to run this, keep in mind that this will take lots of time, specially for the first launch. And when you get an error saying something like "android sh: can't access tty" just ignore it and keep waiting. After a while you'll have a flashing "android" on the screen, and after some more waiting you'll reach the main screen.
Is this just THE BEGINNING
Sooper Stuff..!! So is this just THE BEGINNING??
How do we port the drivers and other required information in the build?
Cheers'
Vijay
www.msigeek.com
A Lil' help
I'm going through the Gene port thread here and on the Wing-linux sourceforge forums but I'm still a bit overwhelmed.
I would appreciate any help as I'm completely new to porting. I have some programming and linux knowledge but never attempted this type of things.
Click to expand...
Click to collapse
So am I.
Hmmm...
Right. Lets do it the way I did it.
1. Get the touchscreen working. Through HaRET, you must have got the GPIO interrupt whenever you pressed the touchscreen. You must have got two numbers corresponding to each press - a smaller number and a bigger number. The smaller number is the GPIO, and the larger number is, well, lets say a special GPIO value for the same pin.
Now checkout the Gene branch through git.
Goto /wing-linux/kernel/arch/arm/mach-omap1/board-htcherald.c
Scroll down to a block of code where you'll see the touchscreen code. Enter the smaller number in the .dav_gpio statement, and the IRQ number in the OMAP_GPIO_IRQ() statement below.
2. Follow the Kernel build instructions on the development section of the wing-linux wiki (the two make commands)
Copy the zImage into the linux folder on your SD card
Boot into wing-linux. The touchscreen should start working.
3. Now, hopefully, after the touchscreen's working, You would essentially just require two more buttons - the home button and the back button for minimum functionality. Everything else can be worked on by the touchscreen.
Then follow the instructions on the wing-linux forum (Page 2) to get the KEY(row,col) values of the keys on your handset. Hopefully you should get atleast a couple. Note down the corresponding keys and their KEY(r,c) values output.
4. Fire up board-htcherald.c again and goto the place where you have the KEY(r,c,KEY_blah) thing and replace the codes as per your obtained KEY(r,c,KEY_blah) values (The Home button is the one commented as Left Button)
5. That's all I can help you with as of now. I'm also figuring out a stable way of getting the DPad and the center select key to work, but It'll take some time.
Thanks kshaurya!
(This guy right here is the one who fixed the kernel for Gene, I asked him for some pointers).
I don't want to take my device apart just yet (I usually do my best not take to dismantle anything that I haven't owned for at least 3 months unless absolutely necessary) and I couldn't find a place that states what touchscreen it uses. I'm just hoping that it's the same a tsc2046 as well. [Is there anyone without a warranty and/or willing to check for us?]
I'm gonna double check the values I got from the touchscreen as for some reason I seem to have to IRQ values, probably forgot to get rid of some spamming irq. And, at the same time, I'm currently setting up a VM as a building environment, my main boot is Intrepid 64 and there's no 'psyco' package for 64 machines.
If anyone else have some experience and wants to try this, refer to: http://www.handhelds.org/moin/moin.cgi/HaRET_20Documentation (using haret to get the GPIO and IRQ values needed).
And to:
http://sourceforge.net/apps/trac/wing-linux/wiki/Development (acquiring the source code from Wing Linux and how to build it).
And a quick question for anyone that tried booting Android on the Opal, what screen did you get when Android finally finished booting?
I don't want to take my device apart just yet
Click to expand...
Click to collapse
Huh? where did that come from? Wing Linux will not touch your WM.
I seem to have to IRQ values
Click to expand...
Click to collapse
Do you mean two? Well, that's exactly what you should get. Even if it's just one, enter that value in the code.
my main boot is Intrepid 64 and there's no 'psyco' package for 64 machines
Click to expand...
Click to collapse
Oh no. dont tell me that you are building the entire thing. all you need to do is build the KERNEL! Please! Don't go into building the whole thing from scratch. Use the make ARCH ARM commands given on that page.
kshaurya said:
Huh? where did that come from? Wing Linux will not touch your WM.
Click to expand...
Click to collapse
I mean to check the screen, in case it turned out to be different that what you have.
kshaurya said:
Do you mean two? Well, that's exactly what you should get. Even if it's just one, enter that value in the code.
Click to expand...
Click to collapse
Yeah, stupid typo.
I noticed now that one of them appears when I keep the screen 'touched' for a bit longer.
kshaurya said:
Oh no. dont tell me that you are building the entire thing. all you need to do is build the KERNEL! Please! Don't go into building the whole thing from scratch. Use the make ARCH ARM commands given on that page.
Click to expand...
Click to collapse
I'm not gonna build the complete thing. Seems like I got too exited and failed to notice that building the kernel only requires a cross-compile toolchain, te rest is for compiling the whole thing.
I'm not THIS stupid usually . Honestly!
Thanks again!
I'm not THIS stupid usually . Honestly!
Click to expand...
Click to collapse
Its pretty normal
Weird.
I've only changed the two touchscreen values and built the kenrel. It finished without any error but now it won't boot.
It gets stuck, even before the space allocation part, with this error: "sh: can't access tty; job control turned off". And then it displays a prompt.
I'll try modifying an older build, I'm pulling them from the repos at the moment.
After all, the pre2 kernel from Gene didn't boot on my device (although it got stuck later on).
Try doing a clean install - Remove the linux folder and try again.
Also, make sure that you're not forgetting to checkout the Gene branch.
Code:
git checkout Gene
Is your default.txt modified? And have you downloaded the modified initramfs.cpio?
check in the Gene forums for that.
Already tried the clean install, no dice. The default.txt is untouched and I'm using the modified intramfs. What happened this time is different from what happens using the original one, it's not asking me to specify the partition size but instead it's waiting for a command. I could probably ssh via usb but I have no clue how that might help.
And I've already checked out the Gene branch from the beginning.
I've tried compiling the kernel for pre1 (after changing the screen values) from SVN and it did boot (both using the cabs for pre1 and pre2) but no touch screen yet. All in all, I'm guessing that there's too much hardware difference here.
And the button for lowering volumes didn't work either, it seems like whatever you changed for getting it to work on Gene is the same as what we need here, but I'll think about that later.
I only have two ideas left:
- Trying to go back to a more stable build (with lesser features and lesser possibilities for errors). Maybe 0.3.
- Trying to create some kind of hybrid kernel using this alongside the HTC Vogue build as it probably has closer hardware to the Opal (obviously, I'm talking about everything beside the MSM7500 400MHz processor that it has). I'm hoping it won't get to this cause I'm definitely under qualified for that at the time being.
What happened this time is different from what happens using the original one, it's not asking me to specify the partition size but instead it's waiting for a command.
Click to expand...
Click to collapse
Could you post a screenshot?
I've tried compiling the kernel for pre1 (after changing the screen values)
Click to expand...
Click to collapse
I'm assuming you mean the touchscreen values? Try interchanging and see.
Trying to go back to a more stable build
Click to expand...
Click to collapse
I wouldn't recommend that. Defeats the whole purpose.
Why don't you try getting in touch with darkstar?
kshaurya said:
Could you post a screenshot?
Click to expand...
Click to collapse
A friend borrowed my digital camera, I tried my laptop's webcam but the text it too blurry. Couldn't fix it using gimp either. So here's exactly what's showing on the screen:
Code:
mdir: Cannot creat directory `/mnt' : File exists
modprbe: could not parse modules.dep
initramfs: Creating device nodes:
initramfs: Loading /initrd.d/10-initfs.sh module
initramfs: Loading /initrd.d/30-wingboot.sh module
Selected:
ROOT_DEVICE=/dev/
CMDLINE=debug quiet psplash=false loglevel=7 init=/sbin/init console=tty0 video=omapfb:accel fbcon=rotate:3 4 root=/dev/
initramfs: Loading /initrd.d/80-loopboot.sh module
initramfs: Loading /initrd.d/85-blockboot.sh module
booting from: /dev/
mount: Mounting /dev/ on /mnt failed: Invalid argument
Unable to mount rootfs device
sh: can't access tty; job control turned off
/ $
And after the prompt, on the same line, there's a flashing '_' waiting for input.
Using the original zImage (from the pre2 cab) it's right around here that the screen clears and the Wing Linux installation script kicks in.
kshaurya said:
I'm assuming you mean the touchscreen values? Try interchanging and see.
Click to expand...
Click to collapse
Will try that next.
kshaurya said:
I wouldn't recommend that. Defeats the whole purpose.
Click to expand...
Click to collapse
I meant it as just a temporary test to till the cause of the incompatibility is figured out. With less things that could go wrong, it'll be easier to locate the ones that are going wrong.
kshaurya said:
Why don't you try getting in touch with darkstar?
Click to expand...
Click to collapse
You're right. I should post a thread on the project's forums asking for his help.
Related
Tonight I managed to get my first Android build, 2.0.1, compiled myself from AOSP, up and running on the Vogue from NAND.
I made some small changes, most notably, updating the build.prop to adjust the DPI to 120 and adding the libhtcgeneric_ril.so library, as well as adding the necessary (or.. is it necessary?) build.prop entry to get the radio functioning.
I proudly present my first Android build.
NOTE: This is purely for testing/evaluation purposes.
Working:
Radio
Data
Screen resolution is accurate
Not Working:
Audio
Power Functionality (buttons do not wake the phone?)
GPS
Anyone up for pointing out what I need to do differently to get the non-working aspects functioning? Any tips on optimization? Clues to setup and take full advantage of build.prop?
Additionally, do we have a central repository of Vogue (or MSM7k) drivers that've been ported as source, ready to be compiled for different versions?
There's probably a lot missing here that I'm not even considering.. so please feel free to make any comments, give any advice, or point me towards any documentation.
All help is appreciated. Thanks!
I think this is the repo you're looking for:
http://androidhtc.git.sourceforge.net/git/gitweb-index.cgi
It contains Audio & GPS drivers, among other things. Can you wake the phone over adb shell with the command echo "wake" > /sys/android_power/request_state ? I'm also interested in getting an AOSP build running from source, I'd like to get the camera working for Eclair.
EDIT: Also, in the zenulator's eclair mod, the /system/etc/keychars directory contains these files:
Code:
htcvogue-ts.kcm.bin
qwerty2.kcm.bin
qwerty.kcm.bin
sapphire-keypad.kcm.bin
trout-keypad.kcm.bin
trout-keypad-qwertz.kcm.bin
trout-keypad-v2.kcm.bin
trout-keypad-v3.kcm.bin
tuttle2.kcm.bin
vogue-ts.kcm.bin
Perhaps that vogue binary is needed? That's my shot in the dark.
Those files are just for the keymapping, nothing more..
polyrhythmic said:
I think this is the repo you're looking for:
http://androidhtc.git.sourceforge.net/git/gitweb-index.cgi
It contains Audio & GPS drivers, among other things. Can you wake the phone over adb shell with the command echo "wake" > /sys/android_power/request_state ? I'm also interested in getting an AOSP build running from source, I'd like to get the camera working for Eclair.
EDIT: Also, in the zenulator's eclair mod, the /system/etc/keychars directory contains these files:
Code:
htcvogue-ts.kcm.bin
qwerty2.kcm.bin
qwerty.kcm.bin
sapphire-keypad.kcm.bin
trout-keypad.kcm.bin
trout-keypad-qwertz.kcm.bin
trout-keypad-v2.kcm.bin
trout-keypad-v3.kcm.bin
tuttle2.kcm.bin
vogue-ts.kcm.bin
Perhaps that vogue binary is needed? That's my shot in the dark.
Click to expand...
Click to collapse
What's responsible (or handles) power management, then?
And why are there so many keymapping files? According to AOSP, Android will default to qwerty.kl, and certainly with the Vogue being as simple as it is, a single qwerty.kl set up for the Vogue would be sufficient.
So what gives? Or are these files all leftover as this was "ported", and they existed to support previous devices, etc.?
first off great job. this is exactly how i started out by building my own builds from source and then taking apart others to see what fits together. if i have time this weeked i'll have a look at it.
There are an awful lot of moving parts in power management in Android (and any OS, really) - there's the kernel's power subsystem which controls deep sleep / suspend, and which Android attaches a "wakelock" system to, each radio lib (Bluetooth, WiFi, phone) has power management (which hooks up to kernel interfaces), there's the panel driver which controls brightness, etc.
I think the keymapping files are just there so that no matter which one the framework looks for, it always finds one, speeding things up - rather than having to try to find each one and failing down until it finds its eventual failsafe qwerty, it loads the Vogue one straight away.
Awesome man, way to go!
Can you throw in links for rootfs/zimage, I will try later today on my wife's phone.
Thanks sshark, I would, but I've been tweaking that image continuously and at it's current state, it's broken.
Here are the major hurdles I'm facing right now:
How do I determine which drivers are and are not necessary in a build? If we use an AOSP build, or someone else's port, obviously we don't want audio drivers from the Nexus One or generic Goldfish sensors from AOSP, so how can we know what we need to be able to keep images clean?
Along the same vein, how does one incorporate drivers accordingly, such as audio?
Is power management really a dark art right now? Plemen's AOSP build is fantastic, but I typically have to push the power button four times to get the OS to wake up, whereas a 2.1 build I just played with on the Vogue would power up right away on one click. What gives?
When compiling images using genext2fs, does 80000 vs 160000 matter, NAND vs HaRET booting? What's the maximum?
Lastly, I've recently tried unsquashing others images, making changes, and then trying to re-ext2 them, mount them, and squash them. However, when I do this, my images no longer boot fully on my Vogue--instead they'll get as far as the boot animation, it'll run for a bit, and then the boot animation will pause for a second or two, and restart. This happens endlessly. Is this a problem with my process, be it ext2, sqsh (sqsh version, perhaps?) anyone have an idea?
Shidell said:
Thanks sshark, I would, but I've been tweaking that image continuously and at it's current state, it's broken.
Here are the major hurdles I'm facing right now:
How do I determine which drivers are and are not necessary in a build? If we use an AOSP build, or someone else's port, obviously we don't want audio drivers from the Nexus One or generic Goldfish sensors from AOSP, so how can we know what we need to be able to keep images clean?
Along the same vein, how does one incorporate drivers accordingly, such as audio?
Is power management really a dark art right now? Plemen's AOSP build is fantastic, but I typically have to push the power button four times to get the OS to wake up, whereas a 2.1 build I just played with on the Vogue would power up right away on one click. What gives?
When compiling images using genext2fs, does 80000 vs 160000 matter, NAND vs HaRET booting? What's the maximum?
Lastly, I've recently tried unsquashing others images, making changes, and then trying to re-ext2 them, mount them, and squash them. However, when I do this, my images no longer boot fully on my Vogue--instead they'll get as far as the boot animation, it'll run for a bit, and then the boot animation will pause for a second or two, and restart. This happens endlessly. Is this a problem with my process, be it ext2, sqsh (sqsh version, perhaps?) anyone have an idea?
Click to expand...
Click to collapse
i cant answer all of those questions, with that said ill tackle the last two
4. when using genext2fs to compile builds it doesnt matter what the -b count is we just use
Code:
genext2fs -d ./system -b [B]180000[/B] -a system.ext2
to make sure we could fit a ~180 mb system so if your system folder is ~120mb(uncompressed), using -b 125000 should work.
5. make sure you arent using squashfs-tools 4.0 because it isnt supported in our kernel version. so use 3.3 or 3.1 .
5b. when you see the boot logo looping, that means the build has crashed and like i said to you before i strongly recommend you setup adb on you box so you can run logcat to see what the phone is actually doing and to debug what went wrong and why it is looping
Thanks Jamezelle. So NAND users need to make sure it's -b 90000 (or less), as NAND only supports 90 mb. max, correct?
Shidell said:
Thanks Jamezelle. So NAND users need to make sure it's -b 90000 (or less), as NAND only supports 90 mb. max, correct?
Click to expand...
Click to collapse
right i would keep it around 88 to be safe.
I'm trying to get ADB to work (using ubuntu 9.10) and I've followed the instructions here, including restarting udev, but even still when I try to start adb, I get "command not found" in terminal.
Any ideas on what I'm missing?
EDIT: I'm missing a ./. I'm really starting to wish I could do this natively in Windows.. geeze.
Shidell said:
I'm trying to get ADB to work (using ubuntu 9.10) and I've followed the instructions here, including restarting udev, but even still when I try to start adb, I get "command not found" in terminal.
Any ideas on what I'm missing?
EDIT: I'm missing a ./. I'm really starting to wish I could do this natively in Windows.. geeze.
Click to expand...
Click to collapse
did you make sure you added the path to adb in .bashrc
# On Linux, edit your ~/.bash_profile or ~/.bashrc file. Look for a line that sets the PATH environment variable and add the full path to the tools/ directory to it. If you don't see a line setting the path, you can add one:
Code:
export PATH=${PATH}:<your_sdk_dir>/tools
Click to expand...
Click to collapse
that should clear up the "Command not found" issue
jamezelle said:
did you make sure you added the path to adb in .bashrc
that should clear up the "Command not found" issue
Click to expand...
Click to collapse
Yep, that was the issue. It needs to be there, or launched as ./, I presume.
Thanks much for your help tonight, Jamezelle.. I'm happy to report that I'm steadily making progress for a working release.
Shidell said:
Yep, that was the issue. It needs to be there, or launched as ./, I presume.
Thanks much for your help tonight, Jamezelle.. I'm happy to report that I'm steadily making progress for a working release.
Click to expand...
Click to collapse
thats great to hear, also thanks for your additions to the libgps.so! its nice to still see some android enthusiasm in this community
Edit: WARNING! If you do not follow the below instruction, your post WILL be deleted, not moved. Thank you for your cooperation. ~TheRomMistress
bally3 said:
Appreciate your enthusiasm, but can you move the conversations about userspace (builds) to the Discussions thread please, as this thread should be primarily for the KERNEL development only.
Appreciate your understanding,
Click to expand...
Click to collapse
Hi!
I have now a TG01 too, and started to develop some Linux stuff for it.
The branch for it is in our htcleo repository.
http://gitorious.org/linux-on-wince-htc/linux_on_wince_htc/commits/linux-on-tg01
I did already a bit reasearch and put some new stuff in the htc linux wiki. I will update it if I found something new.
http://www.htc-linux.org/wiki/index.php?title=Tg01
17.09.11 Edit10 and last:
Hi!
I pushed my last changes. There some new stuff in repo now like:
- Powerbutton support
- Fixes for Power/USB
- Panel Code
- Notifications
- Usb cable pull/push did not crash device anymore
and much other.
I'm closing this project for me because I've no time to work on it.
One Info, the problems with the GUI after boot are ril related. The biggest work is RIL. It looks like you have to write (or find) a RPC based RIL lib.
have fun!
Markinus
Edit9:
Calls works now. But the mic not.
Battery works, a simple cable detection driver too. Problem, you cannot in the moment pull or push the cable in/out. If you do it the devices will crash after ca. 15 sec.
Build updated.
Edit8:
Audio and vibration works.
!Important: Run clrcad.exe in wince bevor you run haret and boot linux!
Edit7:
The Volume and Camera Buttons are now supported.
Edit6:
Added touchscreen buttons
Added first Test Build! Extract to sd and run haret! Look to Post 2.
Edit5:
Touchscreen is working now. I had to recalculate the calibration values. Later we have to look to better calib values, maybe a calib app for users.
Edit4:
We have now a official mach id 3197. This have to be changed in the default.txt for haret.
Edit3:
So some new stuff is checked in:
- panelfile with basic support for mdp and lcdc
- sd card works
- usb works
- rpc, pcom, works
Status: the device is booting now android till the unlock screen in the GUI, but without touchscreen ...
Edit2:
Branch is in our Leo repo:
http://gitorious.org/linux-on-wince-htc/linux_on_wince_htc/commits/linux-on-tg01
The basic stuff is now in. Is booting. I didn't find a device ID for tsunagi, so I had to create one.
status: kernel is booting and android starting. We need to write much new stuff to get all hardware working.
default.txt:
set mtype 3197
set ramaddr 0x11800000
set ramsize 0x0e800000
set initrd_offset 0x00a00000
set KERNEL zImage
set initrd initrd.gz
set cmdline ""
boot
We need to research much stuff. And all this needs much time. So don't ask for dates
!!!IMPORTANT: USE ALL STUFF AT YOUR OWN RISK!!!
!You can break your device!
Markinus
First Test Build:
Look to top whats working.
Second testbuild:
http://www.multiupload.com/WQN1Q1SJ0E
http://www.multiupload.com/P0B04IK8S0
Have fun on test!
!!!IMPORTANT: USE ALL STUFF AT YOUR OWN RISK!!!
!You can break your device!
hi markinus! i'm glad to see another dev involved to port android on TG01! a new hope for our phone! yesterday i've thinked to sell it.. but now i've a new hope.. and can't wait for some news, good luck.. and if you need help.. just ask..
just a question.. what means "kernel is booting" status? sorry for my english
can you post a link to the kernel your using?
Good to see things moving here.
Hope that the TG01 community will get a workin' kernel
They're worth it.
Ok. I'm going to try this one but after I finish with my homework.
I'm downloading it now.
Wait for news.........
Nice thread, I hope to have good news ..
Last News...
After I download the file I had some problems. It gave me errors when I try to make arch=arm tsunagi_defconfig. Error was like a privet file and you don't have access. So I copy all the files on new directory and then I was able to do make arch=...... defconfig. Then I compiled it with success.
Then I make all changes in default.txt and it run then restart. But this time I think it's problem from some APP. What it say but I wasn't able to see it. It was to fast.
I need some help to set debug haret.
Current default.txt in haret/debug/ is: pwf tg01-ramconsole.txt 0x1FFC0000 0x40000
If some one can help me how to change it that's go be perfect.
Sorry about my English I'm still learning.
Markinus said:
Hi!
I have now a TG01 too, and will start to develop some Linux stuff on it.
I will create a new branch for it in our htcleo repository because some things we can use for both. If I have something what you could try, I will post it here.
I did already a bit reasearch and put some new stuff in the htc linux wiki. I will update it if I found something new.
We need to research much stuff. And all this needs much time. So don't ask for dates
Edit2:
Branch is in our Leo repo:
http://gitorious.org/linux-on-wince-htc/linux_on_wince_htc/commits/linux-on-tg01
The basic stuff is now in. Is booting. I didn't find a device ID for tsunagi, so I had to create one.
status: kernel is booting, it means we go through the basic hardware init. I fixed the memory layout.
default.txt:
set mtype 1100001
set ramaddr 0x11800000
set ramsize 0x0e800000
set initrd_offset 0x00a00000
set KERNEL zImage
set initrd initrd.gz
set cmdline ""
boot
Markinus
Click to expand...
Click to collapse
That's great job what have you done. It's amazing. I thing kernel is booting now but I am not sure. With me is still restarting.
If I can help with something just tell me. I'm not professional but may be I can do something.
I was thinking about board configuration and all other configs.. but I didn't know how to do it. So
Thanks for your job.
For those who want to try himself.
1st. Download from Markinus posts his repository it's on the right side on the page http://gitorious.org/linux-on-wince-htc/linux_on_wince_htc/commits/linux-on-tg01
2nd. Unzip it in a folder that you have created before. How to unzip it?
Go to Applications -> Accessories->Terminal
In Terminal tap: cd name of your new folder, ( example: cd myAndroid )
then you have myAndroid$
Now you tap : tar xvzf directory where you have download Markinus repository. (example: tar xvzf /home/downloads/linux-on-wince-htc-linux_on_wince-htc-linux-on-tg01.tar.gz.gz)
You will see how the file is unziped.
3rd. You will see in your folder that there is a new folder named (linux-on-wince-htc-linux_on_wince-htc-on-tg01 or something like that). If you see like a small lock in the front of this folder then do this. Create a new folder put the name you want. Then cut everything from the folder linux--on-wince-htc...........etc. and past it in your new folder.
(example what I did it was easy just in my folder myAndroid I create a folder kernel_1 and I paste everything inside.
4th Now wen we have not everything but may be a part of. Is time to download toolchan (compiler) and some libraries.
in your Terminal tap : apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 lib32ncurses5-dev ia32-libs x11proto-core-dev libx11-dev lib32readline5-dev lib32z-dev.
thats for the libraries.
and this one for tollchains or cross tools or ... what you want call it.
http://www.codesourcery.com/sgpp/lite/arm/portal/release858
download it and install it. in the same folder as repository (example myAndroid/cross_tools)
Thanks to Endrix with his tutorial help me a lot.
5th.Now enter in your kernel_1 folder or whatever you called it and tap: make ARCH=arm tsunagi_defconfig
6th When finish writing to configuration. tap: make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi-
enter
If you have done everything without errors then you will see how linux is building your kernel.
7th When finish building go to (exaple myAndroid/kernel_1/ARCH/arm/boot/ ) ther is your kernel Image and zImage you can use both if you want. :O)
Thanks Markinus and Endrix.
EDIT: I've only got windows at work... Can someone please upload a compiled kernel so I can try it on my TG01 so I can give feedback?
Awesome, seriously well done guys!!!
I've not had time to help like I had hoped, so simply well done to those involved so far
).
Glad to hear it finally arrived Markinus
Good to have you on board too. With regard to a compiled kernel, everyone please allow Markinus some to time to get things working before we start asking for kernels to check.
Just so that people understand, kernel booting doesnt mean kernel loading a android gui environment, so theres still nothing to see. What Markinus means by that is he can see that the hardware is being initialised and the things that should be happening when a kernel boots are happening.
Good to see things moving again though
bigandrea said:
Hopes for Windows 7 Phone?
Click to expand...
Click to collapse
This is an Linux/Android thread. You should ask the question in the appropriate thread.
Bally, I knew it wasn't ready per se, I just wanted to try and contribute by testing to see if they got the output they expected on multiple phones as I don't have the time to help with development as I expected to
One thing ttt bothers me, TG01 has a low amount of ram (or at least i think so) for winmo most roms get just 100 or so.. Running opera and some music on the backgorund may be enought to get things messsy.
Will android spend more or less in comparissom?
thanks
Kalas_22 said:
One thing ttt bothers me, TG01 has a low amount of ram (or at least i think so) for winmo most roms get just 100 or so.. Running opera and some music on the backgorund may be enought to get things messsy.
Will android spend more or less in comparissom?
thanks
Click to expand...
Click to collapse
i also worried about this too. but most android devices have 256 ram or so. and android is more effiecient with ram management than windows mobile. we also have badly optimised toshiba dlls. when running android, it shuts down windows mobile, and opens android os, so both os dont run in the background, thus saving ram. also i wonder after we manage to get functional android roms, we get skinned versions, such as HTC Sense! what do you guys think+
There you have one compiled kernel..
Is ready to execute. Just extract it to your sd card in your phone and that is all. Then run haret.
This one is from Endrix file I just replaced the Image file and set the new default text. There is a zImage as well and you cant try it if you want.
bojan6 said:
There you have one compiled kernel..
Is ready to execute. Just extract it to your sd card in your phone and that is all. Then run haret.
This one is from Endrix file I just replaced the Image file and set the new default text. There is a zImage as well and you cant try it if you want.
Click to expand...
Click to collapse
dont have a tg01 to hand at mo.. can anyone post up the output please?
Scougar said:
Bally, I knew it wasn't ready per se, I just wanted to try and contribute by testing to see if they got the output they expected on multiple phones as I don't have the time to help with development as I expected to
Click to expand...
Click to collapse
I stand corrected.
Markinus HAS got to the gui...wow!
we need a touch screen driver now.. good work...very impressive!
bally3 said:
I stand corrected.
Markinus HAS got to the gui...wow!
we need a touch screen driver now.. good work...very impressive!
Click to expand...
Click to collapse
im sorry but does this mean, we have a functional bootable androidrom??
I gave my Dad my old blackstone when my Desore turned up.
He has winged that he can't get the marketplace and about all those general WinMo issues that people have (it dead etc)
I can't find a clear message on the status of NANDROID for blackstone.
TIAD8s site has NAND versions that are missing bluetooth or other funcitons
It appears there are basic functions that are lost according which kernal is being run.
I'm willing to do one completely convoluted install just to get Froyo style on my dads phone but only once. I never have trouble with new flashing procedures (slow and steady wins the race) but I don't want to hand him back the phone broken especially as he uses hands free in the car
So - can anyone say categorically that a NAND version work fully?
Categorically: Not yet. Wondering if ever...
Forget it...
Think Tiad8 only has test team working on a NAND build anyway?
Not seen it in action yet
Kernals?! ....
I find deliberate typos (NOT TEXT SPEAK) can get people to engage.
olly230 said:
I find deliberate typos (NOT TEXT SPEAK) can get people to engage.
Click to expand...
Click to collapse
Is that also why you called it a "Desore" instead of Desire?
lol, you made a typo or you just didn't know. No need to try and rationalize it .
t8 let people wait and wait.
though it's good to try, we don't know whether he really works on it as he start many threads to other device besieds HD.
arrrghhh said:
Is that also why you called it a "Desore" instead of Desire?
lol, you made a typo or you just didn't know. No need to try and rationalize it .
Click to expand...
Click to collapse
Desore was a proper typo, I'll put my hands up to that
Tiad8's just kidding us, it will send to test team files from NVIDIA Tegra device. Only RUU_signed is working, but I think it's my modded LK Bootloader from Rhodium (with modified mtype). Something's wrong with this nand.
I have runned this but touchscreen not working properly and I don't have GSM.
MietasSR said:
Tiad8's just kidding us, it will send to test team files from NVIDIA Tegra device. Only RUU_signed is working, but I think it's my modded LK Bootloader from Rhodium (with modified mtype). Something's wrong with this nand.
I have runned this but touchscreen not working properly and I don't have GSM.
Click to expand...
Click to collapse
I thought you were part of his developer team because he now give credits to you for your ruu and recovery.img (at last he ist starting to do this: giving credits) in the NAND download post.
With your post here I had to smile a little: now your name is connected to the "null nands" for many consumers in tiad8's forum. Even I thought you're part of it now and that's why I tried the build yesterday again: Boot partition to small and Kernel not working.
I think now it's getting to the critical point in the NAND experiments: correct or good partition sizes for NAND (some members there startet to change partition values in the image files with a hex editor) and more important: building a working kernel with modules for Blackstone NAND.
Until now all experiments reached a few preparing goals: getting a working .nbh for starting into fastboot, getting a recovery.img for a working CWM etc.
But now (if I am completely wrong please correct me, I really want to know) you have to change partition and ram parameters in clk and hope you will spare the protected parts.
And after that: Kernel and Modules for Blackstone on Nand. I am starting to believe here would be the real point for developers.
I started to build Kernel and Modules, a Boot Environment (initrdgz) from git and packed them with changed parameters in a Tinboot-Package. I can flash with the .nbh, I can boot, I got a lot of errors in init first, but I succeeded in running and loading the kernel, I get access to the changed mtd partitions etc. Debugging on Blackstone with Echo "" ist quite funny.
I got stuck when I tried to cp files from SD card to the /system partition (which is mounted r/w) - I can cp files from / to /system anyway. Big ?? for me. But I like to play with it a little more, because I learned a lot.
ThaiDai said:
I thought you were part of his developer team because he now give credits to you for your ruu and recovery.img (at last he ist starting to do this: giving credits) in the NAND download post..
Click to expand...
Click to collapse
Me Too!! Does this mean you are working on different things?
Hello everyone,
This thread previously was a discussion area for the Ouya Boot Menu feature during its early development.
It's now being transitioned to a support area. The new project description/download page is at:
http://forum.xda-developers.com/showthread.php?t=2499673.
Thanks!
CWM Bootloop
Hal9k+1 said:
Hello everyone, attached is the ZIP of an updated CWM Recovery IMG file.
This image is based on the latest stock Ouya kernel in GitHub. The kernel contains some newer HDMI code, which will hopefully increase the chance of getting the CWM graphics showing up properly. I also turned off HDMI’s HDCP in the compile (not needed for a utility partition such as this), and grabbed a patch from Kulve’s Ouya kernel fork to really ensure HDCP bypass.
More importantly, the image contains Tasssadar’s excellent work involving KExec-HardBoot. This technology should allow for the implementation of a “fastboot boot”-related capability from a running ROM, enabling kernel chain loading. The recovery image in particular will be a place to practice with KExec-HardBoot, and come up with a booting method that could eventually be flashed to the boot/kernel partition.
It is fine (and recommended) to fastboot to this image as a quick verification of things. However, it will be necessary to flash to the Recovery (“SOS”) partition for proper testing of KExec-HardBoot, since there’s an embedded reboot (to Recovery in this case) in there. Do *NOT* flash this to the Boot.
A simple chain load test can be done by extracting “zImage” from this image, and “initramfs.cpio.gz” from your current ROM kernel. (Included is “unmkbootimg” that can help here - runs on Linux.) Push these to /tmp on the Ouya while it is running this image. Then enter the Ouya shell and do:
kexec --load-hardboot zImage --initrd initramfs.cpio.gz --mem-min=0xA0000000 --command-line=”$(cat /proc/cmdline)”
kexec -e
It should come up with this new kernel under your current ROM’s environment. As verification, you should see kexec files under /sys/kernel.
I’m looking to implement a basic chain loading application. It would come up before the Recovery and ADB services, and do the following:
% Pause for a bit, to allow any Alt-SysRq keyboard action (jump to Recovery or Bootloader) that may be needed.
% Check for any attached USB mass-storage devices (e.g., thumb drive), and look for the file “kernel.img”. Pull it in and boot it if present.
% If that failed, then look to “/system/kernel.img” on the Ouya itself, and boot it.
% And if that didn’t pan out, then exit and allow Recovery/ADB services to come up.
I hope all of this will be of help to others along the way!
Click to expand...
Click to collapse
Will this help with the problem I have?..
New update today it downloads automatically and then reboot to CWM and it fail verification...reboot system and it does all over again?...Any ideas Plz
View2Askew said:
Will this help with the problem I have?..
New update today it downloads automatically and then reboot to CWM and it fail verification...reboot system and it does all over again?...Any ideas Plz
Click to expand...
Click to collapse
Sorry, I'm not sure I understand. It sounds like the new stock firmware update is failing to go in, perhaps because of consistent download corruption. Whether you're actually being dropped in to the recovery partition is unclear. You might try the download again with the other networking type (Ethernet vs WiFi). You might also just disconnect from the network for the time being, and see if you remain in the firmware without interruption. From there you can consider setting up ADB to see if you can administer the Ouya from a PC.
My post is more for the developers at heart, just in case my investigation piqued anyone's interest. Ideally the post would go in the Development section, but I evidently need a few more posts here to unlock that area.
Best of luck!
Dual booting
Yes, please do enable dual/multi booting
Is there something I can do to help in that regard?
kulve said:
Yes, please do enable dual/multi booting
Is there something I can do to help in that regard?
Click to expand...
Click to collapse
Thanks kulve, and thank you for the kernel patch set. I need to get familiar with the offerings there.
I don't see any blockages in my plan so far; I just need to start in and see what comes up. At least it's a better feeling than the dead-ends encountered with the U-Boot and regular KExec investigations.
Someone more enterprising could possibly port in the MultiROM project, but I'll stick with this. Will let you know if I get stuck.
My findings so far...
- I've finally decided that shutting off HDCP in the build does nothing to help avoid the funky pink/purple squeezed screen that sometimes appears when CWM comes up. With my Asus monitor, I see the issue when the monitor was in sleep mode. Likewise, if I can switch the monitor to HDMI input at the same time as starting Recovery, then it's fine. It may be possible to hack in a fix by somehow starting and closing an HDMI session shortly before CWM itself starts. (I don't want to fight this too hard but would be nice to resolve.)
- I see how to pull the kernel and ramdisk out of an Android image (on the Ouya itself), so that they could be passed to KExec-HardBoot. I've done it with a script as a test but it may end up in an executable.
- I tried out a USB thumb drive. It's detected but no block device is made available under /dev -- I've finally decided that support is likely in a kernel module, which does not exist on the Recovery image. I'm probably not going to sweat this due to the next item.
- I notice that the CWM application can read the Ouya power button as something comparable to a keyboard key press. Borrowing this capability may allow us to count the button presses in a limited time range, and thus boot an appropriate image. (Would be easier than dealing with the pairing of the controller, but at least still wouldn't require a keyboard.) With this line of thought, I'm thinking the main image could sit in /system while any alternates could be in /sdcard or /data.
So in general, studying the code of the CWM application appears to be the next direction. Thanks - feel free to send any ideas.
Hal9k+1 said:
- I've finally decided that shutting off HDCP in the build does nothing to help avoid the funky pink/purple squeezed screen that sometimes appears when CWM comes up. With my Asus monitor, I see the issue when the monitor was in sleep mode. Likewise, if I can switch the monitor to HDMI input at the same time as starting Recovery, then it's fine. It may be possible to hack in a fix by somehow starting and closing an HDMI session shortly before CWM itself starts. (I don't want to fight this too hard but would be nice to resolve.)
Click to expand...
Click to collapse
What does the rendering in CWM? Is it Android or something lower level? I think my kernel has better HDMI support but for that the software needs to use that explicitly instead of the default one as there is not internal LCD panel (/dev/graphics/fb0 vs. fb1).
kulve said:
What does the rendering in CWM? Is it Android or something lower level? I think my kernel has better HDMI support but for that the software needs to use that explicitly instead of the default one as there is not internal LCD panel (/dev/graphics/fb0 vs. fb1).
Click to expand...
Click to collapse
It does look to be low-level, as CWM directly opens /dev/graphics/fb0 and uses ioctl() on it. I've decided to try my own compile of CWM as it does look to be a nice base for the booting effort. Will definitely look to your patches for the improved HDMI when I'm all ready -- thanks!
Hal9k+1 said:
It does look to be low-level, as CWM directly opens /dev/graphics/fb0 and uses ioctl() on it. I've decided to try my own compile of CWM as it does look to be a nice base for the booting effort. Will definitely look to your patches for the improved HDMI when I'm all ready -- thanks!
Click to expand...
Click to collapse
I noticed your comments related to this on the "Ouya CWM Recovery" thread but I'm not allowed to post there, so I'll post here.
Or actually repost as I'm mostly repeating myself. I had all kinds of issues in getting output using /dev/graphics/fb0 in Linux with the stock Ouya kernel but after some fixes the fb1 seems to work quite reliable. I get the output even if I don't have HDMI plugged in during the boot and it chooses the right resolution both for my TV (1080p) and for my monitor (1680x1050).
To all: I have updated the attachment that's present on the first post. I've synced to the latest Ouya kernel and pulled in the next HDMI patch set from Kulve. My HDMI issue now appears to be fully resolved.
Kulve: Thanks so much for refocusing me! I should have grabbed the patch from day 1, but that summary description had me a bit spooked. Note that I kept the HDMI/PRIMARY symbol enabled, so there's still only the fb0 device on this kernel.
With this handled and due to my thinking in general, I'm going to back away from trying to compile CWM itself -- I don't want to invest in CM10.1's environment at this time. Instead I will borrow CWM's UI and input technology to build an independent front-end with this Ubuntu/glibc environment I have working. My idea is to release another Recovery image when that's ready so we'll have a chance to practice/debug before moving to the Boot image.
Hal9k+1 said:
Kulve: Thanks so much for refocusing me! I should have grabbed the patch from day 1, but that summary description had me a bit spooked. Note that I kept the HDMI/PRIMARY symbol enabled, so there's still only the fb0 device on this kernel.
Click to expand...
Click to collapse
Hit the Thanks button
Anyway, do you have your kernel source code somewhere? Being able to use multiple resolutions on HDMI while keeping it as primary might be something that many Ouya Android gamers want as they might be able to play at 720p then.
ooo nice, ill try it out and see what happens
kulve said:
Hit the Thanks button
Anyway, do you have your kernel source code somewhere? Being able to use multiple resolutions on HDMI while keeping it as primary might be something that many Ouya Android gamers want as they might be able to play at 720p then.
Click to expand...
Click to collapse
Done! :laugh:
My modified files were tarred up and placed in the ZIP; let me know of any possible issue. I'm not planning on a GIT account, but anyone may feel free to pull anything back to their project. Also I understand that sticking with HDMI/PRIMARY may reduce some of the capability/flexibility you're seeing, but I wanted to stay honored to the Android/CM layout expectation if possible.
Hal9k+1 said:
Done! :laugh:
My modified files were tarred up and placed in the ZIP; let me know of any possible issue. I'm not planning on a GIT account, but anyone may feel free to pull anything back to their project. Also I understand that sticking with HDMI/PRIMARY may reduce some of the capability/flexibility you're seeing, but I wanted to stay honored to the Android/CM layout expectation if possible.
Click to expand...
Click to collapse
Any chance of getting some concise installation instructions?
zondajag said:
Any chance of getting some concise installation instructions?
Click to expand...
Click to collapse
Here's a quick executive summary until I can update the 1st post.
I'm reminded there's another XDA project (Ouya Safe Recovery) with a very similar goal as this, and works by reversing the Boot and Recovery concepts. However it's completely incompatible with us, and those users should not be doing any flashing -- at least not until we have a Boot image ready.
First step is to get rcvy092613.img to the Ouya in its /tmp directory. This may be done with an "adb push rcvy092613.img /tmp" command, or can by done through Secure Copy if an appropriate SSH server is set up.
Next step is to access the Ouya shell, either running from the main ROM or from a Recovery ROM. Be sure to become root (ensure "#" in the prompt) as needed.
Run the following to back up the old image:
cd /dev/block/platform/sdhci-tegra.3/by-name/
dd if=SOS of=/sdcard/old_rcvy.img
Make sure the new image is correct - should see "2a882d1ba8c2d543503cacb49ab0d397":
md5sum /tmp/rcvy092613.img
On to flashing Recovery:
dd if=/tmp/rcvy092613.img of=SOS
Now wait at least a full minute in case there is any internal flushing still taking place. And to finish up:
sync
reboot recovery
Aye....never enough time to tinker it seems, especially with getting over this flu.
At this point I have my own compiled code splitting the boot image file, as well as counting the power button clicks.
I want to see if I can make a welcome/instruction screen, probably by getting CWM's minui down to its core essence. From there it will hopefully just be normal integration work to achieve a new Recovery for testing.
Everyone, a new boot menu is ready for testing. Please read through the first post to see if you'd like to try it out. Apologies once again for the delay in getting this ready.
Hal9k+1 said:
Everyone, a new boot menu is ready for testing. Please read through the first post to see if you'd like to try it out. Apologies once again for the delay in getting this ready.
Click to expand...
Click to collapse
Did I read correctly that the image support multibooting?
kulve said:
Did I read correctly that the image support multibooting?
Click to expand...
Click to collapse
Hi again Kulve. It supports three Android boot images - the main + two alternates: kernel.img, kernelA1.img, & kernelA2.img. It prefers to see the selected image in /sdcard, but will shift to /system as needed.
So, it is multi-booting, but you should keep in mind that there is still only the single /system partition. So installing two normal ROMs together probably won't work out, due to that common storage area. However, one of the ROMs could be based out of /system, while any others could use some form of external/networked storage. Note that the Android image format contains both the kernel and the initial ramdisk, so I feel that a multi-boot arrangement could be done.
Hal9k+1 said:
Hi again Kulve. It supports three Android boot images - the main + two alternates: kernel.img, kernelA1.img, & kernelA2.img. It prefers to see the selected image in /sdcard, but will shift to /system as needed.
So, it is multi-booting, but you should keep in mind that there is still only the single /system partition. So installing two normal ROMs together probably won't work out, due to that common storage area. However, one of the ROMs could be based out of /system, while any others could use some form of external/networked storage. Note that the Android image format contains both the kernel and the initial ramdisk, so I feel that a multi-boot arrangement could be done.
Click to expand...
Click to collapse
My kernel is hard coded to mount the Debian (or whatever) rootfs from /dev/sdaX so Ouya's internal partitioning doesn't matter. It would be really cool to be able to put kernelA1.im to /sdcard, an USB flash drive to the USB port and boot to Debian without tinkering with adb/fastboot/etc. on a PC.
I'm not currently using any initrd-images but adding something simple should be straightforward.
I've been trying different ways of entering bios and/or disabling secure boot, but can't figure out exactly if it has a BIOS menu at all.
Connected a keyboard to it and tries different keys during boot but I can't find the right combination.
Does anyone know how to enter the BIOS menu, or how do we go about disabling secure boot?
Thank you,
cocacola2015 said:
I've been trying different ways of entering bios and/or disabling secure boot, but can't figure out exactly if it has a BIOS menu at all.
Connected a keyboard to it and tries different keys during boot but I can't find the right combination.
Does anyone know how to enter the BIOS menu, or how do we go about disabling secure boot?
Thank you,
Click to expand...
Click to collapse
Keyboard is disabled(no driver installed, thanks Lenovo). Bios is usless.
From my LG-G4, Rooted running Stock 5.1
I was afraid that this would be the case. There seems to be no way to circumvent it either to boot a linux kernel.
http ://i.imgur.com/Tfd9U3i.jpg
Am I right to assume that the only thing we have that are signed are the stock Lenovo Yoga kernels, making them the only thing we can boot?
Also, does anyone know if these are the Microsoft keys, or some Lenovo keys, that they use for secure-boot. http ://i.imgur.com/dm1i16B.jpg
I'm wondering, because linux grub distributions do have a signed grub "shim" with the Microsoft key, maybe making us able to execute that at boot.
Ok, I've found out that it does have the microsoft keys, among other keys, which means it should in theory be possible, in theory. Will be looking into this more.
cocacola2015 said:
I was afraid that this would be the case. There seems to be no way to circumvent it either to boot a linux kernel.
http ://i.imgur.com/Tfd9U3i.jpg
Am I right to assume that the only thing we have that are signed are the stock Lenovo Yoga kernels, making them the only thing we can boot?
Also, does anyone know if these are the Microsoft keys, or some Lenovo keys, that they use for secure-boot. http ://i.imgur.com/dm1i16B.jpg
I'm wondering, because linux grub distributions do have a signed grub "shim" with the Microsoft key, maybe making us able to execute that at boot.
Click to expand...
Click to collapse
actually the problem is not in the unlocking but in making a working kernel for this tablet... because you see... Lenovo released the "source code" so they won't risk being sued for breaking the opensource (kernel) licenses, yet what they released is crap, broken drivers (i had to download all the source packages from all the YT2 models because they didn't even un-tarred crap and each one was 400MB and move things around and still it wont do the job as it should) they intentionally crippled the mk files, removed others, stupid and not working configs and so on... driver files missing... you get the picture and this was intentionally (not to say that this is only the kernel, not a chance to see in their source whats even more interesting: the code for the libraries, binaries etc) i am not saying it cannot be done but the amount of work it requires... hmm does it justify? in the end there are few people on this tablets and even lesser with the knowledge/available time to try and do something that will look like a custom rom
i thought at some point in making a rom but the hassle and time required don't justify it (what would i have? except that it's trendy to have a costom rom) so i for one will stay on my Android+Linux combo but who want to go further has my help
a better approach would be to build a custom rom based on the stock kernel/initramfs, this way you will start having the drivers in order and do your custom system (while no longer used in these days still it was cyanogenmod's way of making custom roms in the past) yet this one too is difficult and requires lots of work (and again for what? what's the gain?) but this one is much more acceptable than the rebuilding all previous one
the secure boot is passed (pm and you will understand) but to what end? see... the problem isn't so much in opening the door but in what you will do once inside (and i am inside that room for some time now yet no better bed than my Linux+Android combo) but feel free to continue on the road..
this is not to discourage you but to warn you about issues others (me) had on the road you're stepping now.
Thank you for the reply.
You're right, going the route of compiling whatever Lenovo has put out, is not the most streight forward option, but I disagree on not putting Linux on this tablet. This is the biggest and highest resolution tablet I've seen, and having Android on it instead of a full-blown Linux distribution, is a waste. Things like X forwarding to use it as a thin clinet, does not work well, I've tried all options. The only viable thing for using this as a thin client, is to run Linux on it, with its native input methods on the display server.
The gain is not having to pay twice as much for a Microsoft Surface tablet to install linux on, with it even being lower resolution and smaller screen.
well in this area @workdowg can give you more details as he is the one who loves X on this tab me i'm more like an Y type (aka windows gui/y) (i am happy with my openvpn and sshd) but again consider the unlocking part done and start collecting stuff for making your kernel
ionioni said:
well in this area @workdowg can give you more details as he is the one who loves X on this tab me i'm more like an Y type (aka windows gui/y) (i am happy with my openvpn and sshd) but again consider the unlocking part done and start collecting stuff for making your kernel
Click to expand...
Click to collapse
Very exciting. Need to boot a compatible kernel with the provided drivers, as you also suggested, and eventually get a full fedora distribution up and running.
Since this is an x86 tablet, no cross-compilation will be needed so it will allow for more flexibility with getting tools into initramfs to make it bootstrap systemd, and eventually run a full distribution from the system partition.
Would be very interested if workdowg can also provide some input on the issue.
cocacola2015 said:
Thank you for the reply.
You're right, going the route of compiling whatever Lenovo has put out, is not the most streight forward option, but I disagree on not putting Linux on this tablet. This is the biggest and highest resolution tablet I've seen, and having Android on it instead of a full-blown Linux distribution, is a waste. Things like X forwarding to use it as a thin clinet, does not work well, I've tried all options. The only viable thing for using this as a thin client, is to run Linux on it, with its native input methods on the display server.
The gain is not having to pay twice as much for a Microsoft Surface tablet to install linux on, with it even being lower resolution and smaller screen.
Click to expand...
Click to collapse
as short as it was yet i still read it on fast-forward
i wasn't saying to not put linux on it (i have linux on mine too) i'm saying that putting ONLY linux was not worth (for my needs) the work required for (maybe i was too subtle ) i mean even if i had a full linux distro solution for my 1380 tablet i would still go for my current Android on Linux set-up that i have. yet, each has his own needs
oh boy it's getting late
cocacola2015 said:
Very exciting. Need to boot a compatible kernel with the provided drivers, as you also suggested, and eventually get a full fedora distribution up and running.
Since this is an x86 tablet, no cross-compilation will be needed so it will allow for more flexibility with getting tools into initramfs to make it bootstrap systemd, and eventually run a full distribution from the system partition.
Would be very interested if workdowg can also provide some input on the issue.
Click to expand...
Click to collapse
ionioni said:
as short as it was yet i still read it on fast-forward
i wasn't saying to not put linux on it (i have linux on mine too) i'm saying that putting ONLY linux was not worth (for my needs) the (huge)work required for (maybe i was too subtle ) i mean even if i had a full linux distro solution for my 1380 tablet i would still go for my current Android on Linux set-up that i have. yet, each has his own needs
oh boy it's getting late
Click to expand...
Click to collapse
I purchased my tablet with intention of dual booting Linux and Android and eventually going with Linux alone (being x86 I thought this would be a piece of cake). Now after getting Linux running (with Android in a chroot).... My vision has changed. TTY Linux is great, I have so much I can get done when not home. Using Xsdl, X runs well enough ( I had wine installed to run a Windows app) and I don't think it would be all that much better on the framebuffer.
The problem ends up being.... (and it has been stated before).... Touch still sucks on a small screen! Android just excels at it. So for me, if someone were to develop kexecboot or such I would definitely play with it (proof of concept) but I'm positive I'd go right back to my current setup.... ssh and the Xsdl for X as needed are perfect.
ionioni said:
as short as it was yet i still read it on fast-forward
i wasn't saying to not put linux on it (i have linux on mine too) i'm saying that putting ONLY linux was not worth (for my needs) the work required for (maybe i was too subtle ) i mean even if i had a full linux distro solution for my 1380 tablet i would still go for my current Android on Linux set-up that i have. yet, each has his own needs
oh boy it's getting late
Click to expand...
Click to collapse
Oh I see. The highest priority for me at least, is to get any linux distribution to boot.
workdowg said:
I purchased my tablet with intention of dual booting Linux and Android and eventually going with Linux alone (being x86 I thought this would be a piece of cake). Now after getting Linux running (with Android in a chroot).... My vision has changed. TTY Linux is great, I have so much I can get done when not home. Using Xsdl, X runs well enough ( I had wine installed to run a Windows app) and I don't think it would be all that much better on the framebuffer.
The problem ends up being.... (and it has been stated before).... Touch still sucks on a small screen! Android just excels at it. So for me, if someone were to develop kexecboot or such I would definitely play with it (proof of concept) but I'm positive I'd go right back to my current setup.... ssh and the Xsdl for X as needed are perfect.
Click to expand...
Click to collapse
Touch will probably work better on the larger screens, I've got the 13inch one.
---------------
So I got the latest kernel from kernel.org to boot but I'm not sure why it doesn't find the initramfs, I assume it has to do with it not existing on a partition, but being built into the boot.img.
http://i.imgur.com/IxdwXre.jpg
I'm trying to make it boot a live OS directly from USB, without initramfs. It's a bit difficult because I don't know how the block devices are named, maybe if anyone knows the kernel command line for booting the live linux using the custom kernel, using sdhci or normal usb.
Basically, instead of the normal LiveUSB sequence:
grub from USB -> kernel from USB -> root filesystem from USB
I want
custom kernel with android boot.img -> root file system from USB/SD card
cocacola2015 said:
I want
custom kernel with android boot.img -> root file system from USB/SD card
Click to expand...
Click to collapse
there's something wrong with your boot.img, and from the image there not enogh info
link the boot.img you make
ionioni said:
there's something wrong with your boot.img, and from the image there not enogh info
link the boot.img you make
Click to expand...
Click to collapse
What's wrong is you need the root= kernel argument, and I'm not sure how the block devices are named (For example, it doesn't have /dev/block/ like on the android kernels). The initramfs isn't modified yet, it's a custom compiled kernel with the source at kernel.org.
Created a boot.img that one can add root= kernel arguments to, to test booting from other media:
https://anonfiles.com/file/177753c2344c3c64c200cdb3803236bd
It has these kernel command line arguments built into the kernel:
Code:
oops=panic panic=360 vmalloc=172M debug_locks=0 bootboost=1 vga=ask i915.modeset=0 drm.vblankoffdelay=1 selinux=0 nomodeset ro debug noinitrd
Another one with UHCI (USB2.0) driver, instead of xHCI (USB3.0), because it might not reach init sometimes otherwise when plugged in, for some reason.
https://anonfiles.com/file/d41f495d118ab1e5ccef961baeb1bcce
No command line arguments built into the kernel, all in boot.img, boot_delay= disabled
Code:
oops=panic panic=360 vmalloc=172M debug_locks=0 bootboost=1 vga=ask i915.modeset=0 drm.vblankoffdelay=1 selinux=0 nomodeset ro debug noinitrd root=/dev/mmcblk0