PDA

View Full Version : [PRJ][OS]Linux and Android on HTC Diamond "NOT YET WORKING"


Pages : 1 [2] 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26

sibbor
2nd October 2008, 01:27 PM
As expected, it hangs on the Go Go Go message.
No luck!Bah! I just got my hopes up. Too bad.

vanaedium
3rd October 2008, 01:11 AM
hi Guys
I'm checking this thread every day, every hour, I can't see the time to watch android on my Diamond but you know what, i found this demo video from youtube
http://www.youtube.com/watch?v=h6FtqpnpMtE&feature=related
The guy says exactly that the qualcomm chipset is 7201A the same of diamond :eek: :D
The difference is the video a wvga screen but , if you wanna see android on htc touch series here we go!!!
Hope this helps....hope I mean
Cheers ;)

skiwithpete
3rd October 2008, 06:06 AM
hi Guys
I'm checking this thread every day, every hour, I can't see the time to watch android on my Diamond but you know what, i found this demo video from youtube
http://www.youtube.com/watch?v=h6FtqpnpMtE&feature=related
The guy says exactly that the qualcomm chipset is 7201A the same of diamond :eek: :D
The difference is the video a wvga screen but , if you wanna see android on htc touch series here we go!!!
Hope this helps....hope I mean
Cheers ;)
I watched that vid, I can't believe that they wouldn't show the contacts! They said they were only allowed to show certain apps! Its crazy, very un-Linux, un-open source of them.

Hey Google, it ain't your ball, its our ball.

Addicteddddd
3rd October 2008, 12:10 PM
someone must be working on it >.<

djind
3rd October 2008, 03:23 PM
Gawd I'm sick and tired of the choppy animations of WM!! Good Luck to all who are working on this!

jkonieczny
3rd October 2008, 05:51 PM
Hi everyone!

I know this thread is quite old, but every other about Android link to this one. Anyway - is there Android rom for Diamond around? According to this site: http://pdadb.net/index.php?m=cpu&id=a7201a (click: Browse all devices... button at the bottom) Diamond has the same chipset as Google G1 so it should be possible to port Android from G1 directly. Has anyone tried it?
My HTC Wizard is broken and I can't decide which one should I buy next. It would be nice to have an option to switch between WM6 and Android roms.

TripleQ
3rd October 2008, 06:14 PM
Hi everyone!

I know this thread is quite old, but every other about Android link to this one. Anyway - is there Android rom for Diamond around? According to this site: http://pdadb.net/index.php?m=cpu&id=a7201a (click: Browse all devices... button at the bottom) Diamond has the same chipset as Google G1 so it should be possible to port Android from G1 directly. Has anyone tried it?
My HTC Wizard is broken and I can't decide which one should I buy next. It would be nice to have an option to switch between WM6 and Android roms.

Read this damn thread....

_Nomad_
3rd October 2008, 07:45 PM
Hi everyone!

I know this thread is quite old, but every other about Android link to this one. Anyway - is there Android rom for Diamond around? According to this site: http://pdadb.net/index.php?m=cpu&id=a7201a (click: Browse all devices... button at the bottom) Diamond has the same chipset as Google G1 so it should be possible to port Android from G1 directly. Has anyone tried it?
My HTC Wizard is broken and I can't decide which one should I buy next. It would be nice to have an option to switch between WM6 and Android roms.

If you'd have read through the thread, you would've known that android doesn't boot on diamond at the moment, and most likely will not at least until G1 is officially launched, which is october 22. After this date on could at least get a dumb that provides something more to work on...

H3PO
4th October 2008, 05:59 PM
i tried the kaiser android and the selfcompiled version 'marbalon' posted somewhere in this thread, both with the provided haret.exe and haret-0.5.2.exe from the web

no surprise it doesn't boot... but i wonder why even the newest haret gets the machine info wrong, my haretconsole says
Welcome, this is HaRET 0.5.2 running on WindowsCE v5.2

Minimal virtual address: 00010000, maximal virtual address: 7FFFFFFF

Detected machine Generic MSM7xxxA/MSM7xxxA (Plat='PocketPC' OEM='HTC Touch Diamond P3700')

CPU is ARM ARM arch 6 stepping 2 running in system mode

isn't both the adress space and arm arch detected wrong?

cr2
4th October 2008, 08:31 PM
i tried the kaiser android and ...
no surprise it doesn't boot...

I want to repeat it again. For those who do not read the complete thread.
Kaiser/vogue/msm7x00 linux kernels WILL NEVER work on msm720xA devices
(diamond/raphael).


isn't both the adress space and arm arch detected wrong?

Address space does not really matter (these values are returned by wince),
and armv6 is detected correctly.

skiwithpete
4th October 2008, 10:54 PM
Hey kiddies, looks like we can virtually play with the G1 through a great flash based emulator.

Check out:
http://tmobile.modeaondemand.com/htc/g1/

sooner, not later.

P

H3PO
5th October 2008, 04:06 AM
i read the complete thread. on the irc channel, i was told to try the kaiser bin if i want to start at some point.

brumle80
7th October 2008, 10:39 PM
whoopsie, for more tension ^^

jr_daza
8th October 2008, 08:08 PM
come on guys i want to play with a "diamdroid" :) btw the android os have any keyboard solution for the phones w/o hasdware keyboard?

lemagi
9th October 2008, 12:10 AM
there are news about how to install androis on diamond? ... if you like?

sascha.egerer
9th October 2008, 12:46 AM
there are news about how to install androis on diamond? ... if you like?

? ? ? what ? ? ?

NetRipper
9th October 2008, 12:57 AM
? ? ? what ? ? ?
Probably English by online translator...

There's been progress in finding out memory addresses, gpio's, irqs and some other stuff though. Just not on booting linux (to my knowledge).

cr2
9th October 2008, 01:44 AM
btw the android os have any keyboard solution for the phones w/o hasdware keyboard?

You should check the 'Linux/Androoid on Vogue' thread.

Gluck
9th October 2008, 09:29 AM
In this thread man have G1 on hands and want to help.
Maybe somebody can explain how to get kernel from it?
Or asks questions which help to install android on other devices?

http://forum.xda-developers.com/showthread.php?t=434223&page=2

iRiKi
9th October 2008, 10:59 PM
just found this page, dunno if anyone has found and posted earlier:

http://mobiledevdesign.com/hardware_news/qualcomm_chipset_runs_android_phone_0926/

The first Android-powered mobile phone, the T-Mobile G1 manufactured by HTC Corp., will use a chipset from Qualcomm Inc., a founding member of the Open Handset Alliance (OHA). The Android platform is a software stack for mobile devices that includes an operating system, middleware, and key applications.

As part of its work with the OHA, Qualcomm optimized the Android software by integrating it with the company’s MSM7201A-a.

.. while the Diamond has the "normal" MSM7201A. Should't be that hard to migrate android to Diamond, then ^^

sir0x
9th October 2008, 11:18 PM
At first we must be able to boot any kernel with haret, or has anybody already took this hurdle?

djind
12th October 2008, 04:46 PM
Just read that HTC will not convert Diamond and HD to the Android platform.. So we're dependant on you in this forum!! hehe

lexi1986
12th October 2008, 04:49 PM
Here is an Dutch item: http://tweakers.net/nieuws/56128/htc-geen-android-op-diamond-of-touch-hd.html

In this item HTC tells that they will not bring out Android on the Touch Diamond, Touch Pro. So we must do it ourselfs :)

druidu
12th October 2008, 07:14 PM
I just got my HTC Diamond and I'm ready to start hacking Android onto it :)

druidu
13th October 2008, 05:01 AM
Hehe, this is funny.

GETRAWFRAMEBUFFER method gives me offset 0x1686a000 for the FB
The GAPI method gives 0x16844800
And GETGXINFO method gives me the same as GAPI.
http://wiki.xda-developers.com/index.php?pagename=DiamondMemoryMap gives 0x1666a000.

Anyone can shed some light on this?

EDIT: Sadly none of the offsets fixes my previous problems with the FB.

I've done some tests on my own regarding the FB. Dumped 480x640x2 bytes of memory from address 0x1686a000 and loaded it in Photoshop as a raw file and I got a screenshot of my screen. Then I wrote some byte to that whole memory area and nothing happend. But then, when I did something on the device so that it would refresh part the screen, some parts were colored with the color I wrote in the memory.

My conclusion is that that address is only the windows driver's internal buffer and we still need windows code to update it on the screen -- so it's pretty much useless. Reversing engineering the lcd driver from wince might help though (actually, I couldn't find them in the File Explorer, shouldn't they be in /windows/system32/drivers ?).

On the other hand, looking in the latest Android source from git.android.com, there's a device called msmfb (see /drivers/video/msm/) that might be useful (although I'm not sure if it's functional yet).

NetRipper
13th October 2008, 08:39 AM
I've done some tests on my own regarding the FB. Dumped 480x640x2 bytes of memory from address 0x1686a000 and loaded it in Photoshop as a raw file and I got a screenshot of my screen. Then I wrote some byte to that whole memory area and nothing happend. But then, when I did something on the device so that it would refresh part the screen, some parts were colored with the color I wrote in the memory.

My conclusion is that that address is only the windows driver's internal buffer and we still need windows code to update it on the screen -- so it's pretty much useless. Reversing engineering the lcd driver from wince might help though (actually, I couldn't find them in the File Explorer, shouldn't they be in /windows/system32/drivers ?).

On the other hand, looking in the latest Android source from git.android.com, there's a device called msmfb (see /drivers/video/msm/) that might be useful (although I'm not sure if it's functional yet).
The GETRAWFRAMEBUFFER method should be the correct one. However, as I understood, the MSM processor has graphics optimizations. When new data is written to the framebuffer, the chip must be signalled to update the lcd. So far no idea on how to do this.

You can try adding a sleep of 100 ms after updating the framebuffer. It then does update the screen (or at least it did for me in haret). However, sleep() requires interrupts to be enabled, so it's no use for debugging in haret.

H3PO
13th October 2008, 06:30 PM
sounds interesting... how is this done? can a python haretconsole do this?

druidu
13th October 2008, 06:44 PM
The GETRAWFRAMEBUFFER method should be the correct one. However, as I understood, the MSM processor has graphics optimizations. When new data is written to the framebuffer, the chip must be signalled to update the lcd. So far no idea on how to do this.

You can try adding a sleep of 100 ms after updating the framebuffer. It then does update the screen (or at least it did for me in haret). However, sleep() requires interrupts to be enabled, so it's no use for debugging in haret.

I don't see how that would work. I can wait like forever after writing to memory and it won't get updated by itself. And if I touch something on the device, only the dirty regions will change background color.

Anyway, making the FB work in haret is not the main issue here. We need a working LCD driver which I believe we could test by writing code in haret to reset the lcd driver then try to reinitialize it. I suspect it's similar with Raphael's (it looks like they're identical, just that Raphael has a keyboard). The msmfb code the guys at android.com wrote should be useful.

marios96
13th October 2008, 06:55 PM
I don't see how that would work. I can wait like forever after writing to memory and it won't get updated by itself. And if I touch something on the device, only the dirty regions will change background color.

Anyway, making the FB work in haret is not the main issue here. We need a working LCD driver which I believe we could test by writing code in haret to reset the lcd driver then try to reinitialize it. I suspect it's similar with Raphael's (it looks like they're identical, just that Raphael has a keyboard). The msmfb code the guys at android.com wrote should be useful.

So what you are saying is that Android runs on Raphael and it should run on Diamond?

NetRipper
13th October 2008, 07:15 PM
So what you are saying is that Android runs on Raphael and it should run on Diamond?
The android phone has a different LCD panel. As such, the LCD driver used for the android phone won't be useful. On the other hand, the framebuffer code will be useful.

willyy1991
13th October 2008, 07:30 PM
They have to do it! WM sucks :S come on..

NetRipper
13th October 2008, 07:38 PM
They have to do it! WM sucks :S come on..
We'll get linux running, just a matter of time...

druidu
13th October 2008, 11:30 PM
The android phone has a different LCD panel. As such, the LCD driver used for the android phone won't be useful. On the other hand, the framebuffer code will be useful.

So bottom line is that sooner or later we're going to need some specs of the LCD Diamond's using (registers, init sequence, etc). I know Diamond's LCD is different from G1's (different size, different resolution), but Diamond (http://pdadb.net/index.php?m=specs&id=1311&view=1) and Raphael (http://pdadb.net/index.php?m=specs&id=1306&view=1) have very similar characteristics and I bet they have identical displays (it would be cost effective for HTC to use same part for both):

Display Type: color transflective TFT display
Display Color Depth: 16 bit/pixel (65536 scales)
Display Diagonal: 2.8 " (72 millimetres)
Display Resolution: 480 x 640 (307200 pixels)
Viewable Display Area: 1.7" x 2.3" (43.2 x 57.6 millimetres)
Dot Pitch: 0.09 millimetre/pixel

Do we know the manufacturer (could be written on the LCD itself if anybody disassembled the phone) or can we cross-reference the specs with common manufacturers? Maybe even get some datasheets? The part number in the service manual is: 80H00704-00

A datasheet for MSM7201A wouldn't be bad either, the Android guys surely have it but they don't share it. They did reference it in the source as "80-VA736-2 Rev C". If anybody has it, please share it (give me a priv msg if you don't want to post it).

cr2
14th October 2008, 12:08 AM
So bottom line is that sooner or later we're going to need some specs of the LCD Diamond's using (registers, init sequence, etc). I
Please read this page first:

http://wiki.xda-developers.com/index.php?pagename=RaphaelLCD

and maybe this one too:

http://wiki.xda-developers.com/index.php?pagename=RaphaelResearch


Diamond and Raphael have very similar characteristics and I bet they have identical displays

They have the same hitachi panels for the phones we have seen. You can check your panel id too (the exact location is documented in the MemoryMap page)

NetRipper
14th October 2008, 12:11 AM
So bottom line is that sooner or later we're going to need some specs of the LCD Diamond's using (registers, init sequence, etc). I know Diamond's LCD is different from G1's (different size, different resolution), but Diamond (http://pdadb.net/index.php?m=specs&id=1311&view=1) and Raphael (http://pdadb.net/index.php?m=specs&id=1306&view=1) have very similar characteristics and I bet they have identical displays (it would be cost effective for HTC to use same part for both):

Display Type: color transflective TFT display
Display Color Depth: 16 bit/pixel (65536 scales)
Display Diagonal: 2.8 " (72 millimetres)
Display Resolution: 480 x 640 (307200 pixels)
Viewable Display Area: 1.7" x 2.3" (43.2 x 57.6 millimetres)
Dot Pitch: 0.09 millimetre/pixel

Do we know the manufacturer (could be written on the LCD itself if anybody disassembled the phone) or can we cross-reference the specs with common manufacturers? Maybe even get some datasheets? The part number in the service manual is: 80H00704-00

A datasheet for MSM7201A wouldn't be bad either, the Android guys surely have it but they don't share it. They did reference it in the source as "80-VA736-2 Rev C". If anybody has it, please share it (give me a priv msg if you don't want to post it).
I'm thinking it's against the license for the MSM7201A to share the documentation, else Qualcomm would probably have made the documents public. The Android has the same chip, which should make a lot of the stuff easier.

The LCD is probably Hitachi. The wince drivers (htcdispsrvc.dll) refer to this panel in the code using debug printf's. A part of the LCD init has been researched by cr_. In fact he's playing a large role in documenting Raphael stuff.

A lot of investigative results for the Raphael can be found here:
http://wiki.xda-developers.com/index.php?pagename=RaphaelResearch

The diamond has a similar page, but either the research page is not complete or less research has been done:
http://wiki.xda-developers.com/index.php?pagename=DiamondResearch

For ARM datasheets you can refer to this one, which seems to be most alike with the ARM core in the MSM7201A:
http://infocenter.arm.com/help/topic/com.arm.doc.ddi0301g/index.html

I'm currently into debugging on how far the linux kernel loads - I have been able to trace it up to the point where the MMU is re-enabled. I've been using GPIO's to enable the flashlight to see where it gets. However, currently I'm stuck when the MMU is re-enabled, as I can't get the flashlight to light up to indicate it reached there. ;-) I'm almost certain it boots a bit further, but not sure up to where. (I have a Raphael, hence the flashlight.)

Ongoing investigation... I'm lovin' it. ;-)

edit: oi, cr2 beat me to it... :)

NikPraskaton
14th October 2008, 12:45 AM
Thumbs up for trying to get this running on our diamond!

druidu
14th October 2008, 01:10 AM
Please read this page first:

http://wiki.xda-developers.com/index.php?pagename=RaphaelLCD

and maybe this one too:

http://wiki.xda-developers.com/index.php?pagename=RaphaelResearch

They have the same hitachi panels for the phones we have seen. You can check your panel id too (the exact location is documented in the MemoryMap page)

I know about all the research pages, thanks!

To be sure I read the MemoryMap correctly, panel_id is at physical address 0x081034? How should the id look like and what's the value for Raphael?

Here's what I have around that memory location for my Diamond:

00081034 | 0000000a 2beff7bf 5ffd0bb9 ffff35df | .......+..._.5..
00081044 | ffcfbddb b57ddf3f df3fdf7f 6bfbfef7 | ....?.}...?....k
00081054 | fffeefef 00000000 52455354 55aaaa55 | ........TSERU..U
00081064 | 58899885 00490044 004d0041 00300031 | ...XD.I.A.M.1.0.
00081074 | 00300030 00000030 00000000 00000000 | 0.0.0...........



I'm thinking it's against the license for the MSM7201A to share the documentation, else Qualcomm would probably have made the documents public. The Android has the same chip, which should make a lot of the stuff easier.

The LCD is probably Hitachi. The wince drivers (htcdispsrvc.dll) refer to this panel in the code using debug printf's. A part of the LCD init has been researched by cr_. In fact he's playing a large role in documenting Raphael stuff.

How do you copy system dlls from wince? I tried to copy them from \windows to internal memory but I get an error saying that I'm not allowed to copy ROM files or something.

For ARM datasheets you can refer to this one, which seems to be most alike with the ARM core in the MSM7201A:
http://infocenter.arm.com/help/topic/com.arm.doc.ddi0301g/index.html

Actually, the exact datasheet for the cpu core is this one (http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.ddi0211j/index.html), but this is general -- it won't give us the specifics of MSM7201A like how to drive the MDDI inside the chip or list of registers and memory locations.

I'm currently into debugging on how far the linux kernel loads - I have been able to trace it up to the point where the MMU is re-enabled. I've been using GPIO's to enable the flashlight to see where it gets. However, currently I'm stuck when the MMU is re-enabled, as I can't get the flashlight to light up to indicate it reached there. ;-) I'm almost certain it boots a bit further, but not sure up to where. (I have a Raphael, hence the flashlight.)

Ongoing investigation... I'm lovin' it. ;-)

edit: oi, cr2 beat me to it... :)

Damn, Diamond doesn't have that! Any idea if the vibrator is controlled via a simple GPIO?

I mapped out the sequence to power the LCD on/off, but it uses like 9 pins (maybe some are unrelated, gotta investigate). A simple pin to show binary output would be useful :)


PS: is there any place like an IRC channel dedicated to Android porting on HTC or something similar?

cr2
14th October 2008, 01:31 AM
To be sure I read the MemoryMap correctly, panel_id is at physical address 0x081034? How should the id look like and what's the value for Raphael?
00081034 | 0000000a


Your panel is from "sharp".


Any idea if the vibrator is controlled via a simple GPIO?

maybe, but it's not an arm11-controlled gpio. You need to disassemble the amss/microkernel to know for sure.


I mapped out the sequence to power the LCD on/off, but it uses like 9 pins (maybe some are unrelated, gotta investigate).

What pins are you talking about ?


PS: is there any place like an IRC channel dedicated to Android porting on HTC or something similar?

#htc-linux on freenode

druidu
14th October 2008, 01:43 AM
maybe, but it's not an arm11-controlled gpio. You need to disassemble the amss/microkernel to know for sure.

I'm kind of new to wince, where exactly is the amss/microkernel located and how do I get it? I can't even copy a dll from \windows to internal memory. Are there tools to extract files form the ROM? I'm trying to see if QMAT (http://revskills.de/) can help with that...

Basicly, haret imports NLedSetDevice from coredll.dll so I would start from there, if I could get the dll.

What pins are you talking about ?

GPIO pins. The following are traced with haret when pressing the power button (which switches the display on and off).

LCD off:
out4-7(135)=0 out4-8(136)=0
out2_en-8(392)=1 out2_en-9(393)=1 out2_en-10(394)=1 out2_en-11(395)=1 out2_en-12(396)=1
out4-3(131)=0 out4-4(132)=0

LCD on:
out4-3(131)=1 out4-4(132)=1
out4-7(135)=1 out4-8(136)=1
out2_en-8(392)=0 out2_en-9(393)=0 out2_en-10(394)=0 out2_en-11(395)=0 out2_en-12(396)=0

cr2
14th October 2008, 02:25 AM
I'm kind of new to wince, where exactly is the amss/microkernel located and how do I get it?

It's loaded to (physical) 0xa00000, but is hidden somehow (unlike on the first titans ...)

Basicly, haret imports NLedSetDevice from coredll.dll so I would start from there, if I could get the dll.

Vibra is controlled via proc_comm interface, so don't waste time with nled*
http://wiki.xda-developers.com/index.php?pagename=RaphaelDEX

LCD off:
out4-7(135)=0 out4-8(136)=0
out2_en-8(392)=1 out2_en-9(393)=1 out2_en-10(394)=1 out2_en-11(395)=1 out2_en-12(396)=1
out4-3(131)=0 out4-4(132)=0

LCD on:
out4-3(131)=1 out4-4(132)=1
out4-7(135)=1 out4-8(136)=1
out2_en-8(392)=0 out2_en-9(393)=0 out2_en-10(394)=0 out2_en-11(395)=0 out2_en-12(396)=0

These are your 2 lcd power gpios, and wifi-related power/sdio gpios
http://wiki.xda-developers.com/index.php?pagename=Raphael_GPIO

druidu
14th October 2008, 04:14 AM
Sorry for keep asking more questions, but I can't find any useful docs around...

It's loaded to (physical) 0xa00000, but is hidden somehow (unlike on the first titans ...)

Vibra is controlled via proc_comm interface, so don't waste time with nled*
http://wiki.xda-developers.com/index.php?pagename=RaphaelDEX

These are your 2 lcd power gpios, and wifi-related power/sdio gpios
http://wiki.xda-developers.com/index.php?pagename=Raphael_GPIO

I found some proc_comm_* functions in latest android kernel, there's a lot of code but I'm trying to get some minimum basic working code for the buzzer for example.

#define APP_COMMAND 0x00
#define APP_STATUS 0x04
#define APP_DATA1 0x08
#define APP_DATA2 0x0C

#define MSM_SHARED_RAM_PHYS 0x01F00000

int msm_proc_comm(unsigned cmd, unsigned *data1, unsigned *data2)
{
unsigned base = MSM_SHARED_RAM_PHYS;
// ...
writel(cmd, base + APP_COMMAND);
writel(data1 ? *data1 : 0, base + APP_DATA1);
writel(data2 ? *data2 : 0, base + APP_DATA2);
// ...
}

How do ioctl and cmd columns map to cmd/data1/data2 parameters in this function? For example, how would these commands be sent?

ioctl cmd
1c 0x4 pmic vibra on
1c 0x5 pmic vibra off

Thanks

NetRipper
14th October 2008, 08:44 AM
Easiest way to have access to all files is to use a kitchen and extract a rom. The kitchens can be easily used to extract an existing rom.

Thanks for referring to the correct datasheet. I was under the impression it was the other one as I found it to be the only one to have a peripheral port remap register, but I was mistaken.

skiwithpete
14th October 2008, 02:46 PM
We're going to take the LCD code from the Raphael.

And...

When the G1 is released, we'll take the info about the Qualcomm chipset.

NetRipper
14th October 2008, 02:58 PM
We're going to take the LCD code from the Raphael.

And...

When the G1 is released, we'll take the info about the Qualcomm chipset.
Why wait? There's quite some info to extract from the code.

http://git.android.com/?p=kernel.git;a=shortlog;h=android-msm-2.6.25

Not everything is complete though.

TripleQ
14th October 2008, 03:04 PM
I dono if you guys knows that thread...

http://forum.xda-developers.com/showthread.php?t=431115&page=4

They almost dumped a rom from the G1..
Keep you eye on it;)

cr2
14th October 2008, 04:48 PM
I found some proc_comm_* functions in latest android kernel, there's a lot of code but I'm trying to get some minimum basic working code for the buzzer for example.

Look at the vogue git branch, it has vibra (and sound) control implemented.


How do ioctl and cmd columns map to cmd/data1/data2 parameters in this function? For example, how would these commands be sent?


These are wince ioctl numbers and data for DEX1: device.
I don't have any working code.

cr2
14th October 2008, 04:49 PM
I
They almost dumped a rom from the G1...


"almost dumped" != "dumped".

druidu
14th October 2008, 05:42 PM
Did any of you guys see this (http://www.tradingmarkets.com/.site/news/Stock%20News/1921360/)?
Open Kernel Labs (OK Labs) [...] announced that the company's OKL4 embedded hypervisor is employed on the Qualcomm chipset inside the market's first-ever commercial Android-powered handset.

This means no open source for the G1 kernel, so all we can hope is that Android team will add all the support we need for MSM7201A in kernel git. We can expect that the linux kernel will be much more secure than wince is now (something like Haret would be much harder to implement).

As for what we have, here's a summary of what code/drivers we have:

Low-level stuff
/arch/arm/mach-msm/ (http://git.android.com/?p=kernel.git;a=tree;f=arch/arm/mach-msm)
/include/asm-arm/arch-msm (http://git.android.com/?p=kernel.git;a=tree;f=include/asm-arm/arch-msm)
/include/linux/msm_adsp.h (http://git.android.com/?p=kernel.git;a=blob;f=include/linux/msm_adsp.h)
/include/linux/msm_perf.h (http://git.android.com/?p=kernel.git;a=blob;f=include/linux/msm_perf.h)
/include/linux/msm_rpcrouter.h (http://git.android.com/?p=kernel.git;a=blob;f=include/linux/msm_rpcrouter.h)

MDI/MDDP framebuffer
/drivers/video/msm/ (http://git.android.com/?p=kernel.git;a=tree;f=drivers/video/msm)
/include/linux/msm_mdp.h (http://git.android.com/?p=kernel.git;a=blob;f=include/linux/msm_mdp.h)
We have the core and we have Toshiba LCD controller (http://www.digchip.com/datasheets/new_parts/200605/1097779.php) already implemented (which is probably used in G1 and hopefully in Diamond too). A bit of docs (http://git.android.com/?p=kernel.git;a=blob;f=drivers/video/msm/msm_fb.txt) about the code is also available. Vogue's msmfb (http://git.linuxtogo.org/?p=groups/mobile-linux/kernel.git;a=tree;f=drivers/video/msm;hb=htc-vogue) modifications might also be useful.

i2c
/drivers/i2c/busses/i2c-msm.c (http://git.android.com/?p=kernel.git;a=blob;f=drivers/i2c/busses/i2c-msm.c)

NAND
/drivers/mtd/devices/msm_nand.c (http://git.android.com/?p=kernel.git;a=blob;f=drivers/mtd/devices/msm_nand.c)

USB
/drivers/usb/function/msm_hsusb.c (http://git.android.com/?p=kernel.git;a=blob;f=drivers/usb/function/msm_hsusb.c)
/drivers/usb/function/msm_hsusb_hw.h (http://git.android.com/?p=kernel.git;a=blob;f=drivers/usb/function/msm_hsusb_hw.h)

MMC
/drivers/mmc/host/msm_sdcc.c (http://git.android.com/?p=kernel.git;a=blob;f=drivers/mmc/host/msm_sdcc.c)

Serial
/drivers/serial/msm_serial.c (http://git.android.com/?p=kernel.git;a=blob;f=drivers/serial/msm_serial.c)
/drivers/serial/msm_serial.h (http://git.android.com/?p=kernel.git;a=blob;f=drivers/serial/msm_serial.h)
/drivers/serial/msm_serial_debugger.c (http://git.android.com/?p=kernel.git;a=blob;f=drivers/serial/msm_serial_debugger.c)

RTC
/drivers/rtc/rtc-msm7x00a.c (http://git.android.com/?p=kernel.git;a=blob;f=drivers/rtc/rtc-msm7x00a.c)

Misc stuff
/drivers/android/pmem.c (http://git.android.com/?p=kernel.git;a=blob;f=drivers/android/pmem.c)
/drivers/net/msm_rmnet.c (http://git.android.com/?p=kernel.git;a=blob;f=drivers/net/msm_rmnet.c)


Google's announcement (http://lists.arm.linux.org.uk/lurker/message/20071108.075502.4ff93ee7.html) (long time ago):
Currently this tree supports the Qualcomm MSM7200A SURF Development board (MACH_HALIBUT). Hardware support includes onboard serial, i2c, timer, NAND flash controller, MDP/MDDI framebuffer, gpio controller,
and high speed USB client controller.

Basic support for the shared memory interface to the basebande core
is included (and much more is on the way). Currently this includes
the shared memory stream channels, a TTY driver on top of them, the
QMI control channel, RMNET (virtual ethernet channel and driver),
and RPC Router.


Something that could also be useful, the vogue git (http://git.linuxtogo.org/?p=groups/mobile-linux/kernel.git;a=tree;h=refs/heads/htc-vogue;hb=htc-vogue).

To sum up, steps we need to do to get the kernel boot up on Diamond:
- make some bulletproof asm code to have simple binary output (like a led, buzzer, lcd on/off, anything really)
- start putting checkpoints in the kernel code (using the above technique for feedback) to see where it crashes
- implement a basic lcd driver
- add support for the lcd in msmfb
- see which drivers already work, which ones need tweaking and which ones need complete rewrites, then make them all work :)

Btw, what LCD panel is used in Raphel (name, panel_id)?

sir0x
15th October 2008, 01:33 PM
I don't understand, why haret could not use the framebuffer !? because i can change the framebuffer on my own hand

pfh VRAM 480*1 0x0099

and the first line is blue

NetRipper
15th October 2008, 02:01 PM
I don't understand, why haret could not use the framebuffer !? because i can change the framebuffer on my own hand

pfh VRAM 480*1 0x0099

and the first line is blue
Yes, that works, but that is because IRQs are still enabled at that point. Once IRQs are disabled, it seems the framebuffer is not getting updated anymore. Probably due to some driver that signals the LCD that it needs updating.

sir0x
15th October 2008, 10:05 PM
Yes, that works, but that is because IRQs are still enabled at that point. Once IRQs are disabled, it seems the framebuffer is not getting updated anymore. Probably due to some driver that signals the LCD that it needs updating.

Then the inability to use the framebuffer is the part of the kernel and not haret ?

NetRipper
15th October 2008, 11:05 PM
Then the inability to use the framebuffer is the part of the kernel and not haret ?
Haret also implements a basic framebuffer for its own debugging purposes, but obviously that one doesn't work either.

Once the kernel boots it's more important that the framebuffer driver of the kernel does work, but it doesn't boot far enough to determine whether it works or not - but probably not.

skiwithpete
19th October 2008, 12:58 AM
bump

anybody got any further?

remi.rez
19th October 2008, 01:10 PM
3 days to go until Android gets in the wild.
I hope it makes its way on our Diamond.

TripleQ
19th October 2008, 08:51 PM
Looks like someone was able too make a dump of the G1

http://forum.xda-developers.com/showthread.php?t=431115&page=7

Can it help it us running Android on the Diamond/Touch pro?

keerttttt
19th October 2008, 10:07 PM
Looks like someone was able too make a dump of the G1

http://forum.xda-developers.com/showthread.php?t=431115&page=7

Can it help it us running Android on the Diamond/Touch pro?

I was just about to post this myself. This is finally the real deal, i suppose this has use for someome here? ;)

hargibi
20th October 2008, 05:55 PM
sorry to bump this thread but
How much does the actual dump help the diamond? :D

Da9L
20th October 2008, 06:48 PM
I Think that if the developers here can manage a way to change the drivers in the G1 Dump then we should be all set.. But not sure if that is all that has to be done to make it work?

itsallsubliminal
20th October 2008, 07:00 PM
sorry to bump this thread but
How much does the actual dump help the diamond? :D

i believe the diamond and g1 have incredibly similar specs besides the g1's wvga 320x480 res screen

yuco91
20th October 2008, 08:16 PM
only a questions: is possible to install android on diamond or not ?

brumle80
20th October 2008, 08:51 PM
only a questions: is possible to install android on diamond or not ?

if you had bothered to do a Search (http://forum.xda-developers.com/search.php) you would know that it's not possible.....yet ;)

It would also help reading this thread, if not all then at least the last 2 pages, to get the idea...

now I have told you the nice way, don't expect to be that lucky again ^^

WeeRuz
21st October 2008, 12:01 AM
i believe the diamond and g1 have incredibly similar specs besides the g1's wvga 320x480 res screen

+ QWERTY keyboard + more hardware buttons + compass.. and some other things.

mishulica21
21st October 2008, 05:29 PM
the source of android is available: http://source.android.com/...i think this helps right?:D....should i start saving my data from my diamond and prepare to install android?:D

Addicteddddd
21st October 2008, 05:43 PM
the source of android is available: http://source.android.com/...i think this helps right?:D....should i start saving my data from my diamond and prepare to install android?:D

you won't get very far ;)

jaymit
21st October 2008, 06:57 PM
google have just officially made the OS open hopefully this will help :) - via engadget

quark1980
21st October 2008, 09:03 PM
already downloaded the source...

for me its total jibberisch... :(
hopefully the first port will come shortly..

/me is waitning in anticipation

sir0x
21st October 2008, 09:33 PM
to "install" the android shouldn't be the problem ... but there is no kernel which is running on the diamond.

there isn't a kernel in the g1-android dump, isn't it !?
is htc going to release the g1-kernel-sources !?

keerttttt
21st October 2008, 11:24 PM
to "install" the android shouldn't be the problem ... but there is no kernel which is running on the diamond.

there isn't a kernel in the g1-android dump, isn't it !?
is htc going to release the g1-kernel-sources !?

Don't know for sure, on the rom dump, there was a lot of stuff there, so good chance.. i would take a look at it if i were you.

Second,wouldn't it be possible to write (or alter) a own kernel?

mishulica21
21st October 2008, 11:27 PM
did you look here: http://android.kernel.org/ i see there is a linux kernel for the msm72xx processor....so what is the problem? i might be a noob and don't understand...:D

Riel
22nd October 2008, 12:59 AM
Did you read this topic?

sir0x
22nd October 2008, 08:13 AM
Don't know for sure, on the rom dump, there was a lot of stuff there, so good chance.. i would take a look at it if i were you.

Second,wouldn't it be possible to write (or alter) a own kernel?

I took already a look at the dump and i didn't find some file which looks like a kernel :(

did you look here: http://android.kernel.org/ i see there is a linux kernel for the msm72xx processor....so what is the problem? i might be a noob and don't understand...:D

i'm currently at work, i will give that a try if i am at home. ;)

mishulica21
22nd October 2008, 08:14 AM
Did you read this topic?

I read this topic and I understood that it is needed the kernel for this processor and the display driver.....since the processor of the diamond is the same with the one from G1 i though the kernel from that page is ok.....am I wrong?

Riel
22nd October 2008, 08:44 AM
did you look here: http://android.kernel.org/ i see there is a linux kernel for the msm72xx processor....so what is the problem? i might be a noob and don't understand...:D


I mean this has been tried on the first page.

mcage
22nd October 2008, 09:30 AM
Android sourcecode is now opensource: http://source.android.com/download
So I guess that opens up the way even more as there is no need to work with dumps and reverse engineering anymore.

kibje
22nd October 2008, 11:55 AM
Android phones are for sale as of today. Pretty soon we should be able to get an android ROM. In combination with the source code that was published today we should be able to get a little further.

skiwithpete
22nd October 2008, 12:34 PM
Android phones are for sale as of today. Pretty soon we should be able to get an android ROM. In combination with the source code that was published today we should be able to get a little further.

We already have the rom. Check a few pages back for the link.

I wish somebody would create a wiki for this so we wouldn't have the same conversation every couple of pages.

NetRipper
22nd October 2008, 01:10 PM
Just added a page to the wiki for some progress and what's been done so far. There's been a lot more low level research than described on that page, but I won't go into too much detail.

http://wiki.xda-developers.com/index.php?pagename=RaphaelLinux

I'll try to keep that page updated when there are some nice things to report.

(It's a raphael page, but diamond is practically the same.)

Toug
22nd October 2008, 02:02 PM
Just added a page to the wiki for some progress and what's been done so far. There's been a lot more low level research than described on that page, but I won't go into too much detail.

http://wiki.xda-developers.com/index.php?pagename=RaphaelLinux

I'll try to keep that page updated when there are some nice things to report.

(It's a raphael page, but diamond is practically the same.)

Very good idea.

schildirulez
22nd October 2008, 08:18 PM
I think we should not expect too much from Android on Diamond in the next few months even if we get it running on it. Because what we can see on the roadmap for Android there ist no input method withoutphysical keyboard.


http://source.android.com/roadmap

Q1 2009

Input method framework (IMF)

This feature will enable support for input methods other than physical keyboards, for example soft keyboards. IMF will also enable application developers to provide IME (see below) applications based on the framework.

Input method engines (IME)

IME will support soft keyboards, a dictionary of suggestions, and a suggestion algorithm. The Android platform may contain few reference IMEs, and developers can provide IME applications through the Android Market.

deli_gt
22nd October 2008, 09:25 PM
I think we should not expect too much from Android on Diamond in the next few months even if we get it running on it. Because what we can see on the roadmap for Android there ist no input method withoutphysical keyboard.


http://source.android.com/roadmap

I think onscreen keyboard will be released as downloadable app very soon, becouse 1. Android is easy for programmers 2. Developers can release any system app.

Remember andoid is open-source, not like iphone where users fell like they dont realy own the phone becouse of numerious restrictions.

NetRipper
22nd October 2008, 10:06 PM
I think onscreen keyboard will be released as downloadable app very soon, becouse 1. Android is easy for programmers 2. Developers can release any system app.

Remember andoid is open-source, not like iphone where users fell like they dont realy own the phone becouse of numerious restrictions.
I'm not familiar with Android (the java part) code, but an onscreen keyboard is probably a bit harder than just another app. It has to cross-application and be accessible in each app whenever a textual field is detected.

Anyway, even if Android won't be good for Diamond, we may be able to get Qtopia or Opie running.

At the very least it'll be a good way to prepare the Diamond perfectly for when a new (or patched) android version is released. ;-)

christofur84
22nd October 2008, 10:06 PM
I think onscreen keyboard will be released as downloadable app very soon, becouse 1. Android is easy for programmers 2. Developers can release any system app.

Remember andoid is open-source, not like iphone where users fell like they dont realy own the phone becouse of numerious restrictions.



Well this dude http://it029000.massey.ac.nz/vogue/ wrote on screen for the titan/touch. I installed on my old titan, but had to press the camera button to launch the keyboard, although it was very glitchy, it showed it can be written or not?.?.?

qetuR
22nd October 2008, 11:03 PM
Well this dude http://it029000.massey.ac.nz/vogue/ wrote on screen for the titan/touch. I installed on my old titan, but had to press the camera button to launch the keyboard, although it was very glitchy, it showed it can be written or not?.?.?

Well, you could get the sdk, so, it wouldnt be to hard to transfer the keyboard for this actuall android source code?

Just a thesis.

druidu
22nd October 2008, 11:16 PM
Yes, that's true. Me and NetRipper managed to boot the Linux kernel (from Android git) on HTC Diamond and HTC Raphael.

Last night I managed to put together a console driver and we're not hacking blind anymore (the driver its uses the fact that the LCD is already powered up by wince which makes it easier, but we still need to figure out the power on/off code to have a full driver).

With the kernel problem almost solved, we need working drivers and we're good to go. Watch out the wiki (http://wiki.xda-developers.com/index.php?pagename=RaphaelLinux) page NetRipper put together for more stuff / pics.

qetuR
22nd October 2008, 11:19 PM
Yes, that's true. Me and NetRipper managed to boot the Linux kernel (from Android git) on HTC Diamond and HTC Raphael.

Last night I managed to put together a console driver and we're not hacking blind anymore (the driver its uses the fact that the LCD is already powered up by wince which makes it easier, but we still need to figure out the power on/off code to have a full driver).

With the kernel problem almost solved, we need working drivers and we're good to go. Watch out the wiki (http://wiki.xda-developers.com/index.php?pagename=RaphaelLinux) page NetRipper put together for more stuff / pics.

Well, after reading this text, I just bought a Diamond. :)

First one who get a Android on Diamond with SMS, MMS, HSPDA, WiFi and keyboard will get a nice donation... :P

NetRipper
22nd October 2008, 11:31 PM
Updated wiki (http://wiki.xda-developers.com/index.php?pagename=RaphaelLinux) with some pictures! Real nice. :-)

keerttttt
22nd October 2008, 11:33 PM
Well, after reading this text, I just bought a Diamond. :)

First one who get a Android on Diamond with SMS, MMS, HSPDA, WiFi and keyboard will get a nice donation... :P
I'll donate too, normally i never donate.. but this is really exciting. i'm following this thread almost by the minute here :D

qetuR
22nd October 2008, 11:54 PM
Updated wiki (http://wiki.xda-developers.com/index.php?pagename=RaphaelLinux) with some pictures! Real nice. :-)

I just got a hard-on from that one. A Linux kernel on a new device just teases my nerves in a way I dont feel normaly...

:P

By the way NetRipper, do you think it will be possible for a keyboard program, or will you focus on the Pro?

itsallsubliminal
23rd October 2008, 12:22 AM
Updated wiki (http://wiki.xda-developers.com/index.php?pagename=RaphaelLinux) with some pictures! Real nice. :-)


O MAN!!! I'm wicked excited too!! i will be donating once its on my phone aswell!! Thanks so much to everyone and their hard work! I can't wait to go pay my GF's T-mobile bill and whip out my Diamond with Android!! lol

I just got a hard-on from that one. A Linux kernel on a new device just teases my nerves in a way I dont feel normaly...

:P

By the way NetRipper, do you think it will be possible for a keyboard program, or will you focus on the Pro?


I really hope there's a bigger focus for the Diamond, just because the Pro has the hard keyboard with nothing really to worry about

deli_gt
23rd October 2008, 01:05 AM
O MAN!!! I'm wicked excited too!! i will be donating once its on my phone aswell!! Thanks so much to everyone and their hard work! I can't wait to go pay my GF's T-mobile bill and whip out my Diamond with Android!! lol




I really hope there's a bigger focus for the Diamond, just because the Pro has the hard keyboard with nothing really to worry about

I'm realy saying its not difficult to make on-screen keyboad, if I were bit more familiar with androids codes it would be probably easy, it should be background process witch is dead until you press with ur finger on writable content(same on all apps) witch send info to on-screen keyboard app to start up and emulate real keyboard's press submits.

cr2
23rd October 2008, 01:08 AM
First one who get a Android on Diamond with SMS, MMS, HSPDA, WiFi and keyboard will get a nice donation... :P

Hahaha. for the keybaord you need to buy a rapahel :)

spicypixel
23rd October 2008, 01:11 AM
Good work on this guys, if it all goes well will buy a Touch/Pro + Android over a G1.

itsallsubliminal
23rd October 2008, 01:19 AM
Hahaha. for the keybaord you need to buy a rapahel :)

i c

I'm realy saying its not difficult to make on-screen keyboad, if I were bit more familiar with androids codes it would be probably easy, it should be background process witch is dead until you press with ur finger on writable content(same on all apps) witch send info to on-screen keyboard app to start up and emulate real keyboard's press submits.

is there a way to look into the android for Vogue codes and write something similar just vga oriented? Would that be a good base?

I know NOTHING with codes, porting, etc... thats why i ask... please excuse my lack of this knowledge :D

cr2
23rd October 2008, 01:20 AM
Good work on this guys, if it all goes well will buy a Touch/Pro + Android over a G1.

I've not yet documented the i2c commands/data for the keypad (capacitive sensor too),keyboard,backlight(s), but it's doable.
The accelerometer datasheet does not really match the raphael
driver, so it needs more careful documentation too.
The touchscreen is built-in MSM device, so there is no driver for it yet,
but its protocol is known and understood.

cr2
23rd October 2008, 01:22 AM
is there a way to look into the android for Vogue codes and write something similar just vga oriented? Would that be a good base?

Yes, you only need to adapt the hardcoded dimensions.
And you need a touchscreen driver, which is a separate chip on vogue, so you can't reuse it on diam/raph.

NetRipper
23rd October 2008, 01:24 AM
There's at least one developer with diamond amongst us (druidu) so he'll probably focus on getting software keyboard. If vogue's keyboard works properly, then we can probably copy it from there. In fact, the whole java part of android can be from vogue, as it's platform independent (mostly).

Most work will be booting kernel and interacting with the hardware. There are quite some differences with G1 on that end.

itsallsubliminal
23rd October 2008, 01:25 AM
I've not yet documented the i2c commands/data for the keypad (capacitive sensor too),keyboard,backlight(s), but it's doable.
The accelerometer datasheet does not really match the raphael
driver, so it needs more careful documentation too.
The touchscreen is built-in MSM device, so there is no driver for it yet,
but its protocol is known and understood.

Thanks for this info, glad to know its doable :D

Yes, you only need to adapt the hardcoded dimensions.
And you need a touchscreen driver, which is a separate chip on vogue, so you can't reuse it on diam/raph.

ok, but the code will be somewhat similar? or completely different?

I'm sure u guys have already attacked this, just wonderin how much of a difference the seperate chip makes.

skiwithpete
23rd October 2008, 01:31 AM
ace wikipics.

anyone wanna guess at how long before its happening?

itsallsubliminal
23rd October 2008, 01:39 AM
There's at least one developer with diamond amongst us (druidu) so he'll probably focus on getting software keyboard. If vogue's keyboard works properly, then we can probably copy it from there. In fact, the whole java part of android can be from vogue, as it's platform independent (mostly).

Most work will be booting kernel and interacting with the hardware. There are quite some differences with G1 on that end.

thanks! Its only a matter of time :D I just wish i could contribute but i know nothing :( But as soon as i get android booted on my phone, i'll donate... thats contributing right? :P

vanaedium
23rd October 2008, 02:19 AM
Hi why don't we ask to PCM keyboard guy/s, I think he /they will be happy to contribute or...... should be happy :)
Guys you rock :D my donations will arrive soon to u

cr2
23rd October 2008, 02:22 AM
ok, but the code will be somewhat similar? or completely different?


It's just a smart hack on top of the touchscreen driver.

vanaedium
23rd October 2008, 02:30 AM
Ahhhhhh the SEARCH this beatiful thing!
http://forum.xda-developers.com/showthread.php?t=432661
Can you see this pictures? the third seems to me a virtual keyboard..eheheheh
googleboys

NetRipper
23rd October 2008, 02:38 AM
We got the proper framebuffer driver working now and we disabled some drivers to make it boot further. Just a nice new pic to show off the linux idol.

It's on wiki (http://wiki.xda-developers.com/index.php?pagename=RaphaelLinux) again. ;-)

fumanchu182
23rd October 2008, 04:51 AM
To fix the proc_comm issue on hang I would suggest looking in the Kernel and setting CONFIG_MSM7X00A_6056_COMPAT, this should allow it to go past the hang. I am an amateur at best but if you want another person on the team I am almost done with my responsibilities at work for launching a new site so my schedule is tight currently to devote any time to this project but it should free up soon.

druidu
23rd October 2008, 07:06 AM
To fix the proc_comm issue on hang I would suggest looking in the Kernel and setting CONFIG_MSM7X00A_6056_COMPAT, this should allow it to go past the hang. I am an amateur at best but if you want another person on the team I am almost done with my responsibilities at work for launching a new site so my schedule is tight currently to devote any time to this project but it should free up soon.

Tried it, seems to get a bit further now. I see NetRipper managed to get the fb up last night, I had to sleep.

Anyway, I really want to get Android on my Diamond, it's my primary phone right now (my old one went for a swim in the sea and it's not feeling very good from that salt water), and I can't stand win mobile!

Focus is on making drivers work; after that, keyboard will be a breeze :)

fumanchu182
23rd October 2008, 07:08 AM
Tried it, seems to get a bit further now. I see NetRipper managed to get the fb up last night, I had to sleep.

Anyway, I really want to get Android on my Diamond, it's my primary phone right now (my old one went for a swim in the sea and it's not feeling very good from that salt water), and I can't stand win mobile!

Focus is on making drivers work; after that, keyboard will be a breeze :)

Where is it hanging now, maybe I know what Kernel option to turn on?

druidu
23rd October 2008, 08:26 AM
There is nothing very specific, there are lots of things that are tuned for Diamond yet... proc_comm isn't working at all and a most of the drivers use it (although you can bypass some stuff, could be the cause why other devices don't work).

If we could get the proc_comm work for Diamond/Raphael it would be a big leap forward. I understand Vogue uses a proc_comm interface that is more similar to Diamond's than G1's is, if that's correct maybe we can adapt something from there and make it work.

Shared memory seems to be mapped corectly (MSM_SHARED_RAM_PHYS = 0x01F00000 mapped at MSM_SHARED_RAM_BASE = 0xE0100000). According to info taken from Haret, it should be around there somewhere, maybe we're missing some small detail.

keerttttt
23rd October 2008, 08:42 AM
Really nice guys. Keep up the good work. You're being a great help for all diamond / raphael users.

keerttttt
23rd October 2008, 10:01 AM
Could you maybe post the files online? the zimage and android.bin, default.txt etcetera? I'd like to fool around with it. :)

keerttttt
23rd October 2008, 10:07 AM
Ah, already found it.
http://www.netripper.nl/raphael/raph_20081022_framebuffer_magic.exe
Too bad it stops on the mddi: busy message.
Good luck ;)

Edit: I don't know if you saw this, but if you leave it hanging on that error message for about 120 seconds , it says "INFO: task rpcrouter:13 blocked for more than 120 seconds"
"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message

And then it does some other things and hangs again. kinda loop.

NetRipper
23rd October 2008, 10:14 AM
Ah, already found it.
http://www.netripper.nl/raphael/raph_20081022_framebuffer_magic.exe
Too bad it stops on the mddi: busy message.
Good luck ;)
Also just put the extracted version online in the similarly named directory:

http://www.netripper.nl/raphael/raph_20081022_framebuffer_magic/

Bare with me about download speeds - it's hosted on my DSL for now.

Note that the rootfs.cgz was taken from the Hermes (to try and get usbnet working) but it seems it may not be proper for Raphael/Diamond.

Would be nice if anyone could make a proper initrd which simply initializes usbnet and drops to a busybox shell. Although I'll try this myself tonight (@ work now). Include the logo.rle (found in android rarred dump) in the root of the initrd for some magic.

keerttttt
23rd October 2008, 10:30 AM
Wow, i'm using a android.bin from the kaiser (the new one) and i'm looking at the red moving light from the loading screen of android right now.

Don't know if it's getting farther than that though.
Sometimes it stops moving, and then moves on again...

NetRipper
23rd October 2008, 10:44 AM
Wow, i'm using a android.bin from the kaiser (the new one) and i'm looking at the red moving light from the loading screen of android right now.

Don't know if it's getting farther than that though.
Sometimes it stops moving, and then moves on again...
The SD card won't mount yet in this kernel. It's probably waiting for that (haven't checked android image myself yet).

keerttttt
23rd October 2008, 11:25 AM
The SD card won't mount yet in this kernel. It's probably waiting for that (haven't checked android image myself yet).
Ok, so what's the rootfs.cgz that you're trying to boot then? Just a base linux kernel?

NetRipper
23rd October 2008, 11:28 AM
Ok, so what's the rootfs.cgz that you're trying to boot then? Just a base linux kernel?
rootfs.cgz was used on hermes to:
1. enable usbnet
2. drop to shell

usbnet would allow us to have a remote shell on the device, so that we can more easily investigate and have access to commands such as 'dmesg'.

keerttttt
23rd October 2008, 11:32 AM
rootfs.cgz was used on hermes to:
1. enable usbnet
2. drop to shell

usbnet would allow us to have a remote shell on the device, so that we can more easily investigate and have access to commands such as 'dmesg'.

OK, so can't we just disable the rpcrouter? it hangs on that point for now.

NetRipper
23rd October 2008, 11:45 AM
It doesn't hang there. When using the vogue android initrd, the initrd works (though obviously doesn't continue booting android as mmc does not work). It's a problem with the rootfs.cgz. We're not sure usbnet will work anyway...

(the rpcrouter is, in your case, probably just the last driver to be initialized, which is why it seems to be hanging there.)

keerttttt
23rd October 2008, 11:52 AM
Ok, well i'm waiting excited as hell this evening if you get some progress then ;)
fingers crossed.

liamhere
23rd October 2008, 12:00 PM
im keeping a eye on this thread
glad to see thing are moving forward

cr2
23rd October 2008, 12:03 PM
it says "INFO: task rpcrouter:13 blocked for more than 120 seconds"
"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message

And then it does some other things and hangs again. kinda loop.

The amss (microkernel) running on the arm9 phone part is unhappy that it lost the communication with arm11 where you run linux. I guess that we will fix
it soon.

mclein
23rd October 2008, 12:07 PM
when Android in the diamond?

keerttttt
23rd October 2008, 12:10 PM
Some pics of booting the android image, not sure if it's usefull, but it looks cool :cool:
http://i37.tinypic.com/a14pb9_th.jpg (http://i37.tinypic.com/a14pb9.jpg)

http://i33.tinypic.com/2yyv5tc_th.jpg (http://i33.tinypic.com/2yyv5tc.jpg)

http://i33.tinypic.com/1z39eo0_th.jpg (http://i33.tinypic.com/1z39eo0.jpg)
Edit: Note the (i suppose coming from google) HOW ARE YOU GENTLEMEN, 'easter egg'

liamhere
23rd October 2008, 12:17 PM
when Android in the diamond?

have you read the thread? :mad:

mclein
23rd October 2008, 12:20 PM
have you read the thread? :mad:


yes, but not me whole, sorry: (

Hupo
23rd October 2008, 12:56 PM
Will it be possible to make an android os for the Diamond now when we have the source http://source.android.com/download

yuco91
23rd October 2008, 01:08 PM
Will it be possible to make an android os for the Diamond now when we have the source http://source.android.com/download

well ! good job !

nummer20
23rd October 2008, 01:11 PM
Could someone moderate this thread? I've subscribed to see important development steps but every single hour some clowns keep posting the same questions. It's so damn annoying...

MasterOfDesasters
23rd October 2008, 01:28 PM
Could someone moderate this thread? I've subscribed to see important development steps but every single hour some clowns keep posting the same questions. It's so damn annoying...

i second that, is going for month now and every third post is about "When comes it out?"; "Does that work now?". So please any mod take care of this thread. Otherwise I could create a forum only for the devs as I did for duttythroy before. Drop me a pm if someone is interested in an android forum without newbie questions. can implement that within minutes.

Regards
MasterOfDesasters

remi.rez
23rd October 2008, 01:29 PM
Will it be possible to make an android os for the Diamond now when we have the source http://source.android.com/download

Thank god for your tip, without you, the whole thread (which you must have read) would have gone nowhere.

liamhere
23rd October 2008, 01:42 PM
Thank god for your tip, without you, the whole thread (which you must have read) would have gone nowhere.

i can taste your sarcasum :rolleyes:

qetuR
23rd October 2008, 01:58 PM
What is this? Why the same god damn answers over and over again?

First.

Read atleast the 3-4 couple of pages, I totaly understand that you don't want to read all of it, but 3-4 pages? Is that hard?

masterbox
23rd October 2008, 03:00 PM
What is this? Why the same god damn answers over and over again?

First.

Read atleast the 3-4 couple of pages, I totaly understand that you don't want to read all of it, but 3-4 pages? Is that hard?

Just an idea, maybe indicating int the thread title that it's NOT working would at least reduce the number of boring and stupid questions...

Something like that :

[PRJ][OS]Linux and Android on HTC Diamond *** NOT WORKING ***


What do you think ?

N3m3515
23rd October 2008, 03:07 PM
i would prefer ***not working yet***

mugglesquop
23rd October 2008, 03:08 PM
***not working yet, but maybe once we get some more resources....***

:p

liamhere
23rd October 2008, 03:25 PM
its down to dcordes to change his first post...

thats if he wants to

thevery
23rd October 2008, 03:32 PM
Just an idea, maybe indicating int the thread title that it's NOT working would at least reduce the number of boring and stupid questions...

Something like that :

[PRJ][OS]Linux and Android on HTC Diamond *** NOT WORKING ***


What do you think ?

I think it's better to give the direct link

PROGRESS IS HERE: http://wiki.xda-developers.com/index.php?pagename=RaphaelLinux

N3m3515
23rd October 2008, 04:06 PM
yes this is what most people are searching for

aximilation
23rd October 2008, 04:11 PM
Hello developers, I'm cross posting this between the Kaiser Android page, the Diamond Android page, and the Android Dump page:
http://forum.xda-developers.com/showthread.php?p=2813737
http://forum.xda-developers.com/showthread.php?t=402002
http://forum.xda-developers.com/showthread.php?t=431115

I do not have the time or experience to contribute, although I am excited and looking forward to getting Android on my Kaiser, so I thought I would contribute what I could toward the development process: Space and bandwidth.
I have created a ftp user account on my web server which will be dedicated to helping the *development* process. If you, as a developer, have files to share/work on, upload them to the appropriate a folder with your name on it.
I am currently hosted with godaddy.com on their deluxe plan ($7/mo) and should have plenty of bandwidth to work with, but this is intended for development, once we have finalized files I will probably need to have files moved to other servers as I doubt my bandwidth will hold up once we have functional ROMs...that said, any developers are welcome to use this space as a place for development collaboration and to share files relating to ROM development.

If anyone has any questions about the use of this space or other recommendations about centralized collaboration, email me, contact at the bottom.

Please use the space respectfully and don't mess with other's files.

[edit] PM me for logon credentials. (thanks for the input guys!)

There are currently the working folders:
/android dump/ - Files/scripts for pulling Android from the G1.
/diamond/ - Files/scripts for getting Android working on the Diamond.
/kaiser/ - Files/scripts for getting Android working on the Kaiser.

~ Aximilation
If you have any questions/comments, please email me: webmaster[(a.t)]aximilation.com

theipodpeople
23rd October 2008, 08:03 PM
Awesome progress, loving the fact that you're constantly updating with pictures. I'd definitely also make a donation as I'm friggen tired of my iPhone, not because it's not a great phone, I just get bored quickly and hate that I have to jailbreak it for the slightest customization. Android on a touch pro would be my dream phone as of now, at least until the next gen from htc comes out, or the X1 :D

Anyway I'm emailing this page and the progress page to gizmodo to try and get you guys some more exposure and maybe more answers. You should start a donation account so that if you did get more exposure it would be more beneficial.

bloatboy
23rd October 2008, 08:22 PM
Duh, does it work yet? :p

Seriously, I can build an Android ARM kernel but cannot test it on a Touch Diamond. If someone wants to give me a .config (or some changes from the stock Android kernel), I'll be happy to build a kernel if someone with a Touch Diamond wants to test it.

keerttttt
23rd October 2008, 09:42 PM
Duh, does it work yet? :p

Seriously, I can build an Android ARM kernel but cannot test it on a Touch Diamond. If someone wants to give me a .config (or some changes from the stock Android kernel), I'll be happy to build a kernel if someone with a Touch Diamond wants to test it.

I have a touch diamond, no problem to test here.

yuco91
23rd October 2008, 09:59 PM
I have a touch diamond, no problem to test here.

I too !! if it's possible ...

NetRipper
23rd October 2008, 10:23 PM
Duh, does it work yet? :p

Seriously, I can build an Android ARM kernel but cannot test it on a Touch Diamond. If someone wants to give me a .config (or some changes from the stock Android kernel), I'll be happy to build a kernel if someone with a Touch Diamond wants to test it.
Seriously, how can you develop without having an actual device... it's not practical.

keerttttt
23rd October 2008, 10:28 PM
Seriously, how can you develop without having an actual device... it's not practical.

Ah, nice. back from work?

qetuR
23rd October 2008, 11:32 PM
Seriously, how can you develop without having an actual device... it's not practical.

Well, if he's very skilled it's of course possible. I mean, look at it as a good programmer. If he's very talented he could program without compiling and test it, right?

But still, not practical, as you say. :)

bloatboy
23rd October 2008, 11:36 PM
This is the first kernel I compiled.
This was with the .config/config.gz that came with the emulator (aka, the default) and will probably fail to boot on a Touch Diamond.
If anyone wants to post setting changes, drivers to add or remove, or parameters that should be included in the Makefile, I'll put up an updated file.

http://rapidshare.com/files/156920822/zImage.html

And how I can compile a kernel without a phone to test? The same way as everyone else, even those that have the phone. I use the kernel source, and a cross compiler. I wouldn't even say I'm a particularly wonderful programmer, but I seem to do pretty well with kernel builds. And if people report anything close to success, I'll go out and buy a phone.

qetuR
23rd October 2008, 11:38 PM
Awesome progress, loving the fact that you're constantly updating with pictures. I'd definitely also make a donation as I'm friggen tired of my iPhone, not because it's not a great phone, I just get bored quickly and hate that I have to jailbreak it for the slightest customization. Android on a touch pro would be my dream phone as of now, at least until the next gen from htc comes out, or the X1 :D

Anyway I'm emailing this page and the progress page to gizmodo to try and get you guys some more exposure and maybe more answers. You should start a donation account so that if you did get more exposure it would be more beneficial.

If you mean the X1 would have android, that would be awesome. Is there any progress there?

thevery
23rd October 2008, 11:51 PM
This is the first kernel I compiled.
This was with the .config/config.gz that came with the emulator (aka, the default) and will probably fail to boot on a Touch Diamond.
If anyone wants to post setting changes, drivers to add or remove, or parameters that should be included in the Makefile, I'll put up an updated file.

http://rapidshare.com/files/156920822/zImage.html

And how I can compile a kernel without a phone to test? The same way as everyone else, even those that have the phone. I use the kernel source, and a cross compiler. I wouldn't even say I'm a particularly wonderful programmer, but I seem to do pretty well with kernel builds. And if people report anything close to success, I'll go out and buy a phone.

hang at the beginning of the boot, even no terminal output.

sir0x
24th October 2008, 12:39 AM
How can i get the latest diamond/raphael-kernel sources you are developing ?

ecker2008
24th October 2008, 08:23 AM
Hey guys.. i am just starting to get into Android code development and am really interested to get this to work.. I am not very experienced in programming, but I really want to learn and help as much as possible. I will be willing to test anything you want and if someone who is working on this project would like to explain to me a little bit more in depth on what is being done and if there is anyway that I can help just send me a PM. I also know a group of programmers that are very familiar with android code and have already written a couple of pretty advanced applications so if that would help at all just let me know. I am sure they would be willing to help I just don't really know what needs to be done. Thanks!

raymondw
24th October 2008, 01:25 PM
I've done some testing on my Raphael and got at least 1 remark
The default.txt has a couple of lines for MTYPE (removed useless lines ;) )
#Halibut
set MTYPE 1439

#Raphael
#set MTYPE 1910

The Raphael one does not work, I'm able to boot with the Halibut one.
Copied a android.bin from the Kaiser rom and got the red dot thingy.
Also tried a self created Android IMG, but got HaRET error about the size (38MB!)

Very nice work all!

/edit
sir0x, check my post again ;)

sir0x
24th October 2008, 02:09 PM
I've done some testing on my Raphael and got at least 1 remark
The default.txt has a couple of lines for MTYPE (removed useless lines ;) )
#Halibut
set MTYPE 1439

#Raphael
#set MTYPE 1910

The Raphael one does not work, I'm able to boot with the Halibut one.
Copied a android.bin from the Kaiser rom and got the red dot thingy.
Also tried a self created Android IMG, but got HaRET error about the size (38MB!)

Very nice work all!

1439 is the right MTYPE for Diamond.
Try the compressed kernel-img ( usually named zImage )

redliner51
24th October 2008, 02:19 PM
Hey Guys!

I'm very interested to help you... is there a subversion link?

bloatboy
24th October 2008, 05:26 PM
All I did for the source/build was follow this page (http://source.android.com/download).

In a nutshell:

Installed Ubuntu.
Installed git, python, jdk, and the other tools mentioned on that page.
Installed their repo script.
Using repo, got the current source archive.
Installed the arm toolchain from here (http://www.codesourcery.com/gnu_toolchains/arm/download.html).
Extracted the default config from the emulator with adb pull /proc/config.gz .
and put it in the kernel source directory.
Added a line in the Makefile to point it to the ARM toolchain CROSS_COMPILE=/home/user/build/arm-2008q3/bin/arm-none-linux-gnueabi-
Removed the LDFLAGS_BUILD_ID from the Makefile.
Specified that the compiler should cross-compile for ARMmake ARCH=arm
The compiled kernel was about 10k smaller than the default one provided with the emulator.
Finally, I ran the emulator with that kernel emulator -kernel zImage

So, while it works with the emulator, it doesn't seem to work at all on a Touch Diamond. This probably due to the difference between the ARM defaults and the MSM7201A (ARMv6/ARM1136EJ-S ). I'll try and build a kernel for that later today.

yuco91
24th October 2008, 06:05 PM
i' ve problem to configure and install repo ...

extract to the guide:

Installing Repo
To install, initialize, and configure Repo, follow these steps:

1. Download the repo script and make sure it is executable:
$ curl http://android.git.kernel.org/repo >~/bin/repo
$ chmod a+x ~/bin/repo
2. Create an empty directory to hold your working files:
$ mkdir mydroid
$ cd mydroid
3. Run repo init to bring down the latest version of Repo with all its most recent bug fixes. You must specify a URL for the manifest:
$ repo init -u git://android.git.kernel.org/platform/manifest.git
4. When prompted, configure Repo with your real name and email address. If you plan to submit code, use an email address that is associated with a Google account.

A successful initialization will end with a message such as
repo initialized in /mydroid
---

I've problem at step 3 .
---
3. Run repo init to bring down the latest version of Repo with all its most recent bug fixes. You must specify a URL for the manifest:
$ repo init -u git://android.git.kernel.org/platform/manifest.git
---

i've this message of error:
---
bash: repo: command not found
----

Help me , please !

thevery
24th October 2008, 06:15 PM
i' ve problem to configure and install repo ...

extract to the guide:

Installing Repo
To install, initialize, and configure Repo, follow these steps:

1. Download the repo script and make sure it is executable:
$ curl http://android.git.kernel.org/repo >~/bin/repo
$ chmod a+x ~/bin/repo
2. Create an empty directory to hold your working files:
$ mkdir mydroid
$ cd mydroid
3. Run repo init to bring down the latest version of Repo with all its most recent bug fixes. You must specify a URL for the manifest:
$ repo init -u git://android.git.kernel.org/platform/manifest.git
4. When prompted, configure Repo with your real name and email address. If you plan to submit code, use an email address that is associated with a Google account.

A successful initialization will end with a message such as
repo initialized in /mydroid
---

I've problem at step 3 .
---
3. Run repo init to bring down the latest version of Repo with all its most recent bug fixes. You must specify a URL for the manifest:
$ repo init -u git://android.git.kernel.org/platform/manifest.git
---

i've this message of error:
---
bash: repo: command not found
----

Help me , please !

add ~/bin to your path or use '~/repo' instead of 'repo', i.e.
~/repo init -u git://android.git.kernel.org/platform/manifest.git

yuco91
24th October 2008, 06:44 PM
thx , but i've however this error:

----
yuri@yuri-laptop:~/mydroid$ ~/bin/repo init -u git://android.git.kernel.org/platform/manifest.git
Traceback (most recent call last):
File "/home/yuri/bin/repo", line 91, in ?
import readline
ImportError: No module named readline
----

Sorry, but is the first time that i've this kind of problems. (you can answer me also whit PM) . THX

raymondw
24th October 2008, 06:53 PM
So, while it works with the emulator, it doesn't seem to work at all on a Touch Diamond. This probably due to the difference between the ARM defaults and the MSM7201A (ARMv6/ARM1136EJ-S ). I'll try and build a kernel for that later today.

It workes oke in the emulator as the config file is FOR the emulator or a device looking like it.
If you take the .config file and load it into a xconfig it is possible to add MSM7xxx code.

I hope i've got some time tonight to try and test.
(tx for the cross-compile instruction)

bloatboy
24th October 2008, 07:32 PM
yuco91
Junior Member

thx , but i've however this error:

----
yuri@yuri-laptop:~/mydroid$ ~/bin/repo init -u git://android.git.kernel.org/platform/manifest.git
Traceback (most recent call last):
File "/home/yuri/bin/repo", line 91, in ?
import readline
ImportError: No module named readline
----

It's a python module.
/usr/lib/python2.5/lib-dynload/readline.so
I'm not sure what provides this in ubuntu but try re-getting python.

As far as changing the architecture, I switched the kernel from goldfish to MSM7X00A and got some errors. That's progress as far as I'm concerned! At least, something to work on.

yuco91
24th October 2008, 07:36 PM
the readline.so file is in the folder . I've however re-get python but i've the same error.

sir0x
24th October 2008, 08:23 PM
Guys ... the kernel of http://android.git.kernel.org doesnt run on Diamond ... the kernel, wich you see booting on the picture in the wiki, is hackt of some people to run on dimaond, but the patches rather the sources aren't public now. the kernel of android.git.kernel.org is just the BASE of the kernel which you see at the pictures.

maybe we can create an separate git for the development on the diamond/raphael kernel ?

cr2
24th October 2008, 08:40 PM
#Raphael
#set MTYPE 1910

The Raphael one does not work, I'm able to boot with the Halibut one.


There is no diamond/raphael kernel yet. wiki pictures are made with the
hacked halibut/g1 code running on raphael, but it's the same on diamond.

skiwithpete
24th October 2008, 09:36 PM
There is no diamond/raphael kernel yet. wiki pictures are made with the
hacked halibut/g1 code running on raphael, but it's the same on diamond.

Is this kernel a simple thing to build/modify or are we still some time away from getting a working kernel?

bloatboy
24th October 2008, 11:11 PM
Building a kernel doesn't take that much time or effort once your foundations are in place (compiler, build environment, toolchains, etc).
Modifying a kernel, depending on how radically it needs work, can be fast or it can take a long, long time.

bloatboy
24th October 2008, 11:43 PM
Changed the architecture from goldfish to MSM7X00A, disabled all the goldfish virtual stuff, and added a couple of generic devices.
http://rapidshare.com/files/157233291/zImage.20081024.1434.html

Good luck.

thevery
25th October 2008, 12:09 AM
Changed the architecture from goldfish to MSM7X00A, disabled all the goldfish virtual stuff, and added a couple of generic devices.
http://rapidshare.com/files/157233291/zImage.20081024.1434.html

Good luck.

sorry, no luck in your investigations - same problem

cr2
25th October 2008, 01:22 AM
Is this kernel a simple thing to build/modify or are we still some time away from getting a working kernel?

It's a simple thing, because it's a hack. A lot of g1 setup is completely different
and needs to be replaced. Yes, this kernel boots, but it needs a more solid
foundation.

sorrowt
25th October 2008, 09:51 AM
guys, to follow up, if i understand correctly the Haret boots the whole way thru, and jumps to the Linux kernel, which hangs, am i correct? which means again no further changes to Haret are needed?

qetuR
25th October 2008, 11:32 AM
NetRipper and druider (forgot your name) how is it going? Any new progress?

tozneno
25th October 2008, 05:25 PM
just for information google plan to product a android version who can use virtual keyboard for the begining of 2009.
http://www.mobinaute.com/170672-google-android-gerer-smartphones-clavier-2009.html

i use the google trad for you because the new is in french:

The mobile operating system Google Android, is now officially launched through a first terminal integrating the United States, G1 T-Mobile. But I must admit it has some rather strange software limitations, including its seizure.

Indeed, Google and HTC - the origin of the smartphone - have apparently worked hand in hand for many years to develop a first stable version of Android ... specifically adapted to mobile G1 T-Mobile with an integrated QWERTY keyboard. Because the only way to enter text on the screen is to deploy a sliding keyboard smartphone, no mobile virtual keyboard is available, whether in landscape or portrait mode.

And to overcome this limitation system running on a terminal form factors, Google now indicates that during the first quarter of 2009 as new input methods not based on a physical keyboard will be offered. In this case, in addition to a virtual keypad, a system of automatic correction of words or engine completion of the texts will be proposed. These input methods will also be available to developers on the planet seeking to tap into programs available from the Android Market.

By the end of the year, Google finally qu'Android states will be able to manage an operating system fully translated into French, multiple access points following its connections (multimedia, Internet, mail) and services SIM offered by mobile operators.

druidu
25th October 2008, 05:37 PM
It's druidu (actually, it used to be just druid but it's already taken almost everywhere) :D

Well, the linux kernel boots pretty much all the way through, as you can see from NetRipper's photos (http://wiki.xda-developers.com/index.php?pagename=RaphaelLinux), "Freeing init memory: 108K" means that the kernel is alive and kicking, just that a lot of the drivers are not working properly or not working at all. Framebuffer is functional although most likely the driver couldn't power up the lcd if we were not "hijacking" the device from windows. I suspect most of the drivers don't work because of the smd code (shared memory communication interface).

I can't work full time on this because I have work to take care of, but I am eager to get Android on my Diamond.

On-screen keyboard and stuff like that will be a breeze. Problem is with lack of documentation for all the hardware inside. Once we're done with the drivers, everything else is open source and will be much easier.

computerguru
25th October 2008, 07:48 PM
is it ready yet? :-p hahaha...had to say it.

hey...if anyone needs help with debugging the kernel. i plan on loading the dev tools this weekend, and i bought my touch diamond on thursday (in fact, i'm using it to post this reply right now...lol)

i havent done much kernel work for a few years...but will help out with whatever coding or testing you need done :-)

NikPraskaton
25th October 2008, 10:58 PM
Thumbs Up for everyone trying to get this runnin!! Cant wait.

fumanchu182
26th October 2008, 04:41 AM
It's druidu (actually, it used to be just druid but it's already taken almost everywhere) :D

Well, the linux kernel boots pretty much all the way through, as you can see from NetRipper's photos (http://wiki.xda-developers.com/index.php?pagename=RaphaelLinux), "Freeing init memory: 108K" means that the kernel is alive and kicking, just that a lot of the drivers are not working properly or not working at all. Framebuffer is functional although most likely the driver couldn't power up the lcd if we were not "hijacking" the device from windows. I suspect most of the drivers don't work because of the smd code (shared memory communication interface).

I can't work full time on this because I have work to take care of, but I am eager to get Android on my Diamond.

On-screen keyboard and stuff like that will be a breeze. Problem is with lack of documentation for all the hardware inside. Once we're done with the drivers, everything else is open source and will be much easier.

Druidi I offered my help before with the Kernel before, if you want you can catch me on Freenode usually and we can discuss some of the drivers that need to change.

dta1974
26th October 2008, 07:50 AM
Hi guys

I got my G1 3 days ago and I love it so far,the browser is faster than the version of opera that the Diamond has.The touchscreen is so smooth,it has nothing to do with the Diamond.
The system itself runs really well,it's not as sluggish as WM,still needs more software but little by little is being released.
After year with WM I have to say that Android rocks,so it would be a great idea for your Diamonds.

See ya.

Gluck
26th October 2008, 10:13 AM
druidu
I have the Touch Pro.
And your zImage(with Tux) ends with different messages then on wiki images.

After "Freeing init memory 108K"

next message repeats 9 times:
{
mmc0: Command timeout (c3c4fed4 c3cff0c 0000 0000 00000000)
}

after each aprox. ~120 sec:
{
INFO:task rpcrouter:13 blocked for more than 120 seconds"
"echo 0 > /proc/sys/kernel/hung_tusk_timeout_secs" disables this message
... skipped ...
}


Can help with test on Touch Pro if you need.

liamhere
26th October 2008, 11:32 AM
Hi guys

I got my G1 3 days ago and I love it so far,the browser is faster than the version of opera that the Diamond has.The touchscreen is so smooth,it has nothing to do with the Diamond.
The system itself runs really well,it's not as sluggish as WM,still needs more software but little by little is being released.
After year with WM I have to say that Android rocks,so it would be a great idea for your Diamonds.

See ya.

can't you dunp the rom?

mp.goldfinger
26th October 2008, 01:49 PM
http://www.spinics.net/lists/arm-kernel/msg47464.html


I think this might be helpfull I havnt put my time on android but will try things when I have time

computerguru
26th October 2008, 05:11 PM
I also bought a G1...had it shipped overnight, but it was DOA. The idiots at T-Mobile left it on in the box, and I think they jammed the SIM card in too hard because the pins were causing too much resistance when pushing it in...that it would put a huge scratch on the card.

Plus...it took me an hour to get through their crappy automated telephone system to get to the person I needed to talk to about returning it...and they wanted to temporarily charge me another $179 while the phones were cross-shipped! They wouldn't let me just send them the phone, wait for them to receive it, then ship me the new phone. So, I told them where they could put their G1 (somewhere where the sun don't shine...lol), and I got my touch diamond through Sprint. It makes more sense for me to have the diamond anyways...since I'm a Windows Mobile developer.

So...anyways, if you need any help...you got an eager touch diamond/linux/java geek right here with too much time on his hands...lol.

los1223
27th October 2008, 02:05 AM
Hi guys

I got my G1 3 days ago and I love it so far,the browser is faster than the version of opera that the Diamond has.The touchscreen is so smooth,it has nothing to do with the Diamond.
The system itself runs really well,it's not as sluggish as WM,still needs more software but little by little is being released.
After year with WM I have to say that Android rocks,so it would be a great idea for your Diamonds.

See ya.

Show off! =P

I'm anxious to see this come to life as well. I had a semi-functional version of Android on my Touch, so I got to spend some time with it. From what I got to see it looked petty cool... =) If there's anything I can do to help this along let me know!

druidu
27th October 2008, 10:28 AM
Here it is, my latest creation (http://octav.oricum.ro/android/Diamond_Linux.exe) [us at your own risk, but you should be ok :)].

Made a touchscreen driver and a virtual keyboard driver that uses the touchscreen driver. The drivers are a big hack right now: touchscreen IRQ won't fire on Linux, although it shows up in Haret, so the driver has to poll the touchscreen 20 times a second and it writes directly to FB memory so the msm_fb had to be slightly modified to update whole screen every time.

Above link is a linload version of Haret that should work on Diamond (and on Raphael too, but didn't test it). It will start with an early console using the console driver I wrote and will switch to the framebuffer device with tux on it once it is initialized.

Using the virtual keyboard:

1. Don't touch the screen while booting (ignore the errors about usb ethernet)
2. After you entered the shell, tap the screen once (you will get a message saying you entered calibration mode)
3. Tap the red pixel in the upper-left corner of the screen (a message will confirm your selection)
4. Tap the red pixel in the lower-right corner of the screen (a message will confirm your selection)
5. You can draw yellow dots on the screen by tapping and dragging
6. Type by tapping the keys;
Shift/Alt/Ctrl/Caps/SysRq are sticky keys, they work in toggle mode;
Left Shift/Alt/Ctrl reset automatically after tapping a normal key;
Activating Shift shows the alternate chars on each key;
Alt+Sys+KEY is the magic SysRq, see Alt+Sys+h for more info.
Shift+PgU/PgD work for scrolling the framebuffer console (careful that you won't see the keyboard anymore, but the keys are still there and if you click them it will reset the scroll and go back to the bottom, showing the keyboard again).

It's not the most friendly way of input text, but it's still better than writing binary codes using the gpio keys that work by default...

The initrd is NetRipper's build, it has a busybox with lots of stuff in it, and also mounts /proc and /proc/bus/usb filesystems (cat /init to see what it does).

I did want to make a nice screenshot, but I don't have a camera lying around that would produce a reasonably good macro photo, so I'll leave that to the readers :D

TripleQ
27th October 2008, 10:45 AM
Above link is a linload version of Haret that should work on Diamond (and on Raphael too, but didn't test it).

In my Rapheal it says booting linux..after that i see some linux lines scrolling..and within a second I see a white screen...tried it a few times...

druidu
27th October 2008, 10:56 AM
In my Rapheal it says booting linux..after that i see some linux lines scrolling..and within a second I see a white screen...tried it a few times...

That's when the msm_fb should come in, but I guess it doesn't. As I said, didn't test it in Raphael.

Maybe try this one (http://octav.oricum.ro/android/Diamond_Linux_nobootcon.exe); it's compiled without the early console... might work, but anyway, if it won't you will only see Haret's message "booting linux" and nothing else.

NetRipper
27th October 2008, 10:58 AM
Here it is, my latest creation [us at your own risk, but you should be ok ].
Nice job!

Unluckily on my Raphael it also gives a white screen, and doesn't respond after that.

Pretty neat you got it working for your Diamond though, it's a step in the right direction. :)

n.mowberry
27th October 2008, 11:03 AM
:o

How exciting!! I can't wait until our Diamond is fully featured in linux!

TripleQ
27th October 2008, 11:07 AM
That's when the msm_fb should come in, but I guess it doesn't. As I said, didn't test it in Raphael.

Maybe try this one (http://octav.oricum.ro/android/Diamond_Linux_nobootcon.exe); it's compiled without the early console... might work, but anyway, if it won't you will only see Haret's message "booting linux" and nothing else.


hmm..that one gives my after "booting linux" directly a white screen...no linux after lines like that other one... But thanks anyway, I understand you dont have a raphael too test it :)

qetuR
27th October 2008, 11:10 AM
This makes me soooo excited! :)

druidu
27th October 2008, 11:15 AM
Maybe someone with Diamond can test it, it should work on that. Did I mention you can fingerpaint? :)

Pixel du Rezo
27th October 2008, 11:24 AM
I just try it on my diamond, and it works :
after a lot of errors "gpio_keypad_scan_keys: unmapped key, 4-5 (31-37) changed to 1", I successfully calibrate the screen and enter the console

gebruikershaes
27th October 2008, 11:26 AM
So how does that work? Do I just install the exe or what? And will it affect my WM os? If not I could test it on my Diamond.

rl2000
27th October 2008, 11:26 AM
Hi

I just ran it on my Diamond, it works :)

brainbubble
27th October 2008, 11:26 AM
Maybe someone with Diamond can test it, it should work on that. Did I mention you can fingerpaint? :)
@druidu: I tested on my diamond, works without problems so far....

jeforce
27th October 2008, 11:29 AM
Work without problems on my Diamond , nice works.

Pixel du Rezo
27th October 2008, 11:30 AM
So how does that work? Do I just install the exe or what? And will it affect my WM os? If not I could test it on my Diamond.

I just copy the exe to my internal storage, and run it.
My WM OS is already running good after resetting the device...

Addicteddddd
27th October 2008, 11:34 AM
gonna try it now as im really interested :D

skiwithpete
27th October 2008, 11:38 AM
I'm at work, and can't play until tonight.

Please someone post a pic and a youtube vid.

Can't wait to see! Congrats!

druidu
27th October 2008, 11:42 AM
So how does that work? Do I just install the exe or what? And will it affect my WM os? If not I could test it on my Diamond.

It will just hijack windows and start Linux over it, everything goes back to normal once you reset. A Raphael version is coming very soon (NetRipper compiled one using my patches and his Raphael config).

raymondw
27th October 2008, 11:44 AM
I tried the Diamond_Linux.exe and it "blanks" at "console handover: boot ......(something)"

sibbor
27th October 2008, 12:03 PM
Wow, amazing work druid!! Nice to finally see some great progress. Have yet to test it on my Diamond though... USB cable is at home and I'm at work. Typical :X!

druidu
27th October 2008, 12:06 PM
Wow, amazing work druid!! Nice to finally see some great progress. Have yet to test it on my Diamond though... USB cable is at home and I'm at work. Typical :X!

*Updated*: http://wiki.xda-developers.com/index.php?pagename=RaphaelLinux

You don't need an usb cable, just download the file on your device and run it :)

PS: check the above page for a Raphael version and pics.

Thom4s
27th October 2008, 12:08 PM
if linux works would that mean that we coul install a very light window manager and install like any ligt desktop applicatin? the diamond has a 500mhz cpu with 128mb ram, i remember running fluxbox and firefox running on much wors hardware! or is this haedware not comparable? with 640.480 screen it would work great (if you have good glasses)

sibbor
27th October 2008, 12:09 PM
*Updated*: http://wiki.xda-developers.com/index.php?pagename=RaphaelLinux

You don't need an usb cable, just download the file on your device and run it :)We've no WiFi spot at work, so it's a bit difficult I must say. Just reminded myself that I've got BT on my laptop, so I'll transfer the file that way.

Hold on for test report.

EDIT: here's the test report:

It works out well on my Diamond too. Just like Pixel Du Ruzo and chemical1978 I get spammed with "gpio_keypad_scan_keys: unmapped key, 4-5 (31-37) changed to 1", but afterwards I can successfully calibrate the screen, and I can enter the console, typing commands with the onscreen keyboard. Too bad I don't have a camera working, but I draw a heart with "Tux" in it and then entered the "clear" command, and the console cleared (incl. my drawing).

NEAT!

quark1980
27th October 2008, 12:11 PM
on my diamond i boots nicely into linux...

only sidenote is that when i insert my stylus at the time of booting the stylussensor is picked up as some key..


next step is android ;)

chemical1979
27th October 2008, 12:13 PM
I just try it on my diamond, and it works :
after a lot of errors "gpio_keypad_scan_keys: unmapped key, 4-5 (31-37) changed to 1", I successfully calibrate the screen and enter the console

I second that. It boots and enters a telnet shell! First step, well done :-)
I'm excited!!

The gpio_keypad_scan_keys print loop occurs when you insert the stick back into the case (theres a magnetic switch in the diamond that registers whether the stick is present or not).

Hooray :-)

TripleQ
27th October 2008, 12:32 PM
I confirm that the Raphaeal version which is on the Wiki is also working now :)

Looking great!

Was only looking for a minute too the red dots :) couldnt find it..haha

mfauveau
27th October 2008, 01:24 PM
Working fine on my Diamond too. Way to go guys ! I'm looking forward to see Android running on it.
Keep up the good & amazing work and don't hesitate to ask for donations. I'd be more than happy to help you out.
Let's get rid of Windows Mobile !

Riel
27th October 2008, 01:32 PM
Great!
Any chance of loading 'any' GUI?
Like any of these universal-versions?

http://www.linuxtogo.org/~htcpxa/htcuniversal/index.html

NetRipper
27th October 2008, 01:40 PM
Great!
Any chance of loading 'any' GUI?
Like any of these universal-versions?

http://www.linuxtogo.org/~htcpxa/htcuniversal/index.html
We're not that far yet. Most important issue for that is that we can't use SD card yet and we cant make the initrd too large. Though, technically we might get a GUI already, as framebuffer is working.

qetuR
27th October 2008, 01:40 PM
if linux works would that mean that we coul install a very light window manager and install like any ligt desktop applicatin? the diamond has a 500mhz cpu with 128mb ram, i remember running fluxbox and firefox running on much wors hardware! or is this haedware not comparable? with 640.480 screen it would work great (if you have good glasses)

Well, if you think that you could run a windowmanager like xfce or something like that you're wrong. Since xfce and other windowmanagers are compiled for a totaly different architecture.

keerttttt
27th October 2008, 02:19 PM
Very nice work, good to see that there's still much progress!
Works fine here on my diamond.

raymondw
27th October 2008, 02:31 PM
Very Nice :D
Tried it during my lunch break and workes oké on my Raphael.
Had to look twice at the red "dots" ;)

ermin15
27th October 2008, 02:34 PM
Just tried it on my 02 xda touch diamon. Should there be any difference to a htc touch diamon?

Either way, it boots. Tux and the virtual keyboard besides him appears, but the whole time the following message is printed on the screen:

gpio_keypad_scan_keys: unmapped key, 4-5 (31-37) changed to 1

Pixel du Rezo
27th October 2008, 02:38 PM
Either way, it boots. Tux and the virtual keyboard besides him appears, but the whole time the following message is printed on the screen:

gpio_keypad_scan_keys: unmapped key, 4-5 (31-37) changed to 1

As it was said in a previous message, this error appears when the stylus is in the phone.

jamesd256
27th October 2008, 02:39 PM
Just a boring post from me to say, thanks to all. Very exciting day.

Boots and calibrates fine on my Raphael. Reminds me of the day I first booted slackware back in the mid nineties.

Keep it up guys, you are awesome.

willyy1991
27th October 2008, 03:00 PM
Great, a breakthrough!
Keep up the good work :)

cr2
27th October 2008, 03:27 PM
Well, if you think that you could run a windowmanager like xfce or something like that you're wrong. Since xfce and other windowmanagers are compiled for a totaly different architecture.
What is wrong with the current angstrom feed ?

Howell
27th October 2008, 03:45 PM
Confirmed to work on my Diamond (French) too ;)

Great job :D

Keep up the good work :D

ftdm.mav
27th October 2008, 03:58 PM
Confirmed to work on my Diamond (Portuguese) :D

Very nice job :D

hillsdale
27th October 2008, 04:09 PM
Tried the raph_20081027 version on my new Sprint Touch Pro. No go - I get "HaRET: Booting Linux ...", and then the yellow line gets about 95% of the way across, and then hangs. Once or twice its made it 99% of the way across.

Tried a number of times, reset my device, made sure all apps were stopped, etc. Happy to keep testing!

Bandit13
27th October 2008, 04:14 PM
Confirmed to work on my Diamond (French) too ;)

Great job :D

Keep up the good work :D

Its just an exe ? Is it an install or an 'app' ?

Sebastien

NetRipper
27th October 2008, 04:15 PM
Tried the raph_20081027 version on my new Sprint Touch Pro. No go - I get "HaRET: Booting Linux ...", and then the yellow line gets about 95% of the way across, and then hangs. Once or twice its made it 99% of the way across.

Tried a number of times, reset my device, made sure all apps were stopped, etc. Happy to keep testing!
Try disabling touchflo 3d (start -> settings -> today -> items -> uncheck touchflo3d -> ok) then softreset and try again. It'll make more memory available to haret. Perhaps that fixes it.

I haven't had to do that yet, but I'm running a cooked (= more memory-optimized) rom.

NetRipper
27th October 2008, 04:16 PM
Its just an exe ? Is it an install or an 'app' ?

Sebastien
Look on the wiki page: http://wiki.xda-developers.com/index.php?pagename=RaphaelLinux

There are links for both a Diamond and Raphael executable. It's not a cab you install, you just copy the .exe to your device and run it.

Pixel du Rezo
27th October 2008, 04:19 PM
Its just an exe ? Is it an install or an 'app' ?

Sebastien
It's an app. You just have to run it.

Edit: not fast enought ;)

Bandit13
27th October 2008, 04:20 PM
Look on the wiki page: http://wiki.xda-developers.com/index.php?pagename=RaphaelLinux

There are links for both a Diamond and Raphael executable. It's not a cab you install, you just copy the .exe to your device and run it.

ok

Just have an error : "gpio_keypadscan_keys : unmapped key, 4-5 (31-37) change to 1"

aximilation
27th October 2008, 04:23 PM
ok

Just have an error : "gpio_keypadscan_keys : unmapped key, 4-5 (31-37) change to 1"


I second that. It boots and enters a telnet shell! First step, well done :-)
I'm excited!!

The gpio_keypad_scan_keys print loop occurs when you insert the stick back into the case (theres a magnetic switch in the diamond that registers whether the stick is present or not).

Hooray :-)


Just within the last two pages...do a little reading for yourself next time please...I got that just by scanning over them once.

Bandit13
27th October 2008, 04:27 PM
Just within the last two pages...do a little reading for yourself next time please...I got that just by scanning over them once.

Yeah ! It works !

I'm so excited !

Good Job !!!

Sebastien

hillsdale
27th October 2008, 04:36 PM
Try disabling touchflo 3d (start -> settings -> today -> items -> uncheck touchflo3d -> ok) then softreset and try again. It'll make more memory available to haret. Perhaps that fixes it.

I haven't had to do that yet, but I'm running a cooked (= more memory-optimized) rom.

High hopes, but same problem - HaRET hangs most of the way across. Brand new phone, fwiw - stock Sprint rom, no registry changes, etc. Bootup screen claims: P DCBAPZM-615010, R 1.03.15F, D1.03 if that means anything useful. :)

NetRipper
27th October 2008, 05:07 PM
High hopes, but same problem - HaRET hangs most of the way across. Brand new phone, fwiw - stock Sprint rom, no registry changes, etc. Bootup screen claims: P DCBAPZM-615010, R 1.03.15F, D1.03 if that means anything useful. :)
Sounds like a HaRET problem. Can you make an empty file named "earlyharetlog.txt" in the same directory as the executable? After running the .exe you should have a haretlog.txt. Please share it.

mclein
27th October 2008, 05:18 PM
Now it can put the Android in the diamond¿?¿?¿?¿? :confused::eek:?

Riel
27th October 2008, 05:20 PM
Yes, get a ball of Andriod, open Diamond and put it in there, can always be done.

hillsdale
27th October 2008, 05:32 PM
Sounds like a HaRET problem. Can you make an empty file named "earlyharetlog.txt" in the same directory as the executable? After running the .exe you should have a haretlog.txt. Please share it.

Log attached. This is from one of the runs where the status bar goes all the way over. It looks like it isn't matching my "RAPH800" to the Raphael phone type, maybe?

NetRipper
27th October 2008, 05:42 PM
Log attached. This is from one of the runs where the status bar goes all the way over. It looks like it isn't matching my "RAPH800" to the Raphael phone type, maybe?
Indeed, you need a patched haret for this. RAPH800 is a new identifier.

NetRipper
27th October 2008, 05:46 PM
Indeed, you need a patched haret for this. RAPH800 is a new identifier.
Try this version please:
http://www.netripper.nl/raphael/raph800_20081027_touchscreen_virtkeyboard_shell.ex e

I quickly patched haret, but gtg now. Post results here pls :)

hillsdale
27th October 2008, 06:00 PM
Try this version please:
http://www.netripper.nl/raphael/raph800_20081027_touchscreen_virtkeyboard_shell.ex e

I quickly patched haret, but gtg now. Post results here pls :)

Still doesn't work, but the log looks somewhat better (attached). Thanks for the awesome turnaround!

Demolt
27th October 2008, 06:28 PM
Hi, I'm new here and also a newb in linux/mobile software.

I did how ever got your program to work on the Raphael, even the screentouch feature works with the on screen keyboard.

I get the console, I don't know what commands I can use; let me know if there is anything you want to know.

My camera doesn't get a clear shot of the screen, but if you want I can try and make a picture.

Btw, great work for those who are working on this! thumbs up:)

bloatboy
27th October 2008, 06:30 PM
druidu, if you get a chance, could you please post the .config for the kernel? Thanks!

godzirra
27th October 2008, 06:33 PM
Still doesn't work, but the log looks somewhat better (attached). Thanks for the awesome turnaround!

I've also tried the new one, and it just freezes at "HaRET: Booting Linux..." I think I may have missed some instructions though. What else do I need besides the raphael launcher?

Sorry if my questions are silly... I'm not new to linux, but I am new to linux on a mobile device. ;) Very eager to get my diamond running android, and I'd be happy to help bugstomp or troubleshot or help any other way I can. Thanks!

--godzirra

doc31
27th October 2008, 06:49 PM
I tried the Diamond_Linux.exe and it "blanks" at "console handover: boot ......(something)"

Mine its hangs that the same point as his... any ideas anyone.
I'm running basically a stock sprint rom.

console handover: boot [htc_fb0]-> real [tty0]

godzirra
27th October 2008, 07:04 PM
Mine its hangs that the same point as his... any ideas anyone.
I'm running basically a stock sprint rom.

console handover: boot [htc_fb0]-> real [tty0]


I am using Diamond_Linux.exe and mine does the exact same thing.

I'm running a completely stock sprint rom.

computerguru
27th October 2008, 07:39 PM
I got the same error too on my Sprint-based Touch Diamond:

console handover: boot [htc_fb0] -> real [tty0]

komteks
27th October 2008, 07:45 PM
As you can see in attached file, my log file is very similar to hillsdale's except for a few lines near the end.

I have a Touch Pro from Sprint and get the same message of HaRET booting Linux but then it locks up.

Toug
27th October 2008, 08:05 PM
here is mine, and I can't enter any command, and I got a lot "gpioxxxx", but now I can't get them, It seem to work, but no key can be typed with the keypad. But using "home" key, the character "5" is typed in the shell.

dornellas
27th October 2008, 08:08 PM
already got linux running on HTC Diamond, it's possible now to run android? If yes, how?

thanks

computerguru
27th October 2008, 08:16 PM
already got linux running on HTC Diamond, it's possible now to run android? If yes, how?

thanks

Maybe if you READ the last page of posts ;) ...you'd see that the internal storage is still not accessible...and they currently have to keep the initrd low in size...so Android is a no-go until internal storage is accessible.

Fraction
27th October 2008, 08:16 PM
all stops at this code

[ 25.510823] drivers/rtc/hctosys.c: unable to open rtc device (rtc0)


hm...:confused:



PS: this is on my Touch Pro, using "raph_20081027_touchscreen_virtkeyboard_shell"....
@ ROMeOS v.1.10


I am doing a rom update atm.

Stillmatic
27th October 2008, 08:19 PM
this is truly an amazing feet. Mad props to both NetRipper and druidu.

Android is just a reach away now. Now I can finally buy the htc touch pro and stop procrastinating now that there's hope that I can get a different os.

schlash
27th October 2008, 08:55 PM
very nice work there!

Also i was wondering if the actual sourcecode for this nice work is available somewhere, since it seems like the haret scripts and such is compiled into the executable that was released, which means its very hard to change anything :)

Fraction
27th October 2008, 09:45 PM
YES, i can confirm that i can boot it all the way to the virtual keyboard :D

because off the new ROMeOS v.1.21 ;D

NIce work :D

cr2
27th October 2008, 10:00 PM
As you can see in attached file, my log file is very similar to hillsdale's except for a few lines near the end.

I have a Touch Pro from Sprint and get the same message of HaRET booting Linux but then it locks up.

You have OEM='RAPH800', and your SDRAM is located in the second bank,
so some changes may be needed.

neuro159
27th October 2008, 10:15 PM
Works good on my Diamond. I even managed to calibrate screen and execute ls & ps from shell ^) until I inserted stylus and was overloaded by unmapped gpio... stuff ^)