yashsingh1/xdaforums huggingface dataset:
[HD Mini Android Development] schlund:
Yeah i know that, tried this:

@ Jump to code with shared virtual/physical mapping
add pc, r4, #(1f - mmu_trampoline)

1: @ enable vibro
ldr r8, =0x92f0083c @ bank3_in (virtual) (v@92f0083c(p@a920083c))
ldr r9, =0x92f00808 @ bank3_out (virtual) (v@92f00808(p@a9200808))
bic r10, r8, #0x1000000 @ clear bit 24 if set
str r10, [r9, #0] @ store with cleared bit (bright reset)
orr r10, r8, #0x1000000 @ bit 24 for vibro
str r10, [r9, #0] @ store in out

@ Code is running at a vm address that is the same as its
@ physical address. Now disable the MMU.
mrc	p15, 0, r0, c1, c0, 0
bic	r0, r0, #5	@ MMU & Dcache off
bic	r0, r0, #0x1000 @ Icache off
mcr	p15, 0, r0, c1, c0, 0	@ disable the MMU & caches
CPWAIT r0

and Vibro works!

when i type "dump cp 15" into haretconsole i get lots of exceptions...

EXCEPTION on access to coprocessor 15 register 8

c00: 4117b365 | c08: ffffffff

c01: 00c5387d | c09: fffffff0

c02: 019e0010 | c10: 00000000

c03: 00000001 | c11: 00000003

EXCEPTION on access to coprocessor 15 register 4

EXCEPTION on access to coprocessor 15 register 12

c04: ffffffff | c12: ffffffff

c05: 00000005 | c13: 10000000

EXCEPTION on access to coprocessor 15 register 14

c06: 0614e860 | c14: ffffffff

EXCEPTION on access to coprocessor 15 register 7

c07: ffffffff | c15: 00000000
[HD Mini Android Development] ganesh81289:
android on windows mobile

how do we install android in this phone , teh android cupcake or eclairs, and will it work fully fucntional?
[HD Mini Android Development] NeilM:
I don't want to appear rude, but why don't you read the rest of this thread?

Android is not a 'program'; it is a whole new operating system using a Linux kernel. It is nothing like Windows Mobile that uses the Windows CE kernel.

Theoretically a developer experienced in Linux (and Android) could acheive this eventually, but it takes months of hard development work.

It also takes a development community with an interest in the specific device, and that simply isn't the case with the HD Mini. We don't even have HardSPL yet for installing other Windows Mobile ROMs

So, if you are deperate for Android, sell your HD Mini and buy an Android phone, or be prepared to wait another few months to see if development gets off the ground- but I'd suspect that isn't going to happen.
[HD Mini Android Development] gingerviking:
Read the other thread about android port to the hd mini.

Using the ariarom could help. HaRet also needs a modification to run on hd mini.
[HD Mini Android Development] gingerviking:
Yeah. It seems that we will never get android on hd mini.
[HD Mini Android Development] AsHkaN_XeoN:
Porting "Aria" on "HD mini" ??? [ Android ]

i was just thinking that "hd mini " will look's awesome with android & windows ! is there any way to port "htc aria " on " hd mini " ?? cuz both support same resulation !! :cool:
[HD Mini Android Development] wimdows:
besides, wasn't that one of the big advantages of the mini, that it isn't Android or a Windows7 phone, but good old stuffy WM6?

:)
[HD Mini Android Development] gingerviking:
Problem is you cant get that much out of the hd mini with winmo and the hvga res screen. There very few winmo apps for hvga. Thats why I want android running on it.
[HD Mini Android Development] NeilM:
Actually there are very few WinMo apps that don't work in HVGA but among those that don't are some quite useful ones :)

Most apps use vector graphics which scale to whichever resolution the device uses but some use bitmaps that need to be customised.
[HD Mini Android Development] gingerviking:
Thats nice:)

With the aria release in Taiwan, we may get it here in Europe and the rest of Asia as well.
[HD Mini Android Development] tsuishui:
I am interested is it possible to flash the Aria ROM into HD mini, I have both devices.
[HD Mini Android Development] smoozwoo:
sorry, but link not working (
[HD Mini Android Development] Cicar:
Android on MSM 7227

HD mini runs on Qualcomm MSM 7227. So a good start would be to find a phone with this processor for which android development has started and modify its kernel according to hd mini's hardware.

We would require service manual of hd mini for complete specs.

So lets start digging.
[HD Mini Android Development] jenas81:
I realy hope.....it will be soon....Android in HD Mini.
[HD Mini Android Development] barmalini:
"Legend" runs Android on the same processor:

http://www.htcphones.net/htc-2010-roadmap-shows-5-android-and-3-winmo-for-next-6-months/

The rest of the hardware is pretty similar too, including camera and screen resolution:

HTC Legend Specifications

Android OS

3.2-inch capacitive touch display with HVGA resolution

5 megapixel camera with autofocus

512 MB ROM, 256 MB RAM

Processor – Qualcomm MSM 7227 (600 MHz)

Compass, accelerometer

FM radio

Dimensions – 111x57x11, 4 mm

Release date – March 2010

HTC Photon Specifications

Windows Mobile 6.5

3.2-inch capacitive touch display with HVGA resolution

5 megapixel camera with autofocus

512 MB ROM, 256 MB RAM

Processor – Qualcomm MSM 7227 (600 MHz)

Accelerometer

FM radio

Dimensions – 104x57x10, 9 mm

Release date – April 2010
[HD Mini Android Development] tzacapaca:
Mini has 384 MB RAM ;)
[HD Mini Android Development] zalaros:
Legend too ;)

According to this http://www.gsmarena.com/htc_legend-3141.php
[HD Mini Android Development] harrys1997:
Android

hello my friends........I am very enteresting for android on mini....can someone start a donation to buy an hd mini and develope android on it like the thread at mega(touch2) forum!!!

please someone start a donation soon and everybody

give just 5$ to him!!!!!
[HD Mini Android Development] gingerviking:
Now that is something that could help! But we do need several devs.
[HD Mini Android Development] panzercool:
As the bounty increases the dev's will trickle in (i hope).
[HD Mini Android Development] SeGA-x:
and what about HTC Aria/Liberty? It seems to bi with Android
[HD Mini Android Development] -r0bin-:
oh ****! then we have an access right issue.

but it is strange though, because the CSP register is supposed to be in supervisor mode.

can you dump the CSP register too?

edit: i did it

we are in supervisor mode.

how come???
[HD Mini Android Development] schlund:
i will do that.

i was thinking about the real differences between MSM7201A (that works) and MSM7227

they have "same" processor, ARM1136JF-S™(7227) and ARM1136J-S™(7201A) the only difference is a FPU (what the F stands for), so instructions should be the same..

Google says MSM7227 has L2 cache and 7201A doenst!. how to handle it when "restarting" the device ?

google also says 7201A has an arm9 coprocessor. could this mean 7201A supports "old arm9" instructions, and 7227 "only" the arm11?

as i understand, HaRET gets system mode from a WinCE"-bug". and as i read in source code t should give an error when it doenst suceed..

only some ideas..
[HD Mini Android Development] -r0bin-:
yeah but check my message above:

we are in supervisor mode already!

and fyi, haret is working on MSM7225!
[HD Mini Android Development] welss:
Unfortunately it doesn't work on MSM7225. I'm working on HTC Mega and we have the same problem, hanging up after the "go go go", or error "pc =??????", or soft reset.
[HD Mini Android Development] -r0bin-:
wless, have you tried the haret patched for MSM7225?

see here:

http://xdaforums.com/attachment.php?attachmentid=284592&d=1266872927

radim, the creator of this patch, told me haret was working on his HTC (HTC Jade) but since no linux distrib was handling MSM7225 at this time, he coulnt made android to work.

at least he was able to go further than "disabling mmu" on the frame buffer (black screen) without unhandled exception

schlund, maybe we can try to switch to "supervisor mode" at the begining of the trampoline function?

see asm code in haret (this code needs to be modified with good args)

asm volatile("mrs %0, cpsr @ Get current cpsr\n"
"msr cpsr, %2 @ Change processor mode\n"
"moveq r13, %1 @ Set r13\n"
"movne r14, %1 @ Set r14\n"
"msr cpsr, %0 @ Restore processor mode"
: "=&r" (temp)
: "r" (val), "r" (newContext));

=> basically, read cpsr value in one register (r8)

=> ORR r8, r8, 0x1f

=> write r8 into cpsr

if done at the beginning of trampoline jump, we will ensure we are in supervisor mode before touching the cp15 register
[HD Mini Android Development] schlund:
be careful! supervisor mode != system mode

processor mode is set in first 5 bits of PSR.

so in your case (0x6000001f) these bits are set 11111 what should be our needed "sytem mode"
[HD Mini Android Development] -r0bin-:
Dude, this is not an issue:

The exceptions occurs only on the registers we do not care about.

The MMU register is the c01, and we have access to it.

I think the issue is somewhere else.
[HD Mini Android Development] -r0bin-:
yeah, this is called system mode. but even though it is enough to access the register c01 of CP15 (cf my previous post)
[HD Mini Android Development] _Madmatt:
HSPL isn't far away anymore! I contacted a dev of the OliNex team and he told me he almost got it working already! :D

Maybe we dont need it yet, but it can be handy later :)
[HD Mini Android Development] dakkato:
Perfectly! Good news! :D
[HD Mini Android Development] RoSo:
Hi _Madmatt

you told before that we can reach to an Android rom by HSPL.

so I want to know , after making HSPL , is it easier to cook an Android rom than running HaRET on HD mini?

if yes , it's a big step to see android on HD mini.
[HD Mini Android Development] codiak:
First of all, we must have a running Android. After that, we could use HSPL for flashing it.

HSPL dont make it easier to get it running.
[HD Mini Android Development] -r0bin-:
schlund,

if you have the time, can you try out with this asm code:

1: @ Code is running at a vm address that is the same as its
@ physical address. Now disable the MMU.
mov	r0, #0x00000030	@ ARM6 control reg.
mcr	p15, 0, r0, c1, c0, 0	@ turn MMU and cache off
mov	r0, #0
mcr	p15, 0, r0, c7, c0, 0	@ invalidate whole cache v3
mcr	p15, 0, r0, c5, c0, 0	@ invalidate whole TLB v3
CPWAIT r0

special for arm6, taken from the kernel.

new thing is, there is no "mrc", only one "mcr", and i supposed the mrc was crashing.

thanks
[HD Mini Android Development] schlund:
hmm isnt arm6 != arm v6?

i understand this file you take from kernel like this:

.word	0x0007b000	@ ARMv6
.word	0x000ff000
W(b)	__armv4_mmu_cache_on
W(b)	__armv4_mmu_cache_off
W(b)	__armv6_mmu_cache_flush

tells me to use armv4 functions for cache on/off and armv6 cache flush for arm v6 cpu

the arm6 functions are used for very old arm6 processors, but we have arm11! (which basicly is armv4!)

(btw haret is compiled in armv4, if i use new armv6 instructions it doesnt work, maybe we should compile in armv6 to use these easy instructions like CPSID)

the code you postet does not read the register, it is doing an "hard-write" to it.

it sets bit 4 and 5 to one und rest to zero. 4n5 are reserved, it will turn off about everything there :D

i cant imagine that this will work but i will try it.
[HD Mini Android Development] _Madmatt:
HSPL won't make it easier to develop Android, but will make it easier to flash it when we developed it. And another nice thing, is that flashing a custom ROM should be easier :)
[HD Mini Android Development] -r0bin-:
i agree with you about all that

well turn off everything isnt it what we're trying to do anyway ;-)

let's give a try?

i also compiled haret using "-march=armv6" but did not noticed any changes.
[HD Mini Android Development] johnsk:
hey guys...

how is the progress?
[HD Mini Android Development] cardsharing:
Progres is - waiting good developer to fix this :D . We waiting developer to donate him
[HD Mini Android Development] schlund:
sorry but i am a bit low of time, atm. i'm having some important exams these weeks .. if i have some free time i will go on!
[HD Mini Android Development] tzacapaca:
We will be waiting for you,and r0bin of course :)

Good luck on exams!;)
[HD Mini Android Development] -r0bin-:
good luck for exams!

if its IT exams i dont worry for you ;)

im also very busy this week, but next week should be fine
[HD Mini Android Development] johnsk:
yes schlund,

good luck from me too.

Du machst das schon :D
[HD Mini Android Development] schlund:
hey guys,

as i have some free time today i wanted to take a look at our haret problem.

and -surprise- as i went through htc-linux page i found some changes!

first: someone added this status page:

http://htc-linux.org/wiki/index.php?title=PhotonStatus

does this mean someone else is working on this ? and how did this person got android running to be able say what is working?? who is it ?

i also found our own "mini" git for haret:

http://git.linuxtogo.org/?p=groups/haret/haret.git;a=shortlog;h=refs/heads/hdmini
[HD Mini Android Development] pwel:
another haret link?

The source of the second link is clear. I guess that is netripper?

Also I found this link http://blog.gmane.org/gmane.comp.handhelds.haret

where a french guy Matthieu is working in the same issue. Could he be of any help? Would we have to drag him into this forum?
[HD Mini Android Development] dudesimo:
interesting i think it would be smart to drag him into here!!
[HD Mini Android Development] schlund:
this mailinglist thing was one of us.. but i dont remember who, AND i'm to lazy to search the pages before :D
[HD Mini Android Development] -r0bin-:
haha that was me :)

unfortunately i never got any answer

well i did additional tries with the vibrator debug

i decompozed the cp15 access register prior to mmu setup:

@step 1: disable Data cache
mrc	p15, 0, r0, c1, c0, 0
bic	r0, r0, #4
mcr	p15, 0, r0, c1, c0, 0

@step 2: disable Instruction cache
mrc	p15, 0, r0, c1, c0, 0
bic	r0, r0, #0x1000
mcr	p15, 0, r0, c1, c0, 0

@step 3: disable MMU
mrc	p15, 0, r0, c1, c0, 0
bic	r0, r0, #0x1
mcr	p15, 0, r0, c1, c0, 0

the code always reaches after data cache disabled (step 1)

but it always crashes during instruction cache disabled (step 2)

when i remove the instruction cache disable code (=step2), it crashes at mmu disable (step 3)...

dunnoo what to think about that, appart that the trampoline jump seems good if we get the vibro, and the access to register 15 - c1 is working both read and write.

do we need to disable mmu/irqs/peripherals before disabling mmu??
[HD Mini Android Development] -r0bin-:
found a new code for MMU disabling:

@ Disable cache and mmu
mov r0, #0
mcr p15, 0, r0, c13, c0, 0 @ Clear FCSE PID
mrc	p15, 0, r2, c1, c0, 0 @ Read ctrl reg
bic r2, r2, #DISABLE_DCACHE_MMU
bic r2, r2, #DISABLE_ICACHE
mov	r0, #0
mcr	p15, 0, r0, c7, c7, 0 @ Invalidate whole cache
mcr	p15, 0, r0, c8, c7, 0 @ Invalidate whole TLB
mcr	p15, 0, r2, c1, c0, 0 @ Disable cache and mmu
mov r1, r1
mov r1, r1
mov pc, r14

here: http://www.spinics.net/lists/arm-kernel/msg95128.html

another stuff here:

/*
* set the cpu to SVC32 mode
*/
mrs	r0,cpsr
bic	r0,r0,#0x1f
orr	r0,r0,#0xd3
msr	cpsr,r0

/*
* flush v4 I/D caches
*/
mov	r0, #0
mcr	p15, 0, r0, c7, c7, 0	/* Invalidate I+D+BTB caches */
mcr	p15, 0, r0, c8, c7, 0	/* Invalidate Unified TLB */

/*
* disable MMU stuff and caches
*/
mrc	p15, 0, r0, c1, c0, 0
bic	r0, r0, #0x00002300	@ clear bits 13, 9:8 (--V- --RS)
bic	r0, r0, #0x00000087	@ clear bits 7, 2:0 (B--- -CAM)
orr	r0, r0, #0x00000002	@ set bit 2 (A) Align
orr	r0, r0, #0x00001000	@ set bit 12 (I) I-Cache
mcr	p15, 0, r0, c1, c0, 0

found here

need to test that...
[HD Mini Android Development] cardsharing:
whaaaat :eek: what is this, who is Talk, i see other projects from same ip adresse http://htc-linux.org/wiki/index.php?title=Special:Contributions/109.205.252.4.....Schlund you???:eek:
[HD Mini Android Development] tzacapaca:
it's not Schlund,it's some russian guy..Cotulla i guess :eek: :D
[HD Mini Android Development] NetRipper:
That's Cotulla. He worked on Android for HD2/Leo. He also owns an HD Mini and told me he was looking into it as I told him about the problems we ran into with HaRET.

The HaRET 'hdmini' branch you found on the git repository is my work, but Cotulla already mentioned I made some mistakes. Such as assuming "msm722x" while msm7227 and msm7225 have some important differences (such as L2 cache which is present on 7227 and not on 7225).

I'm not sure how correct the status page is. If all that stuff is really working already that would be amazingly fast.
[HD Mini Android Development] cardsharing:
Thanks, do you want to contact him to give you working haret or more details(what tools he use to run kernel):confused:

http://xdaforums.com/showthread.php?p=11096254#post11096254
[HD Mini Android Development] -r0bin-:
that's great news to have good developpers as you guys trying to help us!

this seems right, the MSM7227 has a L2 cache that does not have MSM7225:

http://wmpoweruser.com/a-look-at-the-qualcomm-msm7227-chipset-in-htc-trophy-tera-and-photon/

edit: found on the pdf from qualcomm:

i don't think the floating point unit is the issue here.

regarding the L2 cache, I was thinking it was automatically deactivated with the L1. maybe we need to flush & deactivate it before MMU deactivate?

but so far I have the feeling the mmu disable command is never executed, looks more an access right issue than something else...

of course we already execute code in "system" mode, which is "priviledged user mode".

but we might be able to deactivate the MMU only in supervisor mode (this is not clear at all in the ARM documentation).

i'm investigating, as well as trying to set up a remote cross debug.

Guys, let us know if you have any updates :)
[HD Mini Android Development] cardsharing:
..."guys" no wont to exchange own progress because work for own ass and off public, what is problem guys, money?? Where is this?? This is joke?? Where is mistic Cotula....haloooooooo haloooooo please say aaaaa

:mad:
[HD Mini Android Development] tzacapaca:
hey cardsharing..i disagree with u,it's Cotulla's choice if he wants to work by his own or to ask other guys from here(although i'm sure he doesn't need any help since he made this and more for many other devices :) ) ,and no,is not a joke..i dont think that wiki site it's a jokes site :p

p.s. i don't mind either he is doing this himself or with other guys as long as we will REACH OUR GOAL!;)
[HD Mini Android Development] cardsharing:
Ok, and why not want to share their knowledge that we learn something....also i am waiting reply from one member here about 0x00000080 and 0x00000084, why is...and why is not 0x000000c0 and 0x000000c8..... but he no want to share why. No problem mate if you no want to say "i dont know or i dont want to share or you are noob and i no want to speak with you"
[HD Mini Android Development] _Madmatt:
If Cotulla wants to work on his own, what's the big deal? Second thing, I don't think that sharing what he did should have helped much... He's just VERY MUCH BETTER than we are. I dont think we could have helped much.

And last but not least: if Cotulla wants money, why not? He will be the only one at this moment who has got it working, so a little reward should be at it's place.
[HD Mini Android Development] cardsharing:
off topic?? Ok this is not first time:D
[HD Mini Android Development] schlund:
come down.

Actually we do not know what he exactly has done yet.

If he is already sucessful running Android as show in this table,

in my case,

i think we are very lucky that some skilled developer has gone thru that,

and we could be very happy about that.

I've learned lots when reading those documentations and testing by my own, and i am looking forward to the solution that he used to solve this.

If he will share this sometime we should all show respect to his work, and OF COURSE donate him!
[HD Mini Android Development] cardsharing:
I agre 1000% with you but here is problem understanding why this is off public and why knownledge members no want to share key points of success, but i will donate also
[HD Mini Android Development] RoSo:
guys

are you sure that Cotulla owns a HD Mini ? if yes , why he never appeared in this thread ?

I don't think so he has a HD Mini and working on this device.

is it possible for someone to ask him show himself in this thread and clarify for us should we donate or not and how the proccess is going on?
[HD Mini Android Development] codiak:
NetRipper stated here that he owns a HD Mini.
[HD Mini Android Development] tzacapaca:
1.yes he owns a HD Mini too,along other devices(i know from NetRipper and other guy)

2. because he didn't want to

3.donations are not required..if you want to donate,do so,if you don't want to donate,don't do it(google word "donate" to see it's meaning),and he will not come here to ask you to donate....could you stop being ridiculous?

4.process status is here http://htc-linux.org/wiki/index.php?title=PhotonStatus

p.s. I hope next time you will have smarter questions,not nonsense..
[HD Mini Android Development] tzacapaca:
Android is comingggggg!!!

Hey guys

good news ;) --->

It's just a matter of hours,minutes,seconds,until we can run Android on Mini's !:D
[HD Mini Android Development] 7erman:
WTF, guys? Who are joking on htc-linux?
[HD Mini Android Development] tzacapaca:
It's Cotulla's work...WTF,do you think he is a joker or a developer?
[HD Mini Android Development] schlund:
no this wasnt him, some real funny did this last night ...has been reverted
[HD Mini Android Development] MobileMini:
Guys, lets keep the discussion friendly.

We still don't know much about the progress of Cotulla. I was wondering are you guys going to wait at Cotulla, or are you going to procede with the Haret project?
[HD Mini Android Development] cardsharing:
Is this photoshop edit?:D Ok guys i will upload all files and android :rolleyes::rolleyes::rolleyes: hehe small joke :D

and waiting...waiting...waiting...where is end. This will be a surprise it seems, or maybe someone's joke
[HD Mini Android Development] tzacapaca:
nope,status on site was edited by someone else who tried to make a joke...but Cotulla changed back to original status
[HD Mini Android Development] Kakiller93:
!

Hi Guys, how is it going, coming long?

Continue with the god job!
[HD Mini Android Development] schlund:
Arrh, everytime i try to find the mistake in haret it feels like i am running in circles. I wish Cotulla would share some of his progress, especially in haret. Maybe NetRipper could try to find st out ?!

Or is robin having some progress ?
[HD Mini Android Development] kun2866:
Who would do that boot file
[HD Mini Android Development] -r0bin-:
no big progress, im trying to setup the remote debugger:

gdbserver + gdb

unfortunately gdbserver is not working well on WinMo, im trying to fix it

then, if I can connect successfuly i will be able to debug step by step in the asm code, get the registers and memory value, and figure out what is wrong.

at least i believe so :-/

if i manage to get this tool working i will upload it here ;)
[HD Mini Android Development] silent_Eagle:
hi all

tnx for your progress

i love all off you and i love android on my MINI too.

but i have idea that you can do that is very good

i think haret is some where you are making driver for android!!!

and i think if you can driver for battery that it can show exactly percantage of battery is very good!!

but i dont know it's easy to make or not!!

sry for my bad english!!!!!

tnx for your attention:)
[HD Mini Android Development] cardsharing:
Hey mates please help me to make this, after this i will experiment with hboot (i want to put hboot to pone instead of spl, but first step will be uploading modified spl (with my modulus) to be able to sign all other stufs with my rsa key(acceptable trought spl "modified modulus")) and put it to phone, please http://xdaforums.com/showthread.php?t=939007 . Need help hacking Cotula sspl - see atachment(run this on phone to understand what is this). Hacking sspl and adding modified spl instead of Cotula soft spl will be good point to put modified spl (temporary like cotula one) to phone, but hmmm how. My idea is: Spl have security and we have not privilegies uploading anything to phone without image signed with htc private key, but if we hach way like Cotula soft spl, we will have chance to sign own stufs with private key we made, and put it to phone without htc security check