[ROM][03.23.13] CyanogenMod 10 on HTC DNA; Audio WIP)

Search This thread

drewX2

Senior Member
Feb 28, 2006
400
1,209
San Diego
Almost done updating Bionic files. This should fix a majority of random errors and help with porting to any rom.

As I might have mentioned prior and according to some of the HTC/CM devs I spoke to before, there is no current interest to port to our phone yet because our build is very different; one reason being the kernel as we are 3.4+ and they are 3.0 ish I think. I was told they are pushing towards 3.4 asap tho. That and our trees screw up a bunch of stuff regarding common files. I can only speak to what I've been told, but nonetheless, we push on!
 
Last edited:

aFancyTickler

Senior Member
Dec 5, 2012
175
71
Almost done updating Bionic files. This should fix a majority of random errors and help with porting to any rom.

As I might have mentioned prior and according to some of the HTC/CM devs I spoke to before, there is no current interest to port to our phone yet because our build is very different; one reason being the kernel as we are 3.4+ and they are 3.0 ish I think. I was told they are pushing towards 3.4 asap tho. That and our trees screw up a bunch of stuff regarding common files. I can only speak to what I've been told, but nonetheless, we push on!


so its possible we might see dna officially supported by cm ? and what exactly do you mean by bionic files if you dont mind me asking :p
 

drewX2

Senior Member
Feb 28, 2006
400
1,209
San Diego
so its possible we might see dna officially supported by cm ? and what exactly do you mean by bionic files if you dont mind me asking :p

http://en.wikipedia.org/wiki/Bionic_(software)

Bionic needs to be updated with proper kernel headers for use when running programs. I did not update them with CM10, which surprised me considering it ran rather stable. Nonetheless, CM10.1 is a whole other beast and boots to a screwed up screen atm. It could be other things, but I need to update this anyhow so everything else will work properly.

I guess a basic way of thinking of it is imagine you have a toolbox with certain tools available. It works well for most projects, but sometimes you buy a slightly modified version of a tool for a new project. The old tool might be able to work still (and maybe fairly well if no changes, or subtle), however it may not even work at all. You could also think of it as a floorplan with room layouts and details like the location of outlets. In CM10, that toolbox is setup for a completely different phone and there are slight differences throughout. Best analogy I could come up with and I hope it helps.
 

chad0989

Senior Member
Oct 31, 2010
1,883
9,424
so its possible we might see dna officially supported by cm ? and what exactly do you mean by bionic files if you dont mind me asking :p

Official support doesn't really mean anything significant. It just means that someone who wants to be maintainer cleans everything up the way they want it and submits the device tree and any other necessary commits that won't break other devices.

I'd also like to point out that s-off really isn't all that exciting. While its nice to have, it makes it dangerously easy to brick, especially if you're developing. Honestly HTC dev unlock is great IMO, you can develop as much as you want and you're almost brick proof. Now if there wasn't already the CID hack, s-off would be the greatest thing ever.

A third note is that I really don't think the phone is going to be hard to dev for. S4s are all the rage right now and have all the support and source we can hope for since the nexus 4 uses the same platform.
 

aFancyTickler

Senior Member
Dec 5, 2012
175
71
http://en.wikipedia.org/wiki/Bionic_(software)

Bionic needs to be updated with proper kernel headers for use when running programs. I did not update them with CM10, which surprised me considering it ran rather stable. Nonetheless, CM10.1 is a whole other beast and boots to a screwed up screen atm. It could be other things, but I need to update this anyhow so everything else will work properly.

I guess a basic way of thinking of it is imagine you have a toolbox with certain tools available. It works well for most projects, but sometimes you buy a slightly modified version of a tool for a new project. The old tool might be able to work still (and maybe fairly well if no changes, or subtle), however it may not even work at all. You could also think of it as a floorplan with room layouts and details like the location of outlets. In CM10, that toolbox is setup for a completely different phone and there are slight differences throughout. Best analogy I could come up with and I hope it helps.

Thanks for the link, and i understand clearly now and that analogy was a perfect way to put it.

Official support doesn't really mean anything significant. It just means that someone who wants to be maintainer cleans everything up the way they want it and submits the device tree and any other necessary commits that won't break other devices.

I'd also like to point out that s-off really isn't all that exciting. While its nice to have, it makes it dangerously easy to brick, especially if you're developing. Honestly HTC dev unlock is great IMO, you can develop as much as you want and you're almost brick proof. Now if there wasn't already the CID hack, s-off would be the greatest thing ever.

A third note is that I really don't think the phone is going to be hard to dev for. S4s are all the rage right now and have all the support and source we can hope for since the nexus 4 uses the same platform.

ohhh , well i think nightlies are quite significant. something new to flash daily :p
 

chad0989

Senior Member
Oct 31, 2010
1,883
9,424
Thanks for the link, and i understand clearly now and that analogy was a perfect way to put it.



ohhh , well i think nightlies are quite significant. something new to flash daily :p

Anyone can build nightlies. Once there's a solid device tree with everything working there will be dozens of people building more AOSP ROMs than you could ever hope for.
 
  • Like
Reactions: aFancyTickler

drewX2

Senior Member
Feb 28, 2006
400
1,209
San Diego
Example for code differences: can anyone spot a potential problem? :)

Correct
Code:
#ifndef _ARCH_ARM_MACH_MSM_MDM_IOCTLS_H
#define _ARXH_ARM_MACH_MSM_MDM_IOCTLS_H

#define MODEM_ERRMSG_LEN	256			/* HTC added */

#define CHARM_CODE		0xCC
#define WAKE_CHARM		_IO(CHARM_CODE, 1)
#define RESET_CHARM		_IO(CHARM_CODE, 2)
#define CHECK_FOR_BOOT		_IOR(CHARM_CODE, 3, int)
#define WAIT_FOR_BOOT		_IO(CHARM_CODE, 4)
#define NORMAL_BOOT_DONE	_IOW(CHARM_CODE, 5, int)
#define RAM_DUMP_DONE		_IOW(CHARM_CODE, 6, int)
#define WAIT_FOR_RESTART	_IOR(CHARM_CODE, 7, int)
[B]
#define GET_MFG_MODE   	_IO(CHARM_CODE, 94)     /* HTC added */
#define GET_RADIO_FLAG   	_IO(CHARM_CODE, 95)     /* HTC added */
#define SET_MODEM_ERRMSG	_IOW(CHARM_CODE, 96, char[MODEM_ERRMSG_LEN])	/* HTC added */
#define EFS_SYNC_DONE		_IO(CHARM_CODE, 99)	/* HTC added */
#define NV_WRITE_DONE		_IO(CHARM_CODE, 100)	/* HTC added */[/B]

enum charm_boot_type {
	CHARM_NORMAL_BOOT = 0,
	CHARM_RAM_DUMPS,
};

#endif

Wrong in CM10.1 build.
Code:
#ifndef _ARCH_ARM_MACH_MSM_MDM_IOCTLS_H
#define _ARXH_ARM_MACH_MSM_MDM_IOCTLS_H


#define CHARM_CODE		0xCC
#define WAKE_CHARM		_IO(CHARM_CODE, 1)
#define RESET_CHARM		_IO(CHARM_CODE, 2)
#define CHECK_FOR_BOOT		_IOR(CHARM_CODE, 3, int)
#define WAIT_FOR_BOOT		_IO(CHARM_CODE, 4)
#define NORMAL_BOOT_DONE	_IOW(CHARM_CODE, 5, int)
#define RAM_DUMP_DONE		_IOW(CHARM_CODE, 6, int)
#define WAIT_FOR_RESTART	_IOR(CHARM_CODE, 7, int)
#define GET_DLOAD_STATUS	_IOR(CHARM_CODE, 8, int)

enum charm_boot_type {
	CHARM_NORMAL_BOOT = 0,
	CHARM_RAM_DUMPS,
};

#endif
 

skynet11

Senior Member
Oct 14, 2010
1,935
686
Re: [ROM] CyanogenMod 10.0/10.1 on HTC DNA [Updated: 02.18.13]

Respect is fine. But to find answers you gotta read. This is the 1746391728629479 time that's been asked in some fashion and probably the 1746391728629472 time its been answered.

Sent from my HTC6435LVW using Tapatalk HD
I think you're off by 11 or so :p

---------- Post added at 11:31 PM ---------- Previous post was at 10:48 PM ----------

To be honest, the progress on this device is impressive. Major roadblocks thrown up by Verizon and HTC have been overcome very early in the device's life cycle.

I think the main reason why people first got the idea that achieving S-Off somehow opens the floodgates to AOSP is that some well-regarded developers reportedly refused to develop for S-On devices, which led many users to speculate that S-On somehow presents a technical hurdle to running AOSP ROMs (it doesn't).

As Drewx2 and many others have said, the biggest hurdle to getting functional AOSP on the DNA is the RIL, and it seems the biggest obstacle to getting official CM support is that our kernel is so far ahead of theirs :p.

Frankly, while official support is nice, you can still have a rewarding AOSP experience with unofficial builds. I haven't had an official build of any kind on my Galaxy Nexus or my Nexus 7 in months (I think the Chicago Bears had a chance to win the NFC North division the last time I ran an official build :p).

Also, I wish XDA's forum software would quit merging consecutive posts by the same user all the time :banghead:
 
Last edited:

EmericanX

Senior Member
Dec 20, 2011
65
14
Prince George, VA
Re: [ROM] CyanogenMod 10.0/10.1 on HTC DNA [Updated: 02.18.13]

Example for code differences: can anyone spot a potential problem? :)

Correct
Code:
#ifndef _ARCH_ARM_MACH_MSM_MDM_IOCTLS_H
#define _ARXH_ARM_MACH_MSM_MDM_IOCTLS_H

#define MODEM_ERRMSG_LEN256/* HTC added */

#define CHARM_CODE0xCC
#define WAKE_CHARM_IO(CHARM_CODE, 1)
#define RESET_CHARM_IO(CHARM_CODE, 2)
#define CHECK_FOR_BOOT_IOR(CHARM_CODE, 3, int)
#define WAIT_FOR_BOOT_IO(CHARM_CODE, 4)
#define NORMAL_BOOT_DONE_IOW(CHARM_CODE, 5, int)
#define RAM_DUMP_DONE_IOW(CHARM_CODE, 6, int)
#define WAIT_FOR_RESTART_IOR(CHARM_CODE, 7, int)
[B]
#define GET_MFG_MODE   _IO(CHARM_CODE, 94)     /* HTC added */
#define GET_RADIO_FLAG   _IO(CHARM_CODE, 95)     /* HTC added */
#define SET_MODEM_ERRMSG_IOW(CHARM_CODE, 96, char[MODEM_ERRMSG_LEN])/* HTC added */
#define EFS_SYNC_DONE_IO(CHARM_CODE, 99)/* HTC added */
#define NV_WRITE_DONE_IO(CHARM_CODE, 100)/* HTC added */[/B]

enum charm_boot_type {
CHARM_NORMAL_BOOT = 0,
CHARM_RAM_DUMPS,
};

#endif

Wrong in CM10.1 build.
Code:
#ifndef _ARCH_ARM_MACH_MSM_MDM_IOCTLS_H
#define _ARXH_ARM_MACH_MSM_MDM_IOCTLS_H


#define CHARM_CODE0xCC
#define WAKE_CHARM_IO(CHARM_CODE, 1)
#define RESET_CHARM_IO(CHARM_CODE, 2)
#define CHECK_FOR_BOOT_IOR(CHARM_CODE, 3, int)
#define WAIT_FOR_BOOT_IO(CHARM_CODE, 4)
#define NORMAL_BOOT_DONE_IOW(CHARM_CODE, 5, int)
#define RAM_DUMP_DONE_IOW(CHARM_CODE, 6, int)
#define WAIT_FOR_RESTART_IOR(CHARM_CODE, 7, int)
#define GET_DLOAD_STATUS_IOR(CHARM_CODE, 8, int)

enum charm_boot_type {
CHARM_NORMAL_BOOT = 0,
CHARM_RAM_DUMPS,
};

#endif

I see a lot missing ;)

Btw: I can say that what you've been told about our device tree is indeed true! It doesn't play nice with native cm code. Haven't even attempted AOSP... On a side note I synced the cm10-dna10.1 the other night to start contributing.. build fails out of the gate and repo sync again is a no go... Did someone accidentally break it? :p lol... Which git are you building from so I can start on the same page? We can catch up via pm to exchange gtalk info

Sent from my HTC6435LVW using Tapatalk 2
 

nitsuj17

Inactive Recognized Developer
Aug 24, 2010
10,154
17,211
PA
Official support doesn't really mean anything significant. It just means that someone who wants to be maintainer cleans everything up the way they want it and submits the device tree and any other necessary commits that won't break other devices.

I'd also like to point out that s-off really isn't all that exciting. While its nice to have, it makes it dangerously easy to brick, especially if you're developing. Honestly HTC dev unlock is great IMO, you can develop as much as you want and you're almost brick proof. Now if there wasn't already the CID hack, s-off would be the greatest thing ever.

A third note is that I really don't think the phone is going to be hard to dev for. S4s are all the rage right now and have all the support and source we can hope for since the nexus 4 uses the same platform.

well said, 2 things that drive me nuts lately are

a) people assuming s-off somehow means something to rom/kernel development in general and specifically as it pertains to aosp
b) that aosp only means something if you have *official* support from cm/aokp/whatever
 

cryptworks

Member
Nov 10, 2010
45
2
Tempe
Not sure about it as we don't have it. It does appear to be needed by the prebuilt rild and libril.so for the dna though. Is it causing an issue?

It's really tempting to pick up a DNA from amazon wireless for $99 but I'm not sure if I want to use my upgrade or wait for the next wave, or get off vzw all together.

I have to say, The DNA is one of the nicer phones going right now. Still prefer it over the moto and samsung offerings. i even like it more than the N4 despite its obvious advantages.
 
  • Like
Reactions: azndan2

whojabacod

Senior Member
Apr 8, 2010
726
101
Re: [ROM] CyanogenMod 10.0/10.1 on HTC DNA [Updated: 02.18.13]

I'm just a nobody in the dev world but just wondering now that we have s-off and CM will look into deving for s-off phones that if someone of stature reached out to CM at this point and perhaps have their team help in getting this thing full running and supported.

Sent from my HTC6435LVW using Tapatalk 2
 

phydo

Senior Member
Apr 11, 2010
494
97
Lebanon, NJ
I'm just a nobody in the dev world but just wondering now that we have s-off and CM will look into deving for s-off phones that if someone of stature reached out to CM at this point and perhaps have their team help in getting this thing full running and supported.

Sent from my HTC6435LVW using Tapatalk 2

You still need a device maintainer for CM. Generally CM will support a device once it's running pretty well on it. you won't get the team to just "do it", but they almost always will make suggestions if you need help. If you buy someone big on the project a DNA you might be able to talk them into it
 

nitsuj17

Inactive Recognized Developer
Aug 24, 2010
10,154
17,211
PA
You still need a device maintainer for CM. Generally CM will support a device once it's running pretty well on it. you won't get the team to just "do it", but they almost always will make suggestions if you need help. If you buy someone big on the project a DNA you might be able to talk them into it

you dont need an existing cm device maintainer to get official support

you need to get aosp as functional as possible and make sure your patches and tree doesnt break anything in the mainline...submit for official support and then *you* can be the device maintainer

heck thats how most of people that are device maintainers became that

there are only a handful of people who are really on the main cm team
 

atishpatel2012

Senior Member
Jan 23, 2013
188
21
you dont need an existing cm device maintainer to get official support

you need to get aosp as functional as possible and make sure your patches and tree doesnt break anything in the mainline...submit for official support and then *you* can be the device maintainer

heck thats how most of people that are device maintainers became that

there are only a handful of people who are really on the main cm team
haha well, if that is the case then good luck to drew! ;D He seems to be doing a great job developing for the device, and if or when he can get cm working on the DNA. I think it'd be great for the DNA, drew, and errrrrbody.
 

drewX2

Senior Member
Feb 28, 2006
400
1,209
San Diego
Who wants to join in on the fun? It may not be some fancy high tech setup, but it gets the job done. Thought I'd share a random pic for the hell of it.

x9GBoR4.jpg


Edit: wow that came out huge... I'm on my phone and just got into bed lol
 
Last edited:

alchemist316

Senior Member
Jan 5, 2011
991
125
greenwich ct
Re: [ROM] CyanogenMod 10.0/10.1 on HTC DNA [Updated: 02.18.13]

Samsung 55 smart as monitor I have no current pics I just got a replacement DNA :/ ..... Anyways thanks for all the work with this everyone :D

Sent from my HTC6435LVW using xda premium
 

Attachments

  • uploadfromtaptalk1361437723924.jpg
    uploadfromtaptalk1361437723924.jpg
    104 KB · Views: 474

Top Liked Posts

  • There are no posts matching your filters.
  • 173

    logo-cid.png

    [ Unofficial CyanogenMod 10 Build on HTC DNA ]
    git @ https://github.com/drewx2/android/ (Updated to download all necessary repos)

    ..CURRENT BUILD NOTES/HISTORY..

    03.24.13: CM10 doesn't include support for csd-client enabled phones (which we need). I have built a work around for it to utilize our csd-client lib; hopefully it brings audio one step closer.

    My audio changes can be found at a separate git repo @ https://github.com/drewx2/android_hardware_qcom

    03.23.13: Current Audio Status

    I have some time to look at things, so here just getting started and thought I would post the first strace for those interested. Looks promising and not too difficult.
    Code:
    writev(4, [{"\4", 1}, {"AudioHardwareALSA\0", 18}, {"ucm instance opened: 1082445752\0", 32}], 3) = 51
    writev(4, [{"\6", 1}, {"AudioFlinger\0", 13}, {"int android::load_audio_interfac"..., 103}], 3) = 117
    writev(4, [{"\4", 1}, {"AudioFlinger\0", 13}, {"loadHwModule() error -22 loading"..., 49}], 3) = 63
    writev(4, [{"\5", 1}, {"AudioPolicyManagerBase\0", 23}, {"could not open HW module primary"..., 33}], 3) = 57
    writev(4, [{"\6", 1}, {"AudioPolicyManagerBase\0", 23}, {"Not output found for attached de"..., 47}], 3) = 71
    writev(4, [{"\6", 1}, {"AudioPolicyManagerBase\0", 23}, {"Failed to open primary output\0", 30}], 3) = 54
    writev(4, [{"\6", 1}, {"AudioPolicyManagerBase\0", 23}, {"getDeviceForStrategy() speaker d"..., 74}], 3) = 98
    clock_gettime(CLOCK_MONOTONIC, {205, 684889413}) = 0
    writev(4, [{"\6", 1}, {"AudioPolicyManagerBase\0", 23}, {"getDeviceForStrategy() speaker d"..., 74}], 3) = 98
    writev(4, [{"\6", 1}, {"AudioPolicyService\0", 19}, {"couldn't init_check the audio po"..., 54}], 3) = 74
    ioctl(3, 0xc0186201, 0xbe961a28)        = 0

    Complete strace available here: http://bit.ly/Xx3M0v

    -------------------------------------------------------------------------------------------------------------------------------------

    There won't be any builds posted until one of the "not working" items has been fixed. I mostly likely will focus on audio this weekend.

    If you have something meaningful to share, please visit http://webchat.freenode.net/?channels=CM10DNA

    03.04.13 @ 03:29AM: Wifi *now* really working

    03.04.13 @ 03:29AM: Wifi now working.

    Enable 3 dot menu: Settings -> Hardware keys -> Show action overflow [check]

    Working:
    Radio/RIL (no sound, so can't hear yet), SMS / MMS, 3G / 4G Data, Display, Orientation, Sensors, Lights, NFC, Torch, GPS (not tested), Wifi

    Not working:
    Camera, Audio, Bluetooth

    To Do list
    I plan to do bionic/kernel optimizations once all features working.

    ..INSTALL INSTRUCTIONS..
    If you do not have S-OFF, you need to unzip the file and flash the boot.img inside via fastboot.

    Install Instructions:
    1) Download http://bit.ly/W0RAY8
    2) Reboot to recovery of your choosing; wipe system/data/dalvik-cache/cache.
    3) Install downloaded zip
    4) Reboot.
    5) Enjoy.

    Google Apps @ http://goo.im/gapps/gapps-jb-20121011-signed.zip



    .SPECIAL THANKS FOR DONATING.
    RuinedByMTV, drmp3z
    kronikings, danahern, karn101, Majik Mushroomz, Matt P., Matt B., pio_masaki, Droidika, Wheelchairmitch, MrIcky, liquidhaste, jamiethemorris, rainabba


    .SPECIAL THANKS.
    Flyhalf205, x3demond3x[debugging]
    dsb9938 [cmdline boot option]
    x3demond3x [egl fix]
    Jarocks [resized bootanimation/debugging], pio_masaki [debugging],

    jcase [unlock], dees_troy [twrp], beaups, jcase, Dr_Drache, dsb9938 [S-OFF]
    .... and of course the CyanogenMod team and those who laid the foundation for the DNA....

    ..WANT TO HELP? HERE ARE SOME DEBUGGING TIPS..
    1) Flash boot.img
    2) On cmdline do "adb logcat"

    If you're ever in the mood to donate, don't forget about the others that have helped advance the HTC DNA to new levels (e.g. dsb9938, jcase, Dr_Drache, beaups, CM team, or XDA for bringing us all together!). Although, I may be working on CM and it may seem like a completely different project, in many ways we all rely on each other to help make the DNA better. :)
    44
    4g data working
    38
    Radio is now completely working. I just made my first call to myself :)
    36
    Wifi fixed. Will upload zip shortly after I figure out which one of my builds fixed it...

    Do I have to fix pretty much everything? lol...what happened with all the other devs out there?

    odKm3ST.jpg
    35
    Zip is up with complete working radio. Test away.