yashsingh1/xdaforums huggingface dataset:
[Touch Cruise Android Development] biktor_gj:
you have a beautiful christmas tree :)

I was wondering... Polaris has a jog wheel and four directional keys, right? does the jogdial work?

PS: Those problems on the screen after suspend are common on all the devices...

EDIT: About the service manual, go, for example to the page 84, and look at the camera modules. What you need is the numbers that are written on the flex board, so you can know who manufactures the camera. The part numbers like 54h00266 are internal htc p/ns, there's not much information to take from there. You can also drop an email to the htc techies and hope for an answer though :) Another way to get information is the bootloader, but if you're not used to it it may be dangerous...
[Touch Cruise Android Development] kulen:
It doesn't work for me. But I didn't try any version newer than 01.03.2009.

but four directional keys work.
[Touch Cruise Android Development] imfloflo:
Directionnal key (up down right left middle button) work but the scroll wheel doesn't work.

How can find gpios of the camera? haret console?
[Touch Cruise Android Development] biktor_gj:
Ok, first public try at the osk :)

Grab this zImage: http://rapidshare.com/files/209049094/zImage

copy it to your storage card, and boot linux. If you press the d-pad center (or OK) key, it should bring a keyboard and switch the phone to landscape. Whenever you press a key it should vibrate and press the key, though sometimes it writes "Space" instead of the key (I think it's a calibration issue).

Note this is a dirty port from the vogue-ts, if it works, the keyboard will blink from one side of the screen, and behave strange sometimes :) It didn't seem to work to excogitation (the kbd didn't show but he could write on a translucent keyboard), but it does on the nike with polaris mtype, and I want to know how it behaves on different phones (maybe different screens get different results?)

Regards!
[Touch Cruise Android Development] bally3:
Hi biktor, does exactly as you said, a blue keyboard that works but blinks on the left side in and out.

Nice try and looks good too :)
[Touch Cruise Android Development] dubbeld00:
The current touchscreen driver of the polaris sometimes hits the 0,0 position (left, bottom). I don't know where the position of the spacebar is, but it can be this error... This is because the current driver isn't IRQ based.

I think you are able to port the TS driver... what you can do is take the kaiser touchscreen driver and set the MIN_X (and the other globals) to the polaris globals... (might do even more to get the keyboard working again).
[Touch Cruise Android Development] bally3:
hey dubbelld00! :)

No-one came back to me about the 1.5 sdk on the kaiser thread :confused:

Any ideas whether it can be used or not?
[Touch Cruise Android Development] dubbeld00:
I think you can't rip the Android image of it... (else someone had done this (pretty shure of that)). Also think this shouldn't be the focus... we are still developing a working zImage, if that's done (and I really hope biktor can do something for us (I still have a time shortage)) we can try different images...

You can try to rip the content of the SDK (but I think that's pretty hard to do) but if you are able to do that, I can try to make a system.img of it.
[Touch Cruise Android Development] dwaradzyn:
Please ask him how does he see the developement process. We all know that he is able to make complete kernel for Kaiser in short time. If he will commit his changes often enough than all we have to do is compile it with Polaris config and make minor adjustments to code. I'm sure he will port whole kernel before we can manage to solve SD issue...
[Touch Cruise Android Development] dwaradzyn:
root = partition with your rootfs

rootdelay= seconds before root partitions is beeing mounted

Those parameters does not help with SD issues. But there are others that could help. One of them is msm_sdcc.msmsdcc_fmax=32000000 and is related to sd timing. I did not test stability with different values. If someone is willing to test it - I strongy encourage you to backup your SD first.
[Touch Cruise Android Development] bally3:
Hey welcome back Dwaradzyne!

Theres been a load of questions been asked about how you got the sd card working - could you either explain what you did or upload the files for us to take a look at please?
[Touch Cruise Android Development] dwaradzyn:
Short answer - I did not success with SD issue. I was suprised that unpacking system.img and data.img was successful when I tried to boot Android 1.0. It was failing each time when I tested it earlier on unpacking.

I posted that kernel few pages ago (it is the one with full keyboard).
[Touch Cruise Android Development] dubbeld00:
You are absolutely right... I think it is better to wait untill it is working on the kaiser (which is really happening! DZO has a Kaiser, and will work on it after the holidays).

Like Dwaradzyn (can't you simplify the name ;)?) says, we only have to do minor adjustments since the Kaiser is almost the same (it only has a full hardware keyboard, and we... well... don't have it). Also the kaiser differs in keymapping (of the few hardware keys we have) and screen driver (there are 2 minor adjustments needed). As far as I know, that were the only patches we've made back then... (apart from excluding the whole hardware qwerty keyboard and compiled the software keyboard "mod" of DZO).

To see what DZO do to his device (Vogue) check this movie:

http://www.youtube.com/watch?v=6iKje_0lUYg

The camera is also working.

Btw, I'm very busy at the moment, try to follow the thread... but I currently do not have the time to fix or look at things... But next year will bring more spare time :) hope to fix it all before february :) so I can enjoy my phone for the rest of 2009!
[Touch Cruise Android Development] devslashnull:
Ok people,

I've added (if I've done things correctly) a patch file that I've generated from my local working branch. This is the android-msm-htc-2.6.25 branch from the android git, and the patch is based on the commit c092738e01ab845dc7406dc1b53589b1f9edebbc of that branch. I think that the patch should apply cleanly to that.

A possible issue may be the compression I used. The attached .zip file is actually a .gz file. I just renamed it, and you should use gunzip to recover the uncompressed patch.

I've been able to generate a working zImage from the resulting code:

<kernel dir>make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- htcpolaris_defconfig
<kernel dir>make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- zImage

Hope this helps. The onscreen keyboard is not fully functional. You can enter all normal letters and numbers, but the 'shift' case does not work (yet). I've tried it in combination with the 'angstrom' initrd. That leaves you with a login shell (username : root, no password).
[Touch Cruise Android Development] dwaradzyn:
Please describe what changes you have made. Did you merge all vogue/kaiser/polaris code into google repository?
[Touch Cruise Android Development] dwaradzyn:
In attachment you can find compiled kernel with changes suggested today on #htc-linux by dzo. Please try to test SD stability with this kernel. It will be hard to do, because of keyboard instantly disappearing after beeing enabled and after every screen update (it will blink). If you have solid result - this kernel does still have SD issues or not please post here.

for the record, this zimage has max_blk_size= 128 and max_blk_count = 31
[Touch Cruise Android Development] maximos86:
i tested this and after the usual boot stuff all i got was a black screen... instead of seeing the desktop i mean... the weird thing was that the keyboard would popup when i pressed the button... blinking but i could still see it at times...
[Touch Cruise Android Development] rogro82:
Tried the zimage but it halts on a trace... seams to go a bit further though.. anyone knows how to get the complete boot output?

I finally had some time yesterday to set up a ubuntu development environment and created a zimage... so i can finally start some work on this in the weekend..

@dwaradzyn which git/diffs etc did you use? So much versions etc in this thread that its almost impossible to keep track of what everyone is using.
[Touch Cruise Android Development] bally3:
Can we all get together from 8pm onwards (UK time) on IRC on #htc-linux channel tonight please if we want to have a stab at this?

I'm going to post up on the first post of this thread, the files that we are using that Dwaradzyne has posted and then keep updating them as we go along. If we can all stick to using just them to get the kernel up and working then we should be in a better position to make further progress.

Current devs on the kernel are: rolk and Dwaradzyne - and I'd really like to get you on board with them too Rogro82 :)

See you all tonight.
[Touch Cruise Android Development] bally3:
is a log file generated from the haret boot process? or can it be? this final zimage showed something different which ended with the trace error and a black screen but I wasnt able to capture it.
[Touch Cruise Android Development] dwaradzyn:
The working kernel from post #51 is from git.linuxtogo.org, branch htc-msm, commit 1082670ccae30e6592311cc9dee93ba978382a25. The only patches applied are those in post #51.
[Touch Cruise Android Development] bally3:
So we're back to working keyboard and no boot on 1.0 sdk - I'm at the terminal and demesg shows the timeouts but also the /sdcard/data.gz no file or directory error.
[Touch Cruise Android Development] bally3:
Just tried this angstrom-usb version from raphael and it seems much more stable.
[Touch Cruise Android Development] bally3:
For info only:

# This is startup file for HaRET, Linux bootloader for WinCE

# http://handhelds.org/wiki/HaRET

set kernel "zImage-2.6.21-hh20-r6-h5000.bin"

# Boot choices. Uncomment 'set' statements in exactly one section

## Choice 1 - Boot from SD/MMC card

# Have 2 partition on a card:

# 1st - FAT with HaRET executable, this file and zImage above

# 2nd - EXT2 with rootfs tarball extracted

set cmdline "root=/dev/mmcblk0p2 rootdelay=10 console=ttyS0,115200n8 console=tty0"

## Choice 2 - Boot from CF card, setup like above

#set cmdline "root=/dev/hda2 rootdelay=10 console=ttyS0,115200n8 console=tty0"

## Choice 3 - Boot rootfs image as initramfs (works only for smaller images)

# have a cpio.gz file below together with zImage, no EXT2 partition required

#set initrd "<image>.rootfs.cpio.gz"

#set cmdline "rdinit=/sbin/init console=ttyS0,115200n8 console=tty0"

## Choice 4 - Boot via NFS over USB networking (must be kernel-builtin)

# 192.168.x.x - Server address (the other side)

# 192.168.y.y - Handheld's address

#set cmdline "root=/dev/nfs nfsroot=192.168.x.x:<nfs_path> ip=192.168.y.y:192.168.x.x:192.168.x.x:255.255.255.0: pda:usb0 console=ttyS0,115200n8 console=tty0"

bootlinux
[Touch Cruise Android Development] rogro82:
Ok i created a zImage based on the linuxtogo git and added the full-keyboard dwaradzyn posted.

Then i copied all files from dzo's android-new.zip file and the zImage to the storage card root.

used this default.txt

set RAMSIZE 0x07800000

set MTYPE 1723

set KERNEL zImage

set initrd initrd.gz

set cmdline "ppp.username=mobile@jamamobile ppp.password=telecom msm_sdcc.msmsdcc_fmax=32000000 pm.sleep_mode=0"

set fbduringboot 0

boot

On booting the kernel it tries to extract the system.gz and then it resets half way... so i extracted the system.gz and data.gz by hand and named the files data.img and system.img

Now i restarted and now it mounts the ext3 filesystems,

then it shows an android error:

A N D R O I D [ 8.170000] binder: 370:370 unknown command 25356

then some more 370:370 errors

Then it initializes the modem / local loopback and then it throws:

init: untracked pid 398 exited

And then after a while it will reset....
[Touch Cruise Android Development] dwaradzyn:
That is how far you can get with old ltg kernel. We should focus on newer sources (see post #40 in this thread). There is a new android binder and it has some other problems too.
[Touch Cruise Android Development] bally3:
Dwaradzyne, can you post up what we need to be using and I'll update the first post with the info. - thanks.
[Touch Cruise Android Development] dwaradzyn:
As far as kernel developement is concerned everything needed to start is in post #40. Rolk and me have independently solved on screen keyboard issue with that kernel. I'm having trouble producing diffs. I will try to post them tomorrow.

I was struggling today with reliable test case for the SD issue. I tried to trigger it by doing some stress testing on SD card. I am suprised that simple operations like copying 4 files (32 MB each) simultaneously did not trigger the SD issue. I know that fast forwarding in mplayer triggers it (in about a 45 seconds), but i want a simpler test. What we need is a test that fails on current kernels and fails quick.

Also does anyone know why recent kernels reboot at SD issue but previous ones did gently display some messages before hanging?
[Touch Cruise Android Development] bally3:
For reference only:

Harald Welte's blog
[Touch Cruise Android Development] bally3:
More reference material:

http://forum.revskills.de/viewtopic.php?f=13&t=7

http://www.datasheetpro.com/101314_view_HCF40107BEY_datasheet.html

http://bbs.cnttr.com/thread-193908-1-1.html
[Touch Cruise Android Development] bally3:
On that last link there is a snapshot of a manuals content for msm7200.

Any chance that this might contain some of the info we're looking for?

http://translate.google.co.uk/trans...M7200+Software+Interface+Manual%22&hl=en&sa=G
[Touch Cruise Android Development] gforr:
it's very important! but how to download it ? i can't register....
[Touch Cruise Android Development] bally3:
We need someone who can read chinese, the site is difficult to navigate but it looks like you have to register to download it.
[Touch Cruise Android Development] excogitation:
edit: can get it to "show" now ... and I now have the split screen problem that I didn't have before because of pm.sleep_mode=0.
[Touch Cruise Android Development] bally3:
hi exco,

I'm using the 0301 files and this kernel with a stock default file (jst changed mtype to 1723 and my apn details.

I'm on 1.59.42.23 radio with a 3litv3 naked rom if that helps

(FEWidgets as my home screen with all my normal apps and this is the fastest rom at the moment I've used so far). :)
[Touch Cruise Android Development] m0ralsplit:
First of all, thank's for your work. I just have get Android to work on my Polaris, and it's beautiful. In spite of many troubles (wifi, usb, bluetooth et others things), it's really nice to have a stable ROM, fast and esthetic.

However, I have some troubles to get connected to my network SFR (not 3G, only to call and send sms). I have to do many things to make it work : enter 2 bad PIN2 (bad because I haven't PIN2) then try to search the network 2 times.

Moreover, I just want to understand why I can call without enter my PIN.

Thank u for all

m0ralsplit

PS: sorry for my english
[Touch Cruise Android Development] imfloflo:
@m0ralsplit have you got a screen which ask your PIN under android ? can you make a picture plz. For SFR settings you can go to the http://wiki.smartphonefrance.info/AllPages.aspx?Cat=Android
[Touch Cruise Android Development] m0ralsplit:
No, I haven't screen which asks me my PIN, it's why it's strange, I can call !
[Touch Cruise Android Development] imfloflo:
If you have entered your pin in WinMo and launch Haret after this is normal.

BTW no news of Rogro82 waiting cupcake or to busy playing with G1 :) (i can understand :p )?
[Touch Cruise Android Development] bally3:
Dismantled Polaris device

Have a look if you can see/blow up some of these images and read details off them anyone. Or if anyones brave enough to dismantle their device.. ;)
[Touch Cruise Android Development] bally3:
What we need is something like this, as for the Universal:

http://www.asukal.jp/Jasjar/PB081087.JPG

I've even found dismantled photos of the Dream..

http://xdaforums.com/showthread.php?p=3308619
[Touch Cruise Android Development] bally3:
Anyone got $2000 for the info we need? :rolleyes:

http://www.teardown.com/AllReports/product.aspx?reportid=1053#

OR $8 :

http://store.payloadz.com/str-asp-i...ir_Maintenance_Manual_eBooks_-end-detail.html
[Touch Cruise Android Development] dzo:
Please don't waste your time and/or money on this stuff, we know all the chips in these phones and most stuff is on the MSM7200 anyway. More useful

would be haretlogs for the different mddi panel init sequences and rpc calls to the gps.

here's my haret startup file for kaiser, polaris shouldn't be much different.

pwf kdmesg 0xe0000 0x20000
ibit gpios 203
ibit gpios 290
#ibit gpios 242
ibit irqs 15
#smem
addlist mmutrace 0xb5100000 0x100000
addlist mmutrace 0x4820c000 0x100000
#01ffc000
addlist mmutrace 0x4820a000 0x001000
#01f6a000
addlist mmutrace 0x4820b000 0x001000

#csr at 0xc0100400
#addlist mmutrace 0xb4f00400 0x20
#addlist mmutrace 0x48201400 0x20
#addlist mmutrace 0x4830e400 0x20
#addlist mmutrace 0x4f801400 0x20

#cpld at 0x98000000
#addlist mmutrace 0x48206000 0x20
#addlist mmutrace 0xbd000000 0x20

#adsp at 0xac000000
#addlist mmutrace 0xb0000000 0x00d00000
#addlist mmutrace 0x4e000000 0x00d00000

#clk_ctrl at 0xa8600000
addlist mmutrace 0x48207000 0x00100000
addlist mmutrace 0x4f80a000 0x400
#addlist mmutrace 0xb2e00000 0x400
#addlist mmutrace 0xb3a00000 0x400
#addlist mmutrace 0xb3b00000 0x400

#gpio-conf at 0xa9000000, 0xa9100000
addlist mmutrace 0x48202000 0x00001000
addlist mmutrace 0x48203000 0x00001000
addlist mmutrace 0x4f807000 0x00001000
addlist mmutrace 0xb2c00000 0x00100000
addlist mmutrace 0xb2d00000 0x00100000

#addlist irqs 0x94e00004
#addlist irqs 0x94e0000c
#addlist mmutrace 0xac200000 0x00100000
#joinlist TRACES GPIOS
#addlist mmutrace 0x4a223000 0x100000
#addlist mmutrace 0xb2a00000 0x00400000
set permissivemmutrace 1
listen

For mddi, the place to trace is physical address 0xaa600008 (logical address 0x4fa03000 on my kaiser) which gives you another physical address to trace. (0x0076xxxx on kaiser).

you need to use:

dump mmu 2 x

to find all the mappings to a physical address and

setlcd 4 and setlcd 1 in another haretconsole session to turn the display off/on.

Hope this helps.

I'm looking at USB, now should have something working in a week or two.
[Touch Cruise Android Development] dzo:
duplicate post
[Touch Cruise Android Development] mimedefang:
Would this be of any help?

http://www.4shared.com/file/73000439/3f2fd24a/HTC_Polaris_Service_Manual.html?cau2=403tNull
[Touch Cruise Android Development] imfloflo:
thanks dzo i'll try haretconsole to find some adress and gpios

if you can explain more on irc i'm in

edit:

when i type listen i have a popup : "failed to bind socket" on haret
[Touch Cruise Android Development] bally3:
Sorry dzo.. was kinda jesting there.. :p

But great heads up on finding the info.. !

Imfloflo, can you please post what you learn and we can all have a go.. thanks.
[Touch Cruise Android Development] imfloflo:
On haretconsole for the moment i only know how to

HaRET(1)# ibit gpios 203 //block this
HaRET(8)# watch gpios 20 /show it during 20 seconds

i previously do with exco, set on/off bluetooth & wifi to find new adresses during watching gpios but as i don't know what i do it's not very easy

edit:so i execute all the dzo's quote code and dump mmu one time, in another haret i set lcd4, dump mmu again, after set lcd1 and dump mmu last time hope this will good

here is my results :
[Touch Cruise Android Development] dzo:
to actually get the trace you do this:

addlist mmutrace 0x4f669000 0x1000

connect another haretconsole to haret

in the first session, type:

wi 20

in the second session, type:

setlcd 4

wait a few seconds then type:

setlcd 1

The 0x4f669000 will probably be different, that is what you have to find by tracing the mddi area and then finding the mapping to where the mddi list is stored.

You need to understand a bit about how memory management works to know what you're doing but it's not too difficult. The system has some physical memory - 32M from 0x0 to 0x02000000 and 128M from 0x10000000 to 0x18000000. Yes we do actually have 160M but some of it is used by the ARM9 OS.

The MMU has a table of mappings that map logical addresses to these physical addresses in 1M or 4K chunks. so e.g. 0x4820a000 maps to 0x1ffc000 and so does 0xb51fc000 (on kaiser anyway). to find out which virtual addresses map to a physical address, do:

dump mmu 2 physicaladdress

wi can only trace logical addresses so you need to find the logical address that wince uses to hold the mddi display list. The physical address is stored in 0xaa600008 so pdump 0xaa600008 4 should give you this (haven't tried this, i traced it). then dump mmu 2 thisaddress should give you the mappings to try in the mmutrace.

Hope this helps.
[Touch Cruise Android Development] imfloflo:
Ok so i try this commandes

HaRET(1)# addlist mmutrace 0x4f669000 0x1000
HaRET(3)# set permissivemmutrace 1
HaRET(4)# wi 20
....view detail in archive

during the wi 20 in first console, I launch in the seconde console the commande : setlcd 4 and setlcd1

then i try to find the virtual addresses map to the physical addresse with this

HaRET(5)# pdump 0xaa600008 4
aa600008 | 0076a0c0 | ..v.
HaRET(6)# dump mmu 2 0x0076a0c0
----- Virtual address map -----
cp15: r1=00a5387f r2=10640000 r3=00000001 r13=24000000

Descriptor flags legend:
C: Cacheable B: Bufferable D: Domain #
AP: Access Permissions (for up to 4 slices):
0: No Access 1: Supervisor mode read/write
2: User mode read 3: User mode read/write
4: Reserved 5: Supervisor mode read only
6: Supervisor/user read 7: Supervisor/user read
XN: No execute P: ECC enabled nG: Not-Global
S: Shared T: 'TEX' code

Virtual | Physical | Description | Flags
address | address | |
----------+----------+---------------+----------------------
5166a000 | 0076a000 | Extended (4K) | AP=3
88600000 | 00700000 | 1MB section | CB AP=1 T=7
a8600000 | 00700000 | 1MB section | AP=1 T=7