[SUGGESTION] NAND with (L)ittle (K)ernel - Touch Diamond2, Pure Android Development

First of all i would like to say that i am not Dev, i am just suggesting to start porting (L)ittle (K)ernel in Topaz.
Myself I own an HD2 and a Diamond 2 HTC mobiles, i am looking often into this phone regarding the NAND development but i see it just takes too long.
I don't know how many of you are aware of LK or cLK for HD2 but know that it is an opensource bootloader which is used in various Android devices and actually makes it a native android device. You can use fastboot commands, ClockWorkMod Recovery, ROM Managet etc.
Source code can be found here: http://android.git.kernel.org/?p=kernel/lk.git;a=tree
Currently LK supports Topaz cpu Qualcomm MSM7200A but need to be device specified, that means it needs to be ported.
cLK is LK ported to HD2 by cedesmith and source can be found here
cLK or MAGLDR?
This question has bees discussed numerous times in HD2 forums with many arguments and fights about it.
The basic Pros & Cons are as following:
MAGLDR
+ Boot Android from NAND
+ Boot Android from SD
+ Boot WP7 (in HD2, I don't know if Topaz is strong enough to run it)
+ supports both RMNET and PPP
- Doesn't feel like native android device
- Doesn't use fastboot commands
- Doesn't support ROM Manager
- Not OpenSource
- Can't flash CWM backup if you don't have CWM installed
cLK
+ makes phone Native Android Device
+ ROM Manager Support
+ Fastboot Commands
+ OpenSource
+ Doesn't have a menu like MAGLDR (you don't need it if you have ClockWorkMod)
+ You can flash CWM backup (not zip) without having CWM installed (by fastboot command)
- Supports only PPP (Not RMNET)
I have asked cedesmith if LK or cLK supports Topaz and here is his answer:
cedesmith said:
...porting it should not be very complicated, LK has support for 7200A.
If someone starts working on it, he or she can PM and i will help with what i can.
Click to expand...
Click to collapse
So... If any Dev is willing to start porting LK to Topaz, cedesmith is willing to help sharing his expirience porting LK to HD2.

http://htc-linux.org/wiki/index.php?title=LK_Bootloader
Me and [ACL] have already ported it to Kovsky and Rhodium. Adding Topaz support is easy, just a board file.
But!. For now, only CDMA devices work. GSM devices cannot boot with SD in (and probably without one as well), the ARM9 will crash if SIM card is inserted. The issue has not yet been tracked down, but some tests show it's not related to vregs. So it will probably need a thorough disassembly of wince and diagnostic sd card images

looking forward and willing a lot of patience and success

sp3dev said:
http://htc-linux.org/wiki/index.php?title=LK_Bootloader
Me and [ACL] have already ported it to Kovsky and Rhodium. Adding Topaz support is easy, just a board file.
But!. For now, only CDMA devices work. GSM devices cannot boot with SD in (and probably without one as well), the ARM9 will crash if SIM card is inserted. The issue has not yet been tracked down, but some tests show it's not related to vregs. So it will probably need a thorough disassembly of wince and diagnostic sd card images
Click to expand...
Click to collapse
That is very nice.
HD2 is a GSM device as well and we do not have any of problems you mention.
You can compare your tree with cedesmiths tree and find the solution faster.
As I wrote earlier cedesmith is willing to help anyone who is trying to make LK work on Topaz.
I am not a Dev so I am sorry I can't help in development but i am willing to help in any other way.

topaz is nothing without android,so come on devs

I have one topaz in a drawer waiting for better days (nice android days! )
This sounds good!

sampainho said:
I have one topaz in a drawer waiting for better days (nice android days! )
This sounds good!
Click to expand...
Click to collapse
me too
a better future for d2 is only android
i won't trade it for only 100$ us dollar =..=

Related

HTC Shift Debug Tools and SD access

Dear All,
Just installed the 1.29 which enables voice calling (but no mic).
I noticed that there's a full suite of debug tools on this rom, and especially interesting are :
QXdmSDlog.exe - seems to be able to write to SD ! (I coudn;t get it to work yet)
Debugtools 3.2 (one can set the radio flags in here, and also enable USB bridging it seems
GPSRouter.exe seems to be able to route GPS info to the Vista part (unconfirmed)
I wonder if there's anyone who has done some testing with these three debugtools, and what success they have.
I set the radio flags to 4xx as described, but the SD tool won't log to SD yet.
There's a difference in DebugTools, one has to access them from the SnapVue settings icon, not from the start menu...
Please dump the tools and attach on this thread
Hi,
Appreciate if you can copy the tools or the folder (HTC Debug folder) and zip and attach it here on this thread
lucid said:
Dear All,
Just installed the 1.29 which enables voice calling (but no mic).
I noticed that there's a full suite of debug tools on this rom, and especially interesting are :
QXdmSDlog.exe - seems to be able to write to SD ! (I coudn;t get it to work yet)
Debugtools 3.2 (one can set the radio flags in here, and also enable USB bridging it seems
GPSRouter.exe seems to be able to route GPS info to the Vista part (unconfirmed)
I wonder if there's anyone who has done some testing with these three debugtools, and what success they have.
I set the radio flags to 4xx as described, but the SD tool won't log to SD yet.
There's a difference in DebugTools, one has to access them from the SnapVue settings icon, not from the start menu...
Click to expand...
Click to collapse
I have tested with BTRouter and BTTest and found by disabling the port you could write to COM8 and once you disable it USB port would go away.
If you could provide me the tools you are talking about and the ROM, I can take a look into that.
Note: I can say one thing, since the SD is not activated, probably SD tool wont log to SD. I may be wrong too, that tool might be activating it too.
Thanks
Ram

A possible dualboot theory

Say you wanted Android 1.6 and 2.1 on your HTC Tattoo, but didn't want to flash it all the time for the custom 2.1 ROM to be used. My idea (which may/may not work) is that Android 1.6 is booted from the NAND flash, and the kernel offers the user a choice - Boot 1.6 from flash or Boot 2.x from a special partition on the SD Card. In summary:
Power On Tattoo
Kernel Loads
Kernel pauses, waits for user to make choice via Key Press.
- If Android 2.1 is selected, Kernel remaps loading pointers to the SD Card and continues booting 2.1 off the SD Card.
- If Android 1.6 is selected, Kernel keeps booting.
- If iPhone OS is selected, Tattoo explodes into fireworks.
Android Boots.
Android Desktop/Sense UI appears.
Phone is usable.
I've done this before on x86 platforms, I have a bootloader boot-strapping the Linux kernel on a 48MB NAND IDE Flash Module which points the kernel to boot from the USB Drive with a copy of Debian Squeeze (6.0) installed on it. It shouldn't be too hard to achieve.
I hardly know any kernel knowledge apart from being able to adjust fan speeds and read memory usage/temperature/dropping cache RAM for speed boost, but with enough time and effort, we could have a Play and Work Tattoo device - 2.1 for play, 1.6 for work!
Well, that's my two cents.
Cheers,
Coburn.
You must have a bootloader that pass your kernel parameter, expecialy the root device.
The solution could be a software that can reboot the phone with other kernel parameter
Sent from my Abyzou by ikxdf using XDA App
or you may have two yaffs2 imgs on your sdcard with the whole android system and on boot mount them into flash
we could always have a look at this and maybe steal something from it ;D http://github.com/planetbeing/iphonelinux
Yes, that thing uses openIboot, whatever this is...^^
It's an application for ipod touch/iPhone which works like grub bootloader
I just thought I'd mention that ARM devices don't have a BIOS, they are hardwired to load some binary code to get the device started on boot. So GRUB may be out of the question...
Unless we use a ARM port of Debian to overwrite some kernel memory and shove the kernel of Android 1.6 out of RAM and insert the 2.1 kernel into RAM... but that's going to get messy.
The most simple method is to have a software that boot the new kernel configured for other root device on SDcard.
An example is haret for windows mobile.
Coburn have u Even looked at the link I just gave you?
It's not grub!! It's an application which starts before anything else and it has the possibilityto load up a system.img directly from memory on ipod's/iPhones
This could be our base to start out with and then modify it so it fits our devices!!! I never said that tattoo had BIOS!
Okay okay okay! No need for the angry face, I misunderstood your post.
Looks promising, but looks like it may be more tailored to the iPhone. Unless we make our own SPL and flash that - now there's an idea!
i see this phone ...
http://www.chinabuye.com/double-sta...-mobile-6-5-android-2-0-smart-phone-with-wifi
what do you think about it ?
jigsaw956, hello. I think that this phones just a fake. I played with many china phones: SkyPhone, NokLa TV etc. Just look on pictures with android on site.
Where to download bootloader?
jigsaw956, looking at the last picture it seems to be a HTC Touch Diamond 2, but the hardware specifications are between the "double star" andh the htc diamond 2 are different. fake ?!

[DEV] Ubuntu on Nexus S (natively)

Ok, so following on from the MeeGo thread, I have Ubuntu booting on the Nexus S using the same method and same kernel.
The Ubuntu image used is the HD2 Ubuntu image (v 0.3), loaded from a file on the internal memory (again, no flashing required - you can thank me later).
The touchscreen isn't yet working, but that's my kernel at fault. Will fix that with the MeeGo stuff.
If you want to try this yourself, first grab yourself a copy of Ubuntu for HD2, and take just the rootfs.ext2 file and drag it to your Nexus S (put it in a folder called 'ubuntu' - lowercase is important!).
Then use fastboot to boot the following image (or flash it to recovery partition if you're daring and know how dangerous that can be):
http://dl.dropbox.com/u/8657343/bootUbuntu.img
You will need to do one minor edit once the device is booted; you will see the screen output is very weird; ADB push the following file to /etc/X11/xorg.conf, and then reboot Ubuntu:
http://dl.dropbox.com/u/8657343/xorg.conf
If you're in any way interested, please click the thanks button! Otherwise, enjoy!
nice!
the next thing we'll need after getting the touch screen working
is to have a calling app daemon, and make sure internet works on both 3G and WiFi
nice, look same at Ubuntu Netbook Edition
What about Galaxy S?
Njcki said:
What about Galaxy S?
Click to expand...
Click to collapse
In theory the same stuff should work; I don't have a Galaxy S to test on or I'd try it. I don't know anything about the Galaxy S' bootloader, or how much the kernel would differ (I'm guessing not at all, since this is a stock Samsung kernel from the Android kernel source)
I did an article on my site http://www.android-ita.com/dev-port-di-ubuntu-sul-nexus-s/
Maybe some italian devs, will help you
Thanks for this, gonna have a play now
Why is it dangerous to flash the boot image to recovery? Isn't fastboot lower level than recovery, or have I got that wrong?
nice, thanks. trying this as soon as my wife gets off my phone.
Oh my god.. You are awesome good sir. Will give it a run when touch is up and running!
I'd love it to be run from Android....i dont want it natively, just to test it...booting for example from an android app
I would love to know if this will work on Epic 4G. I'm going to give it a shot to see what happens.
Great job
Could you give us the sources of your kernel ? Is it patched ?
Tyruiop said:
Great job
Could you give us the sources of your kernel ? Is it patched ?
Click to expand...
Click to collapse
There are no changes to the kernel at all so far. I changed the config file to enable VTs, that's it.
Ok, thank you, I'll try to build one myself
can this method be used to install android 2.3 on a phone running android 2.1,
especilly in the case when upgrading is difficult because of kernel and locked bootloader (like motorola devices) ? excuse me if it is a silly question, i'm not a coder.
would it be possible to make an app that re-boots into fastboot and runs the fastboot command. since we dont always have a comp available to run fasboot which makes this useless if your not at home, or have a laptop (in which case you dont need ubuntu on a phone)
works on Nexus One right now ?
--> ok I'm trying
It blocks on X screen of my nexus one.. before the classic bootanimation.zip
Someone have any idea about that ?
Ok, so I've got wifi working . Here is my solution. A little bit crappy but... hey... it's a start ! Also, I tried compiling the kernel with the module built in and it wont boot, and I don't know why ?
Howto get wifi :
1) Boot Ubuntu following stroughtonsmith indications
2) Download http://tyruiop.org/~tyruiop/wifi_nexuss_ubuntu.tar.bz2
3) push the vendor directory at the root. The path must remain (/vendor/firmware etc...) and the bcm4329.ko file wherever you want.
4) reboot under ubuntu
5) *optional, only if ifconfig -a doesn't show eth0* type insmod /path/to/bcm4329.ko
6) Type "ifconfig -a". An eth0 interface should appear. It's wireless. You can configure it with wpa_supplicant without a problem .
Uhm.. with Nexus One, Ubuntu blocks on X SCREEN (before the classic bootanimation).. Maybe something that I do is wrong ?
- Download HD2 Ubuntu
- mkdir ubuntu/
- put in ubuntu/ the fs on the archive I downloader
- put ubuntu/ in the SDCARD
- adb reboot bootloader
- fastboot boot bootUbuntu.img
Is it correct ?

[Q] [HELP] No PVK, no fun? HD7 as WP7 Load Demo only and nothing else...

Hello guys,
After more than a week of non-stop reading and trying to fix my problem I decided to register here on XDA Forum and ask you guys for help.
I'm wonder if there is a solution for problem I have with HD7 and of course to confirm if I'm right...
Maybe it's very simple to fix, but I don't know how and because it's my first broken phone for +10 years I spent so much time trying to fix it.
Okey so let's stary short story about my phone... I bought HTC HD7 phone in ~Jan/Feb 2012. From that time I flashed it many times with custom roms and used RSPL/HSPL - no Goldcard and service Jtag.
Anyway there was something wrong with that phone - not really know what, but with no reason and randomly its software hangs and after reboot loose all data - this happen to me few times before. (I bought it brand new).
And now 8 days ago this "Memory Loss" trick happens again. But this time, there was no way to initialize system again - I mean OS startup and displayed some first initialization steps, but... wait a second: "Low storage memory" message appears. So I see memory card was not recognized and in about it shows 13MB of Total space and 0MB free. So I started researching and reading and of course from beginning I expected that microSD card is damaged.
This tooks me 8 days and my rooms now looks like, so please guys help me
------------------------------------------------------
IMAGE LINK: goo.gl/Avf1o
... and problem still not fixed
------------------------------------------------------
1) I spent few days on downloading recommended software by users with similar problem to mine - Format SD card issue after WP7 (used on a PC, laptop...)
- ..and also I reflashed my old HTC G1 to get more disk tools bundled into FW and tried from basic DD wipe these protected cards...
Status: No success. (I didn't knew before how SD Protection really works...)
2) I found out on Microsoft website note about WP7 and SD cards. (everyone should read):
MS WP7 SD Memory: goo.gl/LMQ2l
:highfive: High five for Microsoft - I believe people now complain how Microsoft sucks is because of use protected area of SD cards in new phone OS and I guess they complain exactly the same when Microsoft is not secure enough... :silly:
Okey so I found great short list of devices that support Protected Area of SD cards and are able to format it/erease them. There was highly recommended (and I agree too) to use Nokia phone on Symbian - FAST AND 100% WORKING. Unfortunately a friend with N95 could bring me that phone at next one day and it was morning, so I was looking and trying other devices...
Status: (broken?) microSD not recognized by Nokia 6600.
Next day status: (broken?) microSD after 3 errors successfully and quick formatted. Double checked, wiped and looks like it works fine. Thanks to Symbian and Nokia N95
NOTE FOR EVERYONE who has a problem with protected SD after WP7/8 and it's not visible anywhere (PC, WP7/8):
GO AND GET NOKIA WITH SYMBIAN AND DON'T WASTE TIME!
3) I installed back to the phone 8GB SanDisk microSD card freshly formatted in N95 and then on PC to FAT32 Primary partition with cluster size 4 and 8KB, but the card was still not recognized. Not even touched... I used for test other 2GB and 4GB one but I was thinking that maybe these are smaller and maybe too old so not compatible. However the 4GB one was 2nd class card.
4) I listen to someone's who wrote on a forum: "go and buy new one it must be working". So I bought one - SanDisk, model exactly the same mentioned by a user who successfully fix microSD WP7 issue.
Status: brand new microSD not recognized.
5) And now is a time for ONE of TWO BEST jokes on XDA I found. It's: RUU_Schubert_XBMOD_V1.01
I spent more than 2 days trying to flashing this ROM with different Radios and trying to update HD7 with the StorageLock.cab
But how to send anything to device with not enough space and with the ROM that brings huge space around 3MB?! ...and the words of another genius guy who say that this method works 100%. And to be sure do this from Goldcard (not explained what).
6) So I made a Y-cable like connector - used two USB ports from some old USB-hub and power source from the same dismounted little bit USB Hub. Connector looks like a USB in a condom:
------------------------------------------------------
IMAGE LINK: goo.gl/9C98o
------------------------------------------------------
7) CID I read using my old BlueAngel/QTEK 9090/MDA III Pocket PC device running Windows Mobile 6.5 - custom from XDA of course ;]
8) When Goldcard was ready and S58 cleared I used it to flash XBMOD ROM as mentioned. No way to update it with that Cab. It was hanging at next reboot after applied .cab.
9) So I decided to mod this ROM little bit and cut it from Office and other things and include app in it. I'm not sure I've done it okey, but when I run Storage Lock, the app starts, notified me that SD card is unlocked. And asked to lock it? When I choosed Yes the Fail message appears.
So still not working...
If someone would to use lite XBMOD with bundled StorageLock inside the ROM as System part:
DOWNLOAD XBMOD w/ StorageLock included-----------
LINK: goo.gl/mpkP0
----------------------------------------------------------------------------
10) And even I listen to this stupid and unbelievable idea that back cover with WiFi antenna needs to be properly installed - otherwise SD card will not be detected - I made fake one for tests and I added additional 3 Ohms resistor to make more real if there is installed some measure software...
Still nothing.
11) I flashed many ROMS through DIAG mode and classic method (Vol-Down + Power) - and I didn't get back my SD card recognized.
Here is a list of FW I tried:
Code:
Deepshining Tango v7.75 15 Langs\
Deepshining v7.8 Nokia Love\
Dynamics7_HD7_1_21_Western\
HTC_HD7_T9292_Europe_ROM_1.16.401.01_OS_7.0.7004.0_FW_2250.09.11601.401_RA_5.51.09.06a_22.30.50.09U_BL_1.16.2250.0(110866)\
HTC_HD7_T9292_Europe_ROM_1.23.401.02_OS_7.0.7004.0_RA_5.51.09.06a_22.3050.09\
HTC_HD7_T9292_Europe_ROM_1.60.401.01_OS_7.0.7004.0_FW_2250.09.16001.401_RA_5.52.09.16_22.33a.50.10U_BL_1.60.2250.0(114364)\
HTC_HD7_T9292_Europe_ROM_1.69.401.01_OS_7.0.7389.0_FW_2250.09.16901.401_RA_5.54.09.21_22.33b.50.10U_BL_1.69.2250.0(117833)\
HTC_HD7_T9292_Europe_ROM_4.05.401.02_OS_7.10.7720.68_FW_2250.21.40502.401_RA_5.69.09.29a_22.50.50.21U_BL_4.5.2250.0(129185)\
HTC_HD7_T9292_Europe_ROM_5.10.401.04_OS_7.10.7720.68_FW_2250.21.51004.401_RA_5.71.09.02a_22.51.50.21U_BL_5.10.2250.0(132968)\
RUU_Schubert_HTC_Europe_1.16.401.01_Radio_5.51.09.06a_22.30.50.09_Signed_SCHUBERT_RELEASE\
RUU_Schubert_HTC_Europe_1.60.401.01_Radio_5.52.09.16_22.33a.50.10_Signed_SCHUBERT_RELEASE\
RUU_Schubert_HTC_Europe_1.69.401.01_Radio_5.54.09.21_22.33b.50.10_Signed_SCHUBERT_RELEASE\
RUU_Schubert_HTC_Europe_1.69.401.02_Radio_5.54.09.21_22.33b.50.10_NoDo_custom_by_ansar\
RUU_Schubert_HTC_Europe_5.12.401.06_Radio_5.71.09.02a_22.51.50.21U_NT_Tango_8779_18L_by_ansar\
RUU_Schubert_Radio_5.66.09.21a_22.48.50.21_custom_by_ansar\
RUU_Schubert_XBMOD_V1.01\
Schubert_Europe_1.69.401.01_Radio_5.54.09.21_22.33b.50.10U\
12) The only one interesting and different was that ROM:
HTC_HD7_T9292_Europe_ROM_1.16.401.01_OS_7.0.7004.0_FW_2250.09.11601.401_RA_5.51.09.06a_22.30.50.09U_BL_1.16.2250.0(110866)
== RUU_Schubert_HTC_Europe_1.16.401.01_Radio_5.51.09.06a_22.30.50.09_Signed_SCHUBERT_RELEASE
In the initialize point after Windows Phone boots it appears message that files are corrupted and phone must be rebooted. But I tried it 20 times and still the same.
------------------------------------------------------
IMAGE LINK: CRC AFTER THIS ROM FLASH: goo.gl/Wrz5V
------------------------------------------------------
IMAGE LINK: HSPL NORMAL STATE: goo.gl/4D3x3
------------------------------------------------------
13) But what was interesting for me from the beginning and I saw that when I made Goldcard and enter into Host Diag mode...
PVK No: Read failed.
------------------------------------------------------
IMAGE LINK: goo.gl/MMpwY
------------------------------------------------------
And now I would like to ask some questions... And please bring all ideas you have... Thank you!
Q1] How device PVK can be loosed?
Q2] How to restore or generate correct one device PVK key and finally how to apply it?
Q3] Missing device PVK key cause SD card initalization (I think yes.)?
Q4] Is it possible to prepare ROM wich will include in the system all these StorageLock, StorageFullTool, and other HTC test tools? Let's say a very lite ROM with basics and tools to manage the unit that will work without inserted SD card? Is it possible to cook ROM like that? Any ROM Maestro can do this?
Thank you!!!!!!
Have a nice day!
It sounds like the same problem that some users have had when the try an use/run the Storage Full Tool... Did you by change use this tool on your device?
xdrc45 said:
It sounds like the same problem that some users have had when the try an use/run the Storage Full Tool... Did you by change use this tool on your device?
Click to expand...
Click to collapse
Hello. No, I never installed this one. ;(
I'm wonder if there is some phone initialize Rom (?)...
And what about Windows Phone activation. Is this the way to get valid PVK? Does anyone know if there is a way to restore even not valid PVK files? I would like to use this phone even without Marketplace and other...

[Q] XT890's Medfield SoC architecture

(I know this thread maybe should belong to Development forum, but I'm posting here since I don't have enough posts to discuss there yet)
I'm in the second year of Computer Science, being a dynamic/interpreted languages programmer for over 6 years now, C/C++ for 2 years.
I have a solid understanding on the x86 PC architecture: interrupts, buses, etc. I'm pretty good at basic x86 assembly... Been studying UEFI for over a month... Whatever.
I've lost the past couple hours searching but didn't find anything on the architecture of our device. Is the "Bootloader" here compared to a BIOS? Or is it like any PC bootloader (MS-DOS, Windows, Linux bootloaders). Is there anything like a BIOS at all or does the OS, once booted, manages all the hardware interrupts by itself? Can I use INT 10H on XT890? Is it ANYTHING close to the PC architecture?
PCI, ISA, (parallel and serial) "ports" managed by a chipset between the peripherals and the x86 core itself?
Ok, it's x86. Once the system has booted, we can call x86 instructions, ok... But what is under that? Is there any reference on this? How can I boot my own code, if it's not Linux?
I really got nowhere trying to learn about the architecture underneath Android and Motorola's Bootloader on Medfield. Found nothing on Intel nor Motorola websites. What am I doing wrong?
Thanks in advance!
I'm studying this myself but there is a lot that i need to learn. Check those to see if helps.
http://bootloader.wikidot.com/android
http://elinux.org/Android_Booting
http://www.ibm.com/developerworks/linux/library/l-linuxboot/
I would like more info about the RAZR I as well, considering it's the only mainstream phone with a x86 processor I'd expect more documentation about it, I am receiving a RAZR I soon.
For what I know, it's boot process is similar to other Android devices, it loads and decompresses a boot.img file that includes a ramdisk and the kernel, you should be able to load another non-linux OS by chainloading a secondary bootloader there, I honestly would like to see more development on the Razr i, specifically to get native Gnu-linux with x11 running
Using @thiagomtl's links, I was able to understand a little more about the Boot process. XT890 seems to have basically the same mechanics of the ARM ones, but x86 tuned.
However I'm yet to understand the differences between "normal" Linux bootstrapping and the Android Bootloader's one.
On a average legacy Linux box we have GRUB/LILO on the MBR. Making a hell of a simplification here: The user turns the PC on, BIOS does the POST and then loads whatever code is on the MBR. GRUB is a very small program there, which simply loads a driver for the storage device, loads vmlinuz and the f*ing ramdisk on the memory and executes it (effectively by simply pointing the IP to the address where the kernel is on the memory).
Samuelgames said:
I would like more info about the RAZR I as well, considering it's the only mainstream phone with a x86 processor I'd expect more documentation about it, I am receiving a RAZR I soon.
For what I know, it's boot process is similar to other Android devices, it loads and decompresses a boot.img file that includes a ramdisk and the kernel, you should be able to load another non-linux OS by chainloading a secondary bootloader there, I honestly would like to see more development on the Razr i, specifically to get native Gnu-linux with x11 running
Click to expand...
Click to collapse
But the Boot process is just a part of my original question. Ok, a important one, but a part.
What about the structure of the device? How it's all implemented? Is the display using plain old VESA VBE? Are the input devices PS/2? USB? Is the power implemented using ACPI standards? lol
As far as I'm concerned Atom SoC doesn't respect many industry standards for the architecture, even for those who run Windows 8, buttons on the Razr I should be naturally be defined as GPIO as the notification LED, I don't think the display respects VESA standards (SGX 540 can't even do scaling) but it should fallback to them at some extent depending on how you initialize the framebuffer.
All of this should be in the Motorola kernel, I haven't taken a look at it but I'll surely will once I get my phone
@Hazou, @YaPeL, @Omar-Avelar
you guys know anything about this?
Ok this is all i know about it by searching through the code and internet and by finding out myself (no sources included, just my memory). It's all linux, nothing like Windows.
Kernel:
We indeed are making a x86 kernel, but not for normal PC's. We use the mid-x86 implementation within the x86 code of the kernel. (arch/x86/platform/mid-x86) MID is the intel word for all the socs for mobile platforms intel is using. The normal upstream linux doesn't provide all the necessary code. And is has changed with the new android version 4.4.2 for our device.
Boot sequence:
The android devices use some sort of bootloader. Droidboot. Droidboot includes the fastboot commands and starts the bringup of the android system. You can read about it on the internet. In most devices (ARM) it is the first thing thats get called for.
Our intel device is a little different. Before the droidboot gets loaded the firmware of the device loads another OS. Also called POS (i think preprocessor OS, or something). Those gets updated with the dix and efwi(wrong name) files we got. The POS can be accessed by booting in the medfield download through the camera button, if i am correct. The POS then loads the droidboot which will in turn load the rest, like a linux device which loads from the bootloader.
The partition layout can be found in the gpt.bin. It can be flashed through fastboot and can change every partition afaik.
So the boot order is:
1. POS/RADIO
2. DROIDBOOT
3. BOOT.IMG is like linux. First the kernel then the ramdisk with the kernel modules.
4. ANDROID
To comment about the JB implementation.
We can build our own kernel and we can, if we want and take the time, upgrade the kernel to the newest version (for android is that 3.10, but we should be able to manage to go fully upstream 3.17). But that takes a lot of time.
I also noticed that, from what i heard, some kernel modules specific for our device has changed and now the kernel that we have can't load the new firmware files in 4.4. So we will need the next kernel from Moto to compile our own when 4.4.2 is released. Those changed are not upstream.
Hazou said:
The POS then loads the droidboot which will in turn load the rest, like a linux device which loads from the bootloader.
The partition layout can be found in the gpt.bin. It can be flashed through fastboot and can change every partition afaik.
So the boot order is:
1. POS/RADIO
2. DROIDBOOT
3. BOOT.IMG is like linux. First the kernel then the ramdisk with the kernel modules.
4. ANDROID
Click to expand...
Click to collapse
This is the most interesting part for hundreds of us. Is there a way we can find what sectors are used for the pos so we can possibly repair code corrupt?
I have a feeling the gpt is messed up so any amount of writing to the dnx or ifwi will be in the wrong location.
I can't find any information on this phone at all.
I think it's time I bought a spare mobo and dumped everything to compare a broken to working
Flacid Monkey said:
This is the most interesting part for hundreds of us. Is there a way we can find what sectors are used for the pos so we can possibly repair code corrupt?
I have a feeling the gpt is messed up so any amount of writing to the dnx or ifwi will be in the wrong location.
I can't find any information on this phone at all.
I think it's time I bought a spare mobo and dumped everything to compare a broken to working
Click to expand...
Click to collapse
If i am correct they are present on the partition layout of the phone. I just don't know wish ones are the right ones. Never looked good enough at that.
Also to repair the gpt and write the dnx or ofwi to the right location u need a dd command or flash command with the right parameters. The flash command most likely won't work because of the gpt partition and the DD command wont either because most of the time u don't have access to a recovery anymore.
But my knowledge about this is limited, so if u dare to put your phone on the line and have maybe the knowledge and skills to do what some people need, please do I can't and need my phone working
Hazou said:
If i am correct they are present on the partition layout of the phone. I just don't know wish ones are the right ones. Never looked good enough at that.
Also to repair the gpt and write the dnx or ofwi to the right location u need a dd command or flash command with the right parameters. The flash command most likely won't work because of the gpt partition and the DD command wont either because most of the time u don't have access to a recovery anymore.
But my knowledge about this is limited, so if u dare to put your phone on the line and have maybe the knowledge and skills to do what some people need, please do I can't and need my phone working
Click to expand...
Click to collapse
Skills/knowledge = limited. I'm no programmer but I take information in like a 100 petabyte SSD.
My phones knackered, I'm trying to fix it but it's not easy! If it's fixed, I'll break it again to make sure the fix works :good:
It's going to be a long road, there is zero success since the first report of code corrupt.
As you say, I need the right param. There's almost no information about it anywhere and what information is about is very fragmented.
I'll keep you updated
Flacid Monkey said:
Skills/knowledge = limited. I'm no programmer but I take information in like a 100 petabyte SSD.
My phones knackered, I'm trying to fix it but it's not easy! If it's fixed, I'll break it again to make sure the fix works :good:
It's going to be a long road, there is zero success since the first report of code corrupt.
As you say, I need the right param. There's almost no information about it anywhere and what information is about is very fragmented.
I'll keep you updated
Click to expand...
Click to collapse
I am almost certain it can be fixed as long as it is a software failure (some maybe have a hardware failure). As this seems one of them it should be fixable as long as your BL is unlocked. With a locked bootloader u don't stand any chance (nah, maybe with medfield flasher, but that one is also limited).
Take a look at the acer padphone or something. Dunno how it is called exactly. Is also uses the intel SOC and makes use of the medfield flasher.
I never had a phone thats corrupt so can't say much about it, but i can help with thinking my way through. If u have that problem can u boot in fastboot or is that even impossible? I know we can flash the POS and fastboot through xfstk. So with the right combination it should work. And if not we can try flash the modem as extra if that is possible. But do know it can hard-brick the device (modem, lowest thing of the device) of-course, aldo u don't have much choice now
Another thing, because fastboot (and even recovery) can flash the dix, ifwi and bootloader files. I 'assume' xfstk (that can also flash the ifwi, dix and bootloader) can flash the whole emmc with indeed the right parameters. We have the source code of the fastboot/recovery ifwi, dix and bootloader flasher. Also called update_osip.
So think it out, i will wait and see.
uart console
Has somebody tried to access a uart console on our razr-i? would be nice for debugging.
Intels datasheet says the board has 3 uart ports. http://ark.intel.com/products/70097
I hope one uart port can be accessed via usb or audio jack. Like on this device: http://forum.xda-developers.com/showthread.php?t=1081743
Or is it only possible with opening the phone and looking for jtag pins?

Categories

Resources