00:30.47 | *** join/#htc-linux BHSPitLappy (n=BHSPitLa@unaffiliated/bhspitmonkey) |
02:21.19 | *** join/#htc-linux dcordes (n=dcordes@unaffiliated/dcordes) |
03:09.47 | *** join/#htc-linux mrmoku|a` (n=mrmoku@ppp-93-104-126-75.dynamic.mnet-online.de) |
04:14.06 | xsacha-tv | tmzt, are you here? |
04:15.07 | xsacha-tv | i have my wifi reporting correct voltage of 1.8V and set the mci2 mask up OCR_VDD_165_195 so it accepts that voltage but i still get -110 error |
04:15.29 | xsacha-tv | though, i found out that both port 1 and port 2 (port 0 is my sd card) report 1.8V. do you think i have a third device on port 2? |
04:19.25 | tmzt | yeah |
04:19.47 | xsacha-tv | what else could i have on mmc? |
04:21.15 | tmzt | maybe |
04:21.17 | xsacha-tv | my processor only supports 3 mmc slots and i noticed the omnia uses port 1 for an internal SD card and port 2 for wifi |
04:21.17 | xsacha-tv | i dont think i have anything 'extra'.. |
04:21.23 | xsacha-tv | and i dont have an internal SD |
04:23.10 | tmzt | what error is -110? |
04:23.33 | xsacha-tv | hmm good question, ill find out |
04:24.46 | xsacha-tv | drivers/mmc/core/sdio.c:printk(KERN_ERR "%s: error %d whilst initialising SDIO card\n", |
04:25.15 | tmzt | find the E value with 110 |
04:26.16 | xsacha-tv | wow i just noticed there's about a dozen functions that could generate that error :\ |
04:26.48 | tmzt | yeah |
04:27.07 | tmzt | it would be nice if linux would report errors when they occur |
04:28.14 | xsacha-tv | the error must come from a def in include/linux or something, the number 110 or 0x6E isnt in mmc directory at all |
04:28.31 | xsacha-tv | oh -110 |
04:30.33 | tmzt | not -110, 110 |
04:30.47 | xsacha-tv | <PROTECTED> |
04:30.56 | tmzt | ok |
04:31.18 | tmzt | do you know where the error originates? |
04:31.30 | tmzt | give some context here |
04:31.40 | xsacha-tv | no, i guess i need to run some printk's |
04:31.54 | xsacha-tv | there's half a dozen functions that generate -EINVAL as error when something goes wrong |
04:32.38 | tmzt | yes |
04:33.27 | tmzt | what does core sdio call before that printk? |
04:33.43 | xsacha-tv | thats what i need to find out |
04:33.57 | xsacha-tv | that printk is behind a :err |
04:34.06 | xsacha-tv | and about 12 functions have 'goto err' |
04:34.14 | tmzt | err = what? |
04:34.41 | xsacha-tv | err: a location |
04:34.58 | xsacha-tv | err: mmc_detach_bus(host); mmc_release_host(host); printk(KERN_ERR "%s: error %d whilst initialising SDIO card\n", |
04:40.54 | *** join/#htc-linux droid0011 (n=mc@p4FDCE28B.dip.t-dialin.net) |
04:42.24 | tmzt | ? |
04:42.37 | tmzt | not following |
04:43.20 | xsacha-tv | ok mmc 1 got up to err = mmc_send_io_op_cond(host, host->ocr, &ocr); |
04:43.21 | xsacha-tv | <PROTECTED> |
04:43.21 | tmzt | they didn't cause therror |
04:43.33 | tmzt | ok |
04:43.45 | tmzt | look at that function and see what it calls |
04:43.52 | xsacha-tv | same with mmc2 |
04:44.08 | tmzt | I think mmc2 is invalid |
04:44.31 | tmzt | if you are assigning the ocr for all ports that makes sense |
04:44.47 | xsacha-tv | oh ok |
04:45.10 | xsacha-tv | is it possible i have nothing on mmc1 but wifi on mmc2? |
04:46.07 | tmzt | yes |
04:46.46 | xsacha-tv | well ill leave mmc2 just in case |
04:47.44 | xsacha-tv | err = -ETIMEDOUT; |
04:48.14 | xsacha-tv | that is defined as 60 though |
04:48.55 | xsacha-tv | oh it's different for different archs |
04:51.06 | xsacha-tv | for ARM, #define ETIMEDOUT 110 /* Connection timed out */ |
04:51.13 | xsacha-tv | that's it |
04:52.51 | tmzt | ah |
04:52.54 | tmzt | ok |
04:53.03 | xsacha-tv | it has a loop from 100 to 0 and then waits for cmd.. |
04:53.14 | xsacha-tv | it's meant to get a command, the err result be 0 and then break |
04:53.28 | xsacha-tv | but my sdio gets to 0 with no command and returns time out |
04:53.50 | tmzt | so it's not powered properly? |
04:54.01 | xsacha-tv | hmm |
04:54.14 | tmzt | was it returning a valid ocr before? |
04:54.25 | tmzt | did it respond to any commands at all? |
04:54.34 | tmzt | mmc1 or 2 |
04:54.35 | xsacha-tv | i saw the pre source and they messed with mdelay(10) (they had mdelay100 in comment?) |
04:54.47 | tmzt | ok |
04:54.53 | xsacha-tv | not sure how to tell if it responds to a command |
04:55.05 | tmzt | seems the helper makes it take longer |
04:55.10 | tmzt | mik: here? |
04:55.34 | tmzt | or mar: |
04:55.39 | xsacha-tv | do i need wifi turned on when i boot? cause i didnt for that last boot |
04:55.52 | tmzt | I think it was marex |
04:56.05 | tmzt | did you get a different response in dmesg? |
04:56.20 | xsacha-tv | the same -110 error |
04:56.39 | xsacha-tv | lol, there's that 110 |
04:57.04 | tmzt | if you know the gpio powering it off, booting, and powering it linux kernel would be better |
04:57.19 | xsacha-tv | ok |
04:57.32 | xsacha-tv | should i flip the gpio with .setpower or .init? |
05:01.30 | tmzt | not sure |
05:01.41 | tmzt | I would do it in board init for now |
05:03.44 | xsacha-tv | after eliminating touch gpio and LED gpio.. i get: 94 (once) 16 (4 times) 104 (twice) (11 18) (both twice) |
05:04.18 | xsacha-tv | so i think 94 |
05:05.00 | tmzt | during enabling/disabling wifi? |
05:05.04 | tmzt | ok |
05:05.15 | tmzt | okce? |
05:05.20 | tmzt | once? |
05:05.24 | tmzt | = 1 |
05:05.29 | tmzt | then = 0 |
05:05.36 | tmzt | does it strobe at all? |
05:05.46 | tmzt | = 0 turn off |
05:05.52 | tmzt | = 1 turn on? |
05:07.01 | xsacha-tv | no |
05:07.09 | xsacha-tv | just once.. the others go on/off though |
05:08.27 | xsacha-tv | and yeah it's 1 when it's on, 0 when it's off |
05:08.35 | xsacha-tv | so on init i set it to 1? |
05:10.39 | xsacha-tv | actually, sometimes it isnt trigged on init (it's already on?) |
05:11.05 | xsacha-tv | it isnt triggering at all now |
05:11.10 | *** join/#htc-linux tcccp (i=hey@223.66.238.89.arpa-addr.in) [NETSPLIT VICTIM] |
05:11.35 | xsacha-tv | oh nvm, it was combined with other gpios |
05:12.19 | tmzt | we might find it's a vreg on another chip |
05:13.53 | xsacha-tv | is there any way to activate it in haret (eg. vfb 0xa8e00008 4 0x407d0840 ?) |
05:14.15 | *** join/#htc-linux IceBone (n=IceBone@89-212-106-54.dynamic.dsl.t-2.net) [NETSPLIT VICTIM] |
05:15.28 | tmzt | how do you know the address? |
05:15.32 | xsacha-tv | doesnt seem to work.. when i dump i still get: a8e00008 | 007d0840 |
05:15.44 | xsacha-tv | because it says the address when i log gpios |
05:15.55 | xsacha-tv | 012.209 GPIOS a8e00008(94)=407d0840 |
05:16.03 | xsacha-tv | virt(gpio)=value |
05:16.29 | *** join/#htc-linux Nemesis|OFF (i=nemesis2@rand-des-wahnsinns.de) [NETSPLIT VICTIM] |
05:16.44 | tmzt | oh |
05:16.56 | xsacha-tv | thats the virt address of GPIOS(2) |
05:16.57 | tmzt | gedr? |
05:17.04 | tmzt | log is useless |
05:17.22 | tmzt | it doesn't log haretconsole only telnet (haret) |
05:17.25 | xsacha-tv | <PROTECTED> |
05:17.45 | tmzt | just do dump gpio |
05:17.57 | tmzt | is your haret patched for pxa3xx? |
05:18.08 | tmzt | not just console |
05:18.12 | xsacha-tv | dump gpio only goes up to gpio 83 |
05:18.21 | tmzt | and this is? |
05:18.25 | xsacha-tv | my haret is patched to recognise my processor |
05:18.28 | xsacha-tv | this gpio is 94 |
05:18.35 | tmzt | apt:pxa-gedr3? |
05:18.44 | xsacha-tv | theres no pxa specific dumps |
05:18.55 | tmzt | we need to teach it |
05:19.11 | tmzt | look at regs-pxa.py in haretconsole |
05:19.42 | xsacha-tv | yeah |
05:19.56 | xsacha-tv | <PROTECTED> |
05:21.49 | tmzt | apt: pxa-gedr3 is 0x40E0148 with bit offset 96 |
05:21.50 | apt | tmzt: okay |
05:26.59 | xsacha-tv | now what? |
05:28.04 | tmzt | dump that |
05:28.10 | xsacha-tv | gives 0 |
05:28.56 | xsacha-tv | 40e00148 | 00000000 |
05:30.22 | xsacha-tv | thats the value of gpio 96-98? |
05:31.09 | xsacha-tv | oh it's in GPIOS(3) |
05:32.31 | xsacha-tv | 3*32 + 48/4 is.. 108? |
05:32.44 | tmzt | ? |
05:32.52 | xsacha-tv | that address is the same value as gpio 108? |
05:32.57 | tmzt | no |
05:33.09 | tmzt | one bit of it is |
05:33.14 | tmzt | the first bit is 96 |
05:33.21 | xsacha-tv | k |
05:33.29 | xsacha-tv | 32-bits |
05:34.15 | tmzt | yeah, everything on arm is 32-bits |
05:34.21 | tmzt | aligned |
05:34.26 | xsacha-tv | then why is it all zeros? :\ weird |
05:34.39 | tmzt | oh |
05:34.45 | tmzt | gplr3 |
05:35.15 | xsacha-tv | 0x40E00100: ("GPLR3", regOneBits("GPIO", 96)), |
05:35.22 | xsacha-tv | yeah that's GPIOS(3) + 0 |
05:35.35 | xsacha-tv | the other one was GPIOS(3) + 12 sets of 32-bit |
05:36.01 | tmzt | apt: pxa-gplr3 is 0x40E00100 with bit offset 96 |
05:36.02 | apt | okay, tmzt |
05:36.25 | xsacha-tv | 40e00100 | 40001dd0 much better |
05:36.38 | tmzt | gplr is gpio level register |
05:36.48 | tmzt | gedr is gpio edge detect register |
05:38.07 | xsacha-tv | ok |
05:39.50 | xsacha-tv | so, what not? that wifi gpio was 94 |
05:39.53 | xsacha-tv | now |
05:41.25 | tmzt | gplr2 |
05:41.25 | tmzt | gplr3 - 4 |
05:41.26 | xsacha-tv | is 08 |
05:41.28 | xsacha-tv | it doesnt work like that i think |
05:41.30 | tmzt | ? |
05:41.35 | *** join/#htc-linux stickboy (n=anonymou@ool-457e4101.dyn.optonline.net) |
05:41.47 | xsacha-tv | it's on 08: 0x40E00008: ("GPLR2", regOneBits("GPIO", 64)), |
05:41.56 | tmzt | ok |
05:41.59 | tmzt | sorry |
05:42.13 | xsacha-tv | dont know why but it goes 0,4,8,100 |
05:42.38 | xsacha-tv | GPLR2: 40e00008 | 007d0840 |
05:42.47 | tmzt | apt: pxa-gplr2 is 0x40E00008 with bit offset 64 |
05:42.48 | apt | okay, tmzt |
05:43.47 | xsacha-tv | so it is 007d0840 and when gpio 94 is on, it'll be 407d0840 |
05:43.49 | tmzt | apt: learn regs-pxa.py from haret source |
05:44.09 | tmzt | sounds right |
05:45.45 | xsacha-tv | i cant fill it though? |
05:46.13 | tmzt | use gpsr2 |
05:46.22 | xsacha-tv | ah a set register |
05:46.27 | tmzt | but you have to read first |
05:46.37 | tmzt | orr then set |
05:46.52 | tmzt | gpcr to zero I think |
05:46.55 | *** join/#htc-linux stickboy (n=anonymou@ool-457e4101.dyn.optonline.net) |
05:46.56 | xsacha-tv | to make sure im enabling it, right? not disabling it |
05:47.00 | tmzt | read gplr |
05:47.10 | tmzt | set gpsr |
05:47.16 | tmzt | clear gpcr |
05:47.22 | tmzt | I think |
05:48.02 | xsacha-tv | ok that's how i'd do it in haret. but the pxa headers in kernel have a function for this already, right? |
05:49.24 | tmzt | yes |
05:49.28 | tmzt | gpio api |
05:49.37 | tmzt | didn't used to though |
05:49.46 | tmzt | hh.org still has GPSR |
05:49.50 | tmzt | in places |
05:50.06 | xsacha-tv | poodle.c: GPSR2 = 0x00000000; |
05:50.50 | xsacha-tv | #define GPSR2__REG(0x40E00020) |
05:51.22 | tmzt | yeah |
05:51.39 | xsacha-tv | #define GPCR2__REG(0x40E0002C) |
05:52.29 | xsacha-tv | pfb 0x40E00020 4 0x407d0840 |
05:52.40 | xsacha-tv | was this the wrong thing? my phone started vibrating lol |
05:55.12 | tmzt | cool |
05:55.18 | tmzt | what did you type? |
05:55.28 | tmzt | you found vibra |
05:55.37 | xsacha-tv | i already know vibra is gpio 79 |
05:55.47 | xsacha-tv | have it working in linux |
05:55.53 | tmzt | oh |
05:55.54 | tmzt | ok |
05:56.04 | xsacha-tv | this sets off vibra though: pfb 0x40E00020 4 0x407d0840 |
05:56.19 | tmzt | which bit? |
05:56.54 | xsacha-tv | well it was already 0x007d0840 so i figured i was only adding wifi |
05:57.15 | *** join/#htc-linux ImCoKeMaN (n=imcokema@pool-96-249-151-2.hrbgpa.fios.verizon.net) |
05:57.36 | tmzt | 0100 |
05:57.57 | tmzt | 65? |
05:58.13 | xsacha-tv | the way i understood it.. i read gplr2 (0x007d0840), then i OR on the bit i want to change... (0x407d0840) and i put that in gpsr2? |
05:58.31 | tmzt | yes |
05:58.35 | tmzt | no |
05:58.37 | xsacha-tv | but i get vibration :( |
05:58.56 | tmzt | only the bit you want to change |
05:59.18 | xsacha-tv | oh.. 0x40000000 ? |
05:59.36 | tmzt | yeah |
05:59.40 | tmzt | I think so |
05:59.46 | xsacha-tv | by the way, when i executed that pfb command, i was logging gpios and got: 004.502 GPIOS a8e00008(75 79 86 89 94)=407d8840 |
05:59.51 | xsacha-tv | where 79 is vibra |
06:00.14 | tmzt | you set all the ones |
06:00.17 | tmzt | but odd |
06:00.21 | xsacha-tv | 94 also triggers but no wifi :( |
06:00.25 | tmzt | why was it on anyway? |
06:00.38 | xsacha-tv | it's not, but i flipped it i guess |
06:01.15 | xsacha-tv | oh why was the bit set? |
06:01.34 | xsacha-tv | maybe 1 is off? |
06:06.00 | xsacha-tv | damn i gotta reboot |
06:06.07 | xsacha-tv | doesnt detect usb (86) anymore |
06:06.16 | xsacha-tv | oh i could set the bit.. ill try |
06:11.10 | xsacha-tv | what am i meant to send to gpcr2? i tried sending 0x400000 and the screen went sort of dark (like reduced gamma or something) |
06:13.07 | tmzt | not sure |
06:14.24 | xsacha-tv | pfb 0x40E0002C 4 0x00000000 |
06:14.40 | xsacha-tv | it didnt like this.. screen lost all its colour.. it is almost monochrome |
06:15.08 | xsacha-tv | screen had a heart attack, had to turn screen off and on again |
06:15.32 | tmzt | what register was that? |
06:15.37 | xsacha-tv | GPCR2 |
06:15.43 | tmzt | how are you connected? |
06:15.48 | xsacha-tv | usb |
06:16.00 | tmzt | and you didn't lose it? |
06:16.12 | xsacha-tv | i did when i turned screen off |
06:16.54 | xsacha-tv | these gpios came on when i did that pfb to GPCR2: 002.342 GPIOS a8e00008(80 83)=2140840 |
06:17.24 | tmzt | came on? |
06:17.32 | IamSOG | My friend ask me if HTC-Linux have Chinese version, or if it can read Chinese... so I just said it should be able to read UTF-8 |
06:17.33 | xsacha-tv | well flipped, i dont know what bit |
06:17.46 | tmzt | yeah |
06:17.55 | tmzt | but specifically what did he mean? |
06:18.04 | xsacha-tv | chinese fonts? |
06:18.14 | tmzt | and what device |
06:18.18 | xsacha-tv | or if instructions are in chinese? |
06:19.28 | IamSOG | HTC Universal |
06:20.12 | IamSOG | I think he mean if the device can display Chinese... I am not so sure, but I think if it's UTF8 the phone shold be able to display, but I am not sure what format they use in SMS |
06:20.15 | tmzt | what ui? |
06:20.24 | tmzt | yeah |
06:20.52 | xsacha-tv | i had a symbian device with onscreen keyboard for chinese speakers |
06:20.59 | xsacha-tv | it had options of strokes or pinyin |
06:21.02 | IamSOG | Chinese speakers ? |
06:21.03 | xsacha-tv | and also handwriting |
06:21.05 | IamSOG | Oh.. |
06:21.21 | xsacha-tv | the handwriting is crazy.. they can write a full sentence in seconds on it |
06:21.37 | IamSOG | but he was asking me about HTC-linux :D |
06:21.38 | tmzt | it runs linux with framebuffer |
06:21.50 | tmzt | console supports utf8 iptionally |
06:21.53 | IamSOG | write ??? um.. gonan be slow ? |
06:22.00 | tmzt | (debian uses it) |
06:22.05 | tmzt | you can runX |
06:22.07 | tmzt | X |
06:22.27 | IamSOG | But I though Debian can't load on HTC-universal with phone function ? |
06:22.33 | tmzt | there are many toolkits each with varying levels of support |
06:22.48 | tmzt | it should |
06:22.52 | tmzt | try titchy |
06:22.57 | tmzt | or work on fso |
06:23.11 | tmzt | ph5 is fixing upstream linux so it works soon |
06:23.25 | tmzt | not for uni but similar devices |
06:23.44 | IamSOG | fso? um... don't want to mess up my current setup :D but he ask me about reading and writing Chinese. so I said it should be able to do it, I think he will try to install it |
06:23.48 | tmzt | can't remeber what's missing on uni |
06:24.11 | tmzt | and new wifi driver should work with modifcations |
06:24.19 | tmzt | what do you have now? |
06:24.56 | tmzt | uni uses n-tihtc ldisc I think |
06:25.00 | IamSOG | I do, but I havne't install linux on mine yet, Because I need the tone generator programs |
06:25.01 | tmzt | routing works |
06:25.14 | tmzt | does sound work? |
06:25.19 | IamSOG | I think Uni is missing the front and back cam drivers |
06:25.23 | IamSOG | sound works |
06:25.27 | tmzt | use xmms tone://one,two |
06:25.51 | tmzt | what tone generator do you use? |
06:25.58 | IamSOG | but I mean I need like differnet Hz of Tones like 10,000 Hz tones.. etc |
06:26.20 | tmzt | tone://10000 |
06:26.42 | tmzt | if you want dtmf use the component tones |
06:26.52 | tmzt | what tone generator do you use now? |
06:27.06 | IamSOG | I am using Debian on this laptop too, how to do that ? |
06:27.17 | tmzt | install xmms |
06:27.19 | IamSOG | just tone://1000 on console ? |
06:27.20 | tmzt | or beep |
06:27.22 | tmzt | no |
06:27.29 | xsacha-tv | xmms tone://10000 |
06:27.37 | tmzt | I wanted to add it to mplayer |
06:27.42 | tmzt | never did though |
06:27.46 | IamSOG | I see ! |
06:27.48 | tmzt | gstreamer will do it |
06:28.21 | *** join/#htc-linux Echo31 (n=olivier@mir31-4-82-240-194-54.fbx.proxad.net) |
06:28.28 | IamSOG | I forgot which tone generator software I am using... something like GCC or HCC Generator free softwares |
06:28.45 | IamSOG | thanks, I will try it on this laptop |
06:31.27 | tmzt | there's also graph based programs |
06:31.34 | tmzt | sc and the gnome one |
06:31.41 | IamSOG | really ? |
06:31.55 | tmzt | supercollider |
06:32.10 | tmzt | can't remeber what the other one is called |
06:32.31 | tmzt | it's cool, you can setup envolopes, multiplies, adders, etc. |
06:32.56 | tmzt | sign |
06:33.00 | tmzt | sin |
06:33.03 | tmzt | sine |
06:33.07 | IamSOG | I see... thanks tmzt |
06:33.26 | tmzt | it should work on uni also |
06:33.33 | tmzt | make the file and just run it |
06:34.45 | IamSOG | didn' tknow hwo to complie yet :D |
06:34.52 | IamSOG | don't know how to * |
06:35.06 | tmzt | use debian armel |
06:35.10 | tmzt | it's available |
06:35.19 | tmzt | know what the gnome one is called? |
06:37.29 | IamSOG | by the way, do you know of a Tone Analizer ? |
06:38.04 | tmzt | no |
06:38.09 | tmzt | would like one |
06:38.31 | tmzt | tried to build a software dtmf decoder |
06:38.39 | tmzt | but didn't get anywhere |
06:38.57 | tmzt | I guess you use libfft |
06:39.00 | tmzt | tfft |
06:40.06 | IamSOG | I see |
06:40.25 | IamSOG | aahhh I have xmms installed, just didn't know they have that funtion |
06:41.39 | xsacha-tv | gpio_set_value(gpio_wifi, 1) <-- right? |
06:50.14 | tmzt | yes |
06:50.33 | tmzt | but please use GPIOnn-wifi-power define |
06:50.49 | tmzt | GPIOnn-sghi780-wifi-power |
06:51.04 | xsacha-tv | with hyphens? never seen one like that |
06:51.17 | tmzt | underscore |
06:51.24 | tmzt | I'm on a phone |
06:51.30 | lama | tmzt check engadget |
06:51.35 | xsacha-tv | oh ok |
06:51.35 | tmzt | ? |
06:51.41 | lama | omnia with android is coming |
06:51.51 | tmzt | ok |
06:52.06 | tmzt | you have i780? |
06:52.20 | xsacha-tv | it may not be like omnia at all though, different camera for example |
06:52.23 | lama | yes |
06:52.28 | xsacha-tv | only thing we know is similar is processor |
06:52.34 | tmzt | it's going well. xsacha is doing good work |
06:53.20 | xsacha-tv | should i create some header file for all these defines? |
06:53.54 | tmzt | no |
06:54.05 | tmzt | put thosen the board |
06:54.22 | xsacha-tv | the #define? ok |
06:54.39 | xsacha-tv | by the way i combined my board with the omnia i900 board because most the stuff was identical, is that ok? |
06:54.47 | tmzt | good |
06:55.02 | tmzt | let's envolve stefenshmidt then |
06:57.40 | xsacha-tv | this is what i have: http://pastebin.com/m5c02fd22 |
06:58.51 | xsacha-tv | the only things that change dependent on i780/omnia are some LEDs, screen and keypad |
06:59.47 | xsacha-tv | also the audio gpio (which i dont have there yet).. 19 for i780, 17 for i900 |
07:01.16 | xsacha-tv | oops i dont need that gpio_free do i? |
07:01.56 | tmzt | no |
07:02.03 | tmzt | well |
07:02.08 | tmzt | too tired to look |
07:02.20 | tmzt | use free if you used request |
07:03.18 | xsacha-tv | yeah i didnt request |
07:12.54 | xsacha-tv | lama, someone wants to try it on their SCH-m480 (like i770... CDMA i780) |
07:13.12 | xsacha-tv | http://wmpoweruser.com/?tag=samsung-sch-m480 |
07:13.50 | tmzt | Saga? |
07:13.59 | xsacha-tv | the i770 has a dpad instead of optical mouse.. but as far as i can tell, this one is identical to i780 (with cdma instead of gsm) |
07:14.00 | tmzt | pretty sure thatqs msm |
07:14.15 | tmzt | oh |
07:14.29 | lama | iirc saga and epix have different cpus |
07:14.37 | xsacha-tv | what is saga? |
07:14.51 | lama | i770 |
07:15.01 | xsacha-tv | oh ok |
07:15.15 | xsacha-tv | epix is i780 with a different battery, right? |
07:15.51 | lama | no |
07:16.02 | lama | those are three different devices |
07:16.20 | xsacha-tv | what other changes? |
07:16.22 | lama | there are internal and external differences |
07:16.41 | lama | saga has jack for example |
07:16.49 | lama | 2.5mm iirc |
07:17.22 | lama | different keys layout |
07:17.31 | lama | epix has two more keys |
07:17.40 | tmzt | you're saying Saga is pxa basex? |
07:17.42 | lama | no front camera |
07:17.55 | lama | not sure |
07:18.08 | lama | it is not 62mhz |
07:18.13 | lama | 620 |
07:18.14 | xsacha-tv | saga is msm |
07:18.31 | xsacha-tv | 400MHz Qualcomm MSM7500 |
07:18.36 | lama | 400mhz or something like that |
07:18.46 | lama | yeah |
07:19.04 | xsacha-tv | epix is pxa311 thougg |
07:19.11 | xsacha-tv | same with the sch-m480 |
07:19.22 | xsacha-tv | sch-m480 really does look identical |
07:19.33 | tmzt | right |
07:19.45 | tmzt | m480 is 6800? |
07:19.58 | xsacha-tv | m480 isnt pxa? |
07:20.29 | tmzt | baseband |
07:21.25 | lama | blog.geeksphone.com/ |
07:21.32 | xsacha-tv | dont know |
07:21.41 | lama | geeksphone.com/ |
07:21.48 | xsacha-tv | but epix is the same as i780 (different battery, 2 extra keys) |
07:22.38 | lama | no front camera |
07:22.46 | xsacha-tv | oh |
07:23.18 | xsacha-tv | LED is on opposite side, but same stuff |
07:23.49 | lama | same bug with leds in wm;) |
07:24.25 | lama | but epix has even more bugs ;) |
07:24.28 | xsacha-tv | ;P |
07:24.33 | xsacha-tv | it's ok, linux wont have that bug |
07:24.41 | xsacha-tv | yeah i saw modaco forums.. epix has hundreds of bugs! lol |
07:25.40 | xsacha-tv | and a lot complain about battery life which is weird because their battery is meant to be 1800mah? |
07:26.02 | lama | yeah stronger battery |
07:26.04 | xsacha-tv | my 1480mah lasts a full 5 days |
07:26.16 | lama | i dont count it |
07:26.26 | lama | damn good as for wm phone |
07:26.50 | lama | and you get 2 bats and external charger |
07:26.53 | xsacha-tv | gps only lasts for 5-6 hours though |
07:26.55 | lama | psu is small |
07:26.56 | IamSOG | 5 days ??? on which Device ? I was thinking about homemade some Lithium Battery and boost it up to 4000ma |
07:27.01 | xsacha-tv | yeah 2 batteries :D and usb charging |
07:27.04 | lama | never had any power issues |
07:27.16 | xsacha-tv | they make sure you're well supplied |
07:27.32 | lama | samsung i780 |
07:27.41 | IamSOG | Oh... |
07:27.45 | xsacha-tv | IamSOG, thats using wifi sparingly (that is not push email) and not using gps though |
07:27.51 | IamSOG | I though it's HTC Device :D |
07:27.55 | xsacha-tv | calling pretty frequently and texting frequently though |
07:28.26 | lama | well i get 2u3 days |
07:28.31 | lama | 2-3 |
07:29.03 | lama | but with such use i was running out of the battery at the end of day;) |
07:29.13 | xsacha-tv | gps? |
07:29.18 | IamSOG | I just remember if I use the device hard, my univeral get 1 - 2 days with a 3xxxma Battery |
07:29.31 | xsacha-tv | gps slaughters the battery on earlier ROMs.. it was only lasting 4 hours |
07:29.44 | lama | gps is up to 5h |
07:29.47 | IamSOG | ya, not all phone have FPS though |
07:30.01 | lama | depends on other things used |
07:30.15 | lama | so for gps you have to charge |
07:30.19 | IamSOG | GPS* |
07:30.37 | xsacha-tv | i notice looking at the back of the device.. there is an indent because the battery is smaller than it could be.;. |
07:30.44 | lama | i use mp3, leave edge always on |
07:30.51 | xsacha-tv | they could have made battery larger and made the back flush |
07:31.18 | lama | and brigtness on max setting |
07:31.31 | xsacha-tv | i guess they did that for epix |
07:31.42 | xsacha-tv | i leave brightness on min because max is so damn bright |
07:31.50 | xsacha-tv | and nothing helps you for daylight any way |
07:32.01 | lama | i dont care if it will be 2 or 4 days there is always second battery fully charged |
07:33.07 | xsacha-tv | samsung are totally missing the plot.. you're meant to lock the battery in there and force your users to buy an $80 battery off you lol |
07:33.22 | lama | i wish there would be wm or android phone in palm pre shape |
07:33.41 | xsacha-tv | pebble slider |
07:34.10 | lama | there was blue angel |
07:34.50 | lama | huge and qvga |
07:36.12 | tmzt | pre could run android |
07:36.17 | tmzt | why though |
07:37.12 | xsacha-tv | <4>mmc_rescan: card ocr from io_op=0x00000080, err = 0 <--- 1.8V, no error |
07:37.41 | xsacha-tv | <7>mmc1: clock 304688Hz busmode 1 powermode 2 cs 0 Vdd 7 width 0 timing 0 <-- straight after previous message |
07:37.57 | xsacha-tv | <7>mmc1: clock 0Hz busmode 1 powermode 0 cs 0 Vdd 0 width 0 timing 0 <-- 1 second later (100 lots of 10ms delay?) |
07:38.08 | xsacha-tv | <3>mmc1: error -110 whilst initialising SDIO card |
07:39.32 | xsacha-tv | any ideas? |
07:40.18 | xsacha-tv | if it helps, i believe setpower(7) is called before that first one and setpower(0) called before the next one |
07:41.20 | xsacha-tv | mmc2 does the exact same process |
07:41.49 | tmzt | width0? |
07:42.04 | tmzt | where are you setting ocr? |
07:42.18 | tmzt | I think you need embeddedsdio pdata |
07:42.31 | tmzt | to set width to 4 |
07:42.36 | xsacha-tv | do you mean this? .ocr_mask = MMC_VDD_165_195, |
07:42.43 | tmzt | no |
07:43.00 | xsacha-tv | mmc/core/sdio.c sets ocr |
07:43.06 | tmzt | look at trout |
07:43.29 | xsacha-tv | by the way, if it helps: mmc0 gets this: <4>mmc_rescan: card ocr from io_op=0x000001aa, err = -110 |
07:43.50 | xsacha-tv | <7>mmc0: clock 26000000Hz busmode 2 powermode 2 cs 0 Vdd 20 width 2 timing 2 |
07:43.51 | xsacha-tv | <6>mmc0: new high speed SDHC card at address d555: n<6>mmcblk0: mmc0:d555 SU08G 7.60 GiB |
07:44.16 | xsacha-tv | so my sd card gets -110? :\ |
07:45.10 | xsacha-tv | include/config/mach/trout.h ? |
07:46.25 | xsacha-tv | hmm empty files with my board in there, weird |
07:48.32 | xsacha-tv | i see trout in mach_types but there's no board for it |
07:54.08 | tmzt | ltg or android git |
07:54.36 | tmzt | width 2? |
07:55.55 | xsacha-tv | yeah |
07:56.03 | xsacha-tv | im using android git.. no trout? :\ |
07:58.10 | tmzt | board-trout |
07:58.18 | tmzt | oh |
07:58.25 | tmzt | your using gneric |
07:58.33 | tmzt | you need htc |
08:05.32 | *** join/#htc-linux pe7er (n=Adium@f053195126.adsl.alicedsl.de) |
08:07.06 | xsacha-tv | oh ok |
08:07.06 | xsacha-tv | i dont need to checkout htc do i? just need to grab the trout.c? |
08:08.58 | xsacha-tv | works for i780 |
08:09.04 | xsacha-tv | oops |
08:13.53 | tmzt | ? |
08:13.58 | tmzt | use gitweb |
08:14.12 | tmzt | or clone your cloned tree |
08:16.05 | xsacha-tv | yeah |
08:16.19 | xsacha-tv | so i dont need to compile with htc tree? nothng i need in it |
08:18.50 | tmzt | no |
08:19.09 | tmzt | just look at the file |
08:21.38 | xsacha-tv | is it msm branch? |
08:31.14 | tmzt | yes |
08:31.34 | tmzt | not generix git |
08:31.38 | tmzt | that's old |
08:31.59 | xsacha-tv | ow |
08:33.21 | xsacha-tv | arch/arm/mach-msm/board-trout-gpio.c ? |
08:38.27 | xsacha-tv | http://android.git.kernel.org/?p=kernel/msm.git;a=blob;f=arch/arm/mach-msm/board-trout-mmc.c -mmc? |
08:50.46 | *** join/#htc-linux Zoolooc (n=fredsiba@nrbg-4dbff545.pool.einsundeins.de) |
09:01.43 | *** join/#htc-linux ccube_ (n=ccube@ssh.ccube.de) |
09:10.32 | *** join/#htc-linux pleemans (n=toi@d54C2AAB7.access.telenet.be) |
09:13.24 | *** join/#htc-linux pH5 (n=ph5@e178205188.adsl.alicedsl.de) |
09:14.24 | *** join/#htc-linux chab7 (n=kvirc@fibhost-67-206-132.fibernet.bacs-net.hu) |
09:29.00 | *** join/#htc-linux goxboxlive (n=goxboxli@140.84-48-184.nextgentel.com) |
09:31.49 | *** join/#htc-linux kiozen (n=oeichler@rgnb-5d87c2a0.pool.einsundeins.de) |
10:11.15 | *** join/#htc-linux BabelO (n=fcr@unaffiliated/babelo) |
10:27.17 | *** join/#htc-linux ptitjes (n=didier@AVelizy-154-1-100-9.w90-2.abo.wanadoo.fr) |
10:51.21 | *** join/#htc-linux dzo_ (n=dzo@121-98-128-127.bitstream.orcon.net.nz) |
10:52.27 | [OpenSys] | is possible to install the circular zoom on htc magic vodafone by google ? |
11:30.34 | *** join/#htc-linux cr2 (n=cr2@ip-90-187-226-68.web.vodafone.de) |
11:38.46 | *** join/#htc-linux dzo (n=dzo@121-98-128-127.bitstream.orcon.net.nz) |
11:39.58 | dcordes | morning |
11:41.16 | xsacha-tv | hi |
11:44.14 | dcordes | xsacha-tv: how are your interfaces ? |
11:45.58 | xsacha-tv | is that a new greeting? :P |
11:46.26 | dcordes | lol yea |
11:47.40 | xsacha-tv | my wifi is a little skinny |
11:48.01 | xsacha-tv | <7>mmc1: clock 304688Hz busmode 1 powermode 2 cs 0 Vdd 7 width 0 timing 0 |
11:48.05 | xsacha-tv | its width is 0 |
11:52.52 | *** join/#htc-linux onen|openBmap (n=quassel@p57BC7EE2.dip.t-dialin.net) |
11:53.21 | dcordes | xsacha-tv: does it suffer bulimia |
11:54.31 | xsacha-tv | any ideas how to fatten 'er up to atleast size 2? |
11:54.41 | *** join/#htc-linux MethoS (n=clemens@dyndsl-085-016-165-155.ewe-ip-backbone.de) |
11:54.52 | dcordes | fear not |
12:09.40 | dcordes | cr2: how do you add the password? |
12:16.07 | Echo31 | Hi all |
12:21.32 | dcordes | hi Echo31 |
12:22.36 | Echo31 | hi dcordes |
12:27.41 | Echo31 | Hi cr2:pH5: I makes an athena patch from the pH5 dev repository. |
12:27.42 | Echo31 | I have not yet understood why the cpld2 (from hx4700) does not work. Perhaps the gpio_base is not correct. |
12:28.21 | dcordes | Echo31: cr2 documented some athena stuff in the http://htc-linux.org/wiki |
12:38.05 | dcordes | NetRipper: still have the cr2 or other working rapheael .config? the paste was removed |
13:25.52 | *** join/#htc-linux Squarc (n=Squarc@82-217-32-29.cable.quicknet.nl) |
13:35.52 | *** join/#htc-linux MethoS- (n=clemens@dyndsl-085-016-163-188.ewe-ip-backbone.de) |
14:23.02 | *** join/#htc-linux onen|openBmap (n=quassel@p57BC7EE2.dip.t-dialin.net) |
14:44.20 | *** join/#htc-linux pleemans (n=toi@d54C2AAB7.access.telenet.be) |
14:44.50 | *** join/#htc-linux Echo31 (n=olivier@mir31-4-82-240-194-54.fbx.proxad.net) |
15:09.55 | *** join/#htc-linux cmonex (n=xy6091@bdhjfo5bvz.adsl.datanet.hu) |
15:11.20 | *** join/#htc-linux onen|openBmap_ (n=quassel@p57BC63D7.dip.t-dialin.net) |
15:55.01 | *** join/#htc-linux Squarc (n=Squarc@82-217-32-29.cable.quicknet.nl) |
15:55.45 | *** join/#htc-linux Squarc (n=Squarc@82-217-32-29.cable.quicknet.nl) |
15:59.52 | *** join/#htc-linux Squarc (n=Squarc@82-217-32-29.cable.quicknet.nl) |
16:03.10 | *** join/#htc-linux skodde (n=skodde@unaffiliated/skodde) |
16:05.28 | *** join/#htc-linux mickey_jaw1 (n=mike@78-105-123-214.zone3.bethere.co.uk) |
16:25.32 | *** join/#htc-linux StarLite (n=nnscript@s55916ca6.adsl.wanadoo.nl) |
16:26.10 | *** join/#htc-linux MethoS (n=clemens@dyndsl-085-016-163-188.ewe-ip-backbone.de) |
16:31.57 | Echo31 | cr2:pH5: I made an athena patch from the pH5 dev repository. http://fr.pastebin.ca/1477478 |
16:32.50 | Echo31 | ccr2: pH5: I have not yet understood why the cpld2 (from hx4700) does not work. I am stopped. |
16:35.29 | *** join/#htc-linux BHSPitLappy (n=BHSPitLa@unaffiliated/bhspitmonkey) |
16:42.30 | dcordes | Echo31: wiki didn't help? |
16:42.32 | *** join/#htc-linux marmotta (n=skodde@unaffiliated/skodde) |
16:44.30 | cr2 | Echo31: can you post the gitweb link to hx4700.c file ? |
16:44.44 | cr2 | dcordes: should i repost my .config ? |
16:46.28 | Echo31 | dcordes: ok , th link is http://git.linuxtogo.org/?p=ph5/kernel.git;a=blob;f=arch/arm/mach-pxa/hx4700.c;h=ae0cf50896e943b1a107e9f64b3f0faa75d46959;hb=dev |
16:49.23 | Echo31 | dcordes: find the .config http://fr.pastebin.ca/1477493 |
16:49.57 | cr2 | Echo31: .config for raph100 ? |
16:51.28 | Echo31 | cr2: .config for athena |
16:53.46 | cr2 | Echo31: he talked about raph100 |
16:55.46 | *** join/#htc-linux pe7er (n=Adium@f053195126.adsl.alicedsl.de) |
16:56.21 | cr2 | Echo31: +static struct htc_egpio_chip egpio_cpld2_chips[] = { |
16:56.39 | cr2 | [0] = is missing |
16:57.10 | dcordes | cr2: yes please |
16:58.00 | cr2 | Echo31: where is HX4700_EGPIO_BASE defined |
16:58.04 | Echo31 | cr2: is it necessary ? however i tried also with [0] |
16:58.20 | cr2 | don't know, just want some uniformity |
16:58.24 | cr2 | 377 .name = "htc-egpio", |
16:58.25 | cr2 | 378 .id = -1, |
16:58.39 | cr2 | don't forget that we will have 2 .ids here |
16:58.49 | Echo31 | cr2: it is HX4700_EGPIO_BASE(HX4700_ASIC3_GPIO_BASE + ASIC3_NUM_GPIOS) |
16:59.33 | cr2 | and what are these ? |
17:00.10 | Echo31 | cr2: ASIC3_NUM_GPIOS = 64 |
17:00.21 | cr2 | it's ok |
17:00.36 | cr2 | 4 banks of 16 gpios |
17:02.15 | *** join/#htc-linux pe7er (n=Adium@f053195126.adsl.alicedsl.de) |
17:04.30 | tmzt | cr2: do you understand python? |
17:04.50 | tmzt | tuples, etc. |
17:05.10 | cr2 | dcordes: https://privatepaste.com/d0RWu5V80E |
17:05.16 | *** join/#htc-linux pleemans (n=toi@d54C2AAB7.access.telenet.be) |
17:05.48 | cr2 | tmzt: not really. i'm a lowlevel man :) and dislike highlevel languages. |
17:06.02 | *** join/#htc-linux Kevin2 (n=Kevin2@207-237-194-161.c3-0.avec-ubr2.nyr-avec.ny.cable.rcn.com) |
17:06.49 | xsacha-tv | python is similar to c++ |
17:06.57 | xsacha-tv | with syntax |
17:07.35 | tmzt | Kevin2: good, you wrote tthis stuff :) |
17:07.48 | tmzt | trying to add mfp to haretconsole |
17:08.16 | Kevin2 | tmzt: Hi |
17:08.42 | tmzt | I understand regTwoBits and have added something similar keyed for (number, name, direction) |
17:09.23 | tmzt | but I'm trying to test my code with what I think should be a list of addrs, values |
17:09.32 | tmzt | and I can't iterate it |
17:10.28 | tmzt | probably because it's a tuple |
17:10.39 | dcordes | cr2: wanna test initrd? |
17:10.57 | tmzt | so I need to convert it to to the python equivalent of an assoc array |
17:11.41 | cr2 | dcordes: yes. |
17:14.14 | Kevin2 | tmzt: Can you pastebin a sample of what you're trying to do? |
17:14.34 | tmzt | that's kind of hard |
17:14.44 | tmzt | got the iterator working though |
17:15.37 | dcordes | ~seen eway |
17:15.38 | apt | eway <n=ellis@80-46-67-47.static.dsl.as9105.com> was last seen on IRC in channel #htc-linux, 87d 21h 19m 59s ago, saying: 'evenin all'. |
17:16.39 | tmzt | I need to convert your ((bit1,bit2), 'AFxx') into something I can key my list of (num, af, dir): ('GPIOxx GPIO', 'GPIO', 'out' on |
17:16.47 | tmzt | so it's a regex I need |
17:19.16 | Kevin2 | tmzt: I'm not sure I understand. The regTwoBits function just defines a series of registers each two bits in length and each name that has a suffix of an integer. What kind of registers are you trying to define? |
17:20.08 | tmzt | the same registers, GAFR and GPDR but I need to take a list of values for those registers and convert it to the proper macros for a linux pinconfig |
17:20.44 | Echo31 | cr2: I will define id=0 for cpld1 and id=1 for cpld2 |
17:20.54 | tmzt | I think I have it, I need a mask and shift |
17:22.05 | tmzt | I still don't understand the proper way to convert 'AF11' into 11 |
17:23.28 | tmzt | I could use split('AF',1) |
17:23.28 | Kevin2 | tmzt: I still don't understand. Can you describe how the bits in the register are arranged? |
17:23.47 | tmzt | ok |
17:24.05 | tmzt | the register is the pxa alt function and directions registers |
17:24.08 | dcordes | cr2: http://linuxtogo.org/~lgorris/misc/initrd-new |
17:24.48 | Kevin2 | tmzt: Is this pxa27x or pxa3xx? |
17:25.09 | tmzt | the diference is I don't just want to dump the bits, I want to teach it the linux macros (like GPIO11 GPIO) to use in a pinconfig |
17:25.13 | tmzt | pxa27x |
17:25.43 | Kevin2 | What is a pinconfig? |
17:25.45 | tmzt | I want to add a 'dump mfp' command to haret console |
17:26.54 | tmzt | static unsigned long magician-pin-config[] = { |
17:26.56 | cr2 | dcordes: give it a more speaking name |
17:27.19 | tmzt | <PROTECTED> |
17:27.23 | cr2 | dcordes: because i'll forget what initrd-new means next day |
17:27.25 | tmzt | } |
17:27.43 | tmzt | I want to generate those macros automatically |
17:28.21 | dcordes | cr2: initrd-vodafone ^^ |
17:28.36 | cr2 | dcordes: and date |
17:28.59 | dcordes | good |
17:29.30 | tmzt | ah |
17:29.34 | tmzt | bitDecode |
17:31.02 | *** join/#htc-linux darkstar62 (n=darkstar@97-126-107-190.tukw.qwest.net) |
17:31.23 | cr2 | Kevin2: is it possible to run 'client-side' scripts with haretconsole ? like "console $ip debug.scr" ? |
17:31.57 | cr2 | Kevin2: i don't remember if telnet can transfer files, but we can teach it uucp :) |
17:32.28 | Kevin2 | cr2: That would be a cool idea - transfer files via haret's console. |
17:33.01 | Kevin2 | cr2: I'm not sure what you mean by client-side script. Scripts that run on the host machine, or scripts that run on the target phone? |
17:33.01 | cr2 | dcordes: much smaller initrd ? |
17:33.05 | tmzt | ymodem |
17:34.27 | tmzt | Kevin2: if I understand this correctly, the bit definitions are only used for tracing? |
17:34.41 | tmzt | I need to be able to use them for dumping as well |
17:35.17 | tmzt | so that haretconsole will send a pd and then parse the response |
17:35.30 | *** join/#htc-linux cr2 (n=cr2@ip-90-187-226-68.web.vodafone.de) |
17:36.02 | Kevin2 | tmzt: The current haretconsole architecture just reads a line, optionally manipulates that line, and then writes the line. You'd need some infrastructure work to accumulate the info and then dump it in a unified form. |
17:36.56 | tmzt | the linux headers have #define macros for the alt functions in the form I pasted earlier |
17:36.58 | Kevin2 | tmzt: You might want to just post-process the log file, like scanserial.py does. That will give you more control over the code flow. |
17:37.04 | *** join/#htc-linux pleemans (n=toi@d54C2AAB7.access.telenet.be) |
17:37.05 | tmzt | yeah |
17:37.40 | tmzt | it's standalone for now, but I want to take the register definitions form harets regs-*.py files |
17:38.04 | Kevin2 | Are you just getting info from the .py files, or is it also info from haret? |
17:38.31 | tmzt | I'm just using something like this: |
17:38.41 | tmzt | vals = { |
17:38.49 | tmzt | <PROTECTED> |
17:38.53 | tmzt | } |
17:39.15 | tmzt | then for k in vals.keys(): |
17:39.56 | tmzt | then using something like handleMem which iw what I'm replacing |
17:40.26 | cr2 | dcordes: can't connect with ssh over usb |
17:40.46 | tmzt | the tuple I'm currently using is |
17:41.45 | cr2 | dcordes: what ip does it have ? |
17:42.12 | tmzt | {(0,0): ('GPIO0_GPIO', 'GPIO', 'out')} |
17:42.38 | tmzt | of the format: |
17:43.16 | tmzt | num,af: name,number,pinmode, direction |
17:43.35 | tmzt | that will have to be num,af,dir though |
17:44.25 | tmzt | def gpioMfp(name, number, af, pinmode, direction: |
17:45.40 | tmzt | <PROTECTED> |
17:45.51 | cr2 | dcordes: i get a lot of ifconfig errors , like eth0 No such device |
17:46.07 | tmzt | gpios = { |
17:47.01 | tmzt | <PROTECTED> |
17:47.06 | tmzt | } |
17:47.08 | Kevin2 | tmzt: Can you describe the high-level goal? |
17:47.33 | cr2 | dcordes: and the permissions on /dev/smd* should be uucp.uucp |
17:47.58 | tmzt | I want to be able to convert a tuple of (addr,val) into the int array used by linux to configure gpios |
17:48.30 | tmzt | the ints are bit masks containing gpionum altfunction and direction |
17:48.51 | cr2 | Kevin2: some kind of non-stream command postprocessing will be the best. |
17:49.01 | tmzt | I want it to generate the c source that needs to be included |
17:50.07 | Kevin2 | tmzt: I'm kinda confused. Can you describe the really high-level goal - something like: A user must do X today, and that's a pain, so lets write a script that gathers info from A, B, and C and outputs D. That way the user will only have to do Y. |
17:50.54 | tmzt | every time we add a new board for a ce device based on pxa we have to figure out the altfunctions used by ce |
17:51.44 | tmzt | this has been done before for the hh.org syntax (dump gpios) and I want to add support for the new 2.6.16+ syntax |
17:51.44 | cr2 | dcordes: there is no ip assigned to raph in your initrd |
17:52.04 | tmzt | dump gpiost I mean |
17:53.11 | tmzt | as it stands the process consists of dumping the registers as hex, parsing each pair of bits, and finding the define in on or more kernel headers for the particular altfunction |
17:53.17 | cr2 | Kevin2: and i'd like to have two things: send a client-side script, and do some postprocessing |
17:53.20 | tmzt | I just want to automate that |
17:53.21 | Kevin2 | cr2: Yes - it would be nice. In particular some really important values (like timers) can only be inferred from reads of multiple registers. It would be nice if haretconsole could track all that info and produce high level reports. |
17:53.47 | cr2 | tmzt: it's more of less means : dump some memory location, and do some postprocessing |
17:53.59 | tmzt | yes |
17:54.11 | tmzt | but the data is in multiple locations |
17:54.20 | tmzt | alft function in gafr |
17:54.29 | cr2 | Kevin2: is it possible to define user variables in haret ? |
17:54.33 | tmzt | direction in gpdr |
17:54.49 | cr2 | like set MYVAR=`pd 0x0 4` |
17:54.57 | Kevin2 | tmzt: Got it. You want to dump the direction and alt-function registers and then produce a linux config file with that info. |
17:55.03 | tmzt | yes |
17:55.09 | cr2 | i'm exaggerating a bit of course :) |
17:55.24 | tmzt | cr2: you mean eval() ? |
17:55.37 | Kevin2 | cr2: User variables are there - just use SET X="abc". |
17:55.48 | cr2 | tmzt: it was done in C code inside haret before, but it's not flexible |
17:56.13 | tmzt | yes, and I need to work with offline dumps as well anyway |
17:56.17 | cr2 | Kevin2: abc can be the contents of a memory location ? |
17:57.02 | Kevin2 | cr2: User variables are present. I don't think there is any way to assign a variable to the output of a command. |
17:57.04 | cr2 | i can do print "%x" 0x08000000 now |
17:57.17 | NetRipper | dcordes, yes, should i commit it as the gnu/linux defconfig? |
17:57.57 | cr2 | Kevin2: set X=0x800 or set X=[0x800] ? |
17:58.41 | Kevin2 | cr2: To assign X the value of 0x800, run "SET X 0x800". |
17:58.48 | cr2 | Kevin2: the haret grammar was a bit cryptic. and the original docs said it was done on intent ;) |
17:58.54 | tmzt | I think this should be as simple as (num,af,dir) : pinmode |
17:59.03 | NetRipper | heh cr2 also following the fmradio thread i see |
17:59.03 | NetRipper | :) |
17:59.29 | cr2 | NetRipper: can you add fmradio support to haret ? :) |
17:59.45 | NetRipper | kidding, right? |
17:59.46 | cr2 | NetRipper: using the FMS.dll api |
17:59.51 | cr2 | LOL!!! |
18:00.09 | NetRipper | never know with you |
18:00.10 | Kevin2 | cr2: I didn't really change the haret grammar. The only reason I know of for it's current state is that it's a pain to implement a nice grammar. The current grammar just evolved by adding small incremental hacks. |
18:00.29 | tmzt | pinmode being my name for the second part of the kernel macro (GPIO, FFUART-CTS, I2C-SCL, etc.) |
18:00.56 | cr2 | Kevin2: is the gdb grammar powerful enough for such task ? |
18:01.02 | tmzt | could use * to denote value |
18:01.38 | tmzt | *0xa0000000 |
18:01.39 | cr2 | NetRipper: btw, why not add an FM command to haret ? |
18:01.46 | NetRipper | cr2, to do what? |
18:01.53 | NetRipper | it's very htc specific |
18:02.21 | cr2 | NetRipper: to do some hardware action. |
18:02.39 | NetRipper | besides he didn't publish the GFMAPI source, which is the one that interacts with FMS.dll |
18:02.46 | cr2 | NetRipper: like we have 'setlcd' 'nled' |
18:03.01 | cr2 | NetRipper: i think i've asked him, and he published it ? |
18:03.21 | NetRipper | oh, wasn't in first post |
18:03.38 | NetRipper | didn't read through the whole thread since i started barging in |
18:03.47 | cr2 | ok |
18:04.08 | cr2 | the first thing to do after making bt work, is to load the fm .bts :) |
18:04.32 | NetRipper | .bts? |
18:05.35 | cr2 | bluetooth script |
18:05.36 | NetRipper | anyway im working on a c# wrapper for the gfmapi.dll at the moment.. i want to have traffic information while im on the road :p |
18:05.58 | Kevin2 | tmzt: The "(num,af,dir) : pinmode" seems okay to me - you'll need to also somehow map "num" to the gpio registers, but that shouldn't be too hard. |
18:06.16 | cr2 | well, i'm not interested in the junk fm music too. TMC :) |
18:06.37 | NetRipper | they already have TMC working |
18:06.43 | NetRipper | it's just a matter of decoding the stuff properly |
18:06.51 | cr2 | NetRipper: in linux |
18:06.53 | NetRipper | ah |
18:07.16 | cr2 | once the uart2DM will work properly. |
18:07.24 | tmzt | Kevin2: is it worth it to parse AF11, etc. or should I just start over and use bitwise operations? |
18:07.26 | NetRipper | i'd think audio routing has precedence.. should get 'core functionality' working first |
18:07.43 | NetRipper | i.e. make it work as an actual phone in linux |
18:07.44 | NetRipper | :) |
18:07.51 | tmzt | yes |
18:08.17 | cr2 | NetRipper: that's true. |
18:08.45 | tmzt | Kevin2: I guess the question is if I only care about gafr and gpdr should I make it generic |
18:09.03 | tmzt | I like how regOneBits/regTwoBits work |
18:10.30 | tmzt | then the question is, should iterate all the possible macros and test the bits? should I iterate the regvals and find the proper macro? |
18:10.30 | Kevin2 | tmzt: I guess what you really want is some call like GetRegVal(myMemoryState, "AF11") that would lookup the register name, extract the bits from "myMemoryState" and then return the value of those bits? |
18:10.50 | tmzt | what kind of intermediate state do I need? |
18:10.58 | tmzt | yeah, that's an option |
18:11.58 | tmzt | how can I get to something like altfunc = num: altfunc |
18:12.07 | dcordes | cr2: the smd device nodes are not static |
18:12.08 | tmzt | and dirs = num: dir |
18:12.22 | dcordes | cr2: I forgot the auto up of eth0. anything else wrong? |
18:12.24 | dcordes | or missing |
18:12.27 | tmzt | from a list of bits set in gafr and gpdr |
18:13.43 | cr2 | dcordes: i have done 'ifconfig usb0 192.160.0.202' from the keyboard. |
18:14.12 | cr2 | dcordes: for cu the /dev/smd* should be root.uucp, not root.dialout |
18:14.13 | tmzt | cr2: are you using rndis or usbnet? |
18:14.28 | cr2 | tmzt: cdc_ether |
18:14.54 | cr2 | is it usbnet ? |
18:15.03 | cr2 | don't really need ms "standards" |
18:15.19 | tmzt | what host os? |
18:15.26 | cr2 | heh |
18:15.35 | dcordes | cr2: I don't know how to change the permission for non static device node. I bet it's set in the smd driver |
18:15.43 | cr2 | shame on you for asking such questions :) |
18:15.49 | tmzt | I mean distribution of course |
18:15.56 | tmzt | trying to type less |
18:16.16 | tmzt | on touch pro |
18:16.39 | tmzt | it should be udev |
18:16.59 | cr2 | dcordes: it's a non-kernel issue |
18:17.40 | Kevin2 | tmzt: dirmap = {0: "A", 1: "B" } ; print dirmap[mydirbit] |
18:18.21 | dcordes | cr2: don't know how all that works. I know there's type major minor for device node. |
18:19.02 | cr2 | dcordes: cat /etc/group |
18:19.06 | cr2 | uucp:*:10: |
18:19.08 | cr2 | man:*:12: |
18:19.09 | cr2 | proxy:*:13: |
18:19.11 | cr2 | kmem:*:15: |
18:19.12 | cr2 | dialout:*:20: |
18:19.29 | cr2 | i don't know how udev is configured |
18:19.40 | tmzt | it's probably mdev |
18:19.57 | dcordes | how does udev/mdev know which group to put it in? |
18:20.02 | tmzt | not sure it really is configured |
18:20.32 | cr2 | <PROTECTED> |
18:21.41 | cr2 | grep smd does not show anything |
18:22.10 | cr2 | we can hijack 40-isdn.rules :) |
18:23.08 | dcordes | you mean copy it for smd use? |
18:24.30 | cr2 | # This file does not exist. Please do not ask the debian maintainer about it. |
18:24.32 | cr2 | # You may use it to do strange and wonderful things, at your risk. |
18:26.22 | tmzt | pinstate[(num,'AF')] = af |
18:26.24 | dcordes | btw I added /usr/bin/playwav |
18:26.35 | tmzt | pinstate[(num,'DIR')] = dir |
18:26.38 | cr2 | SUBSYSTEM=="capi", KERNEL=="capi", NAME="capi20", GROUP="dialout" |
18:27.01 | cr2 | dcordes: i still don't understand by which magic smd is dialout |
18:27.27 | cr2 | dcordes: it needs to print more debug info, and also select the source. |
18:27.52 | tmzt | then I can have addr: mfpTwoBits('AF', 0) |
18:27.59 | cr2 | tmzt: no msm_snd ?? |
18:28.27 | tmzt | or mfpOneBits('DIR', 0) |
18:28.31 | cr2 | need to recheck my kernel config |
18:28.36 | tmzt | yay |
18:29.01 | tmzt | Kevin2: does that make sense? |
18:30.31 | dcordes | cr2: the source is source audio file? |
18:30.43 | tmzt | (num,af,dir) = num,pinstate['AF',num],pinstate['DIR',num]) |
18:30.50 | cr2 | dcordes: yes, and it's compiled. |
18:30.56 | tmzt | that becomes the index into pinmode tuple |
18:30.59 | cr2 | dcordes: it's a kernel issue |
18:31.08 | tmzt | ok, cr2 |
18:31.14 | tmzt | what is the issue |
18:31.27 | tmzt | need sugar then code this |
18:31.48 | dcordes | Subchunk2Size |
18:32.12 | tmzt | magic smd? |
18:32.19 | tmzt | subsystem should be tty |
18:32.34 | tmzt | kernel is smd |
18:32.37 | tmzt | leave off name |
18:33.00 | tmzt | group=uucp |
18:33.09 | dcordes | cr2: "it needs to print more debug info, and also select the source." <- smd or playwav.c ? |
18:33.28 | cr2 | dcordes: playwav.c |
18:34.20 | dcordes | cr2: fn = play ? "/data/out.wav" : "/data/rec.wav"; |
18:34.25 | dcordes | cr2: how to turn it into parameter? |
18:34.50 | tmzt | argv[n] |
18:35.05 | dcordes | do we have /dev/msm_mp3 ? |
18:35.20 | Kevin2 | tmzt: I'm not sure what role "mfpTwoBits" would play. All the registers should already be known from regs-pxa.py |
18:35.20 | tmzt | but use sprintf or equivalent and set the last byto to 0 to be safe |
18:35.28 | cr2 | dcordes: it's just a default value. you can provide a filename |
18:35.57 | cr2 | dcordes: already |
18:35.59 | tmzt | Kevin2: I sse that |
18:36.02 | *** join/#htc-linux Squarc1 (n=Squarc@82-217-32-29.cable.quicknet.nl) |
18:36.12 | tmzt | Kevin2: I can just parse yours |
18:36.17 | Kevin2 | cr2: gdb's syntax is quite complex - I'm sure it would be fine, but why introduce all that complexity. |
18:36.32 | dcordes | cr2: so I should just change the path? |
18:36.41 | tmzt | cr2: something like *addr? |
18:37.10 | cr2 | tmzt: yes |
18:37.32 | cr2 | Kevin2: it was just an example of some standard debugger grammar |
18:37.34 | tmzt | maybe an eval()? |
18:38.00 | cr2 | dcordes: playwav -mp3 file.mp3 |
18:38.16 | cr2 | dcordes: works already. if it's not mp3 then it's wav |
18:39.16 | Kevin2 | cr2 / tmzt: Accessing a memory address and returning it's value is already supported: print "%x" PMW(0xa0000000) |
18:39.37 | cr2 | Kevin2: what about client-side scripts ? |
18:39.46 | Kevin2 | It's the [PV]M[BHW] funcitons. |
18:39.59 | Kevin2 | cr2: What do you mean by "client-side"? |
18:40.00 | cr2 | Kevin2: ok |
18:40.29 | cr2 | Kevin2: running a script from a host, not from the local fs |
18:41.02 | cr2 | then i can write/edit the scripts on the host machine. |
18:41.15 | Kevin2 | cr2: It should be pretty easy to teach haretconsole to read commands from a file. |
18:41.36 | cr2 | at runtime ? |
18:42.01 | cr2 | or will it be a special command escape ? |
18:42.24 | Kevin2 | cr2: Sure. Just introduce a new command (eg, SOURCE) in haretconsole, and then have haretconsole open a file, read the commands, and send them to haret. |
18:42.53 | cr2 | ok, but how to exec it ? |
18:43.09 | Kevin2 | huh? |
18:43.15 | dcordes | cr2: I don't get it. what about playwav.c needs changing then? |
18:43.31 | cr2 | Kevin2: ./connect 192.168.0.100 |
18:43.56 | cr2 | Kevin2: how do i escape to python now ? |
18:44.47 | cr2 | dcordes: you need to send some ioctls to /dev/msm_snd, if you want to select the target |
18:45.18 | cr2 | dcordes: but i don't see /dev/msm_snd now. looking for it now. |
18:45.38 | Kevin2 | cr2: Would a command "source <myfile>" be okay? Just add a "def do_source(self, line)" to haretconsole/console . Then have do_source() extract "myfile" from "line" and then open(myfile), read each cmd, and call self.sendAndProcess(cmd). |
18:48.11 | cr2 | Kevin2: hmm, you mean the console will trap the "source" command before sending to target ? |
18:48.47 | Kevin2 | cr2: Yes. haretconsole reads each command, decides what to do with it, and then sends it to haret. It can decide not to send a command, alter a command, etc. |
18:48.52 | dcordes | bbiab |
18:49.08 | cr2 | Kevin2: then it's a smart idea. unless we will have source command as a native haret cmd. |
18:49.25 | cr2 | Kevin2: ok, sounds great. |
18:50.52 | cr2 | it will open a lot of opportunities |
18:51.21 | cr2 | do we have a CP14 command ? |
18:52.28 | Kevin2 | cr2: There are haret commands to read/write all coprocessor registers if that is what you are asking. |
18:52.48 | cr2 | tmzt: can mfpTwoBits() be done in haret grammar ? |
18:53.00 | cr2 | Kevin2: i thought it was limited to CP15 |
18:53.44 | Kevin2 | cr2: All coprocessor registers can be read/written - see "CP" under "help vars". |
18:54.57 | cr2 | ok |
18:55.10 | cr2 | i've just read the old haret doc |
18:55.13 | cr2 | http://handhelds.org/cgi-bin/cvsweb.cgi/~checkout~/haret/docs/haret.html |
18:55.28 | cr2 | the bitshifts are not supported in grammar |
18:57.03 | Kevin2 | cr2: Looks like that's true. You can use *2 and /2 in place of "<<1" and ">>2". :-P |
18:57.25 | cr2 | ok |
18:57.36 | tmzt | no, but I'm using python :) |
18:58.23 | cr2 | hehe. haret even supports octal numbers :) |
18:58.46 | tmzt | Kevin2: thought of something, can I do something like (num,(('AF', 0),('DIR',1))) ? |
18:58.48 | cr2 | CP(p,c) |
18:58.50 | cr2 | <PROTECTED> |
18:58.59 | tmzt | and use that whole thing to key a tuple? |
18:59.16 | cr2 | tmzt: you can calculate pixclock then. |
18:59.27 | tmzt | ? |
18:59.33 | cr2 | don't know about print "%o" |
18:59.52 | tmzt | oh, cp15 always crashed for me |
19:00.15 | cr2 | tmzt: it should be possible to write a script calculating pixclock on pxa |
19:00.20 | *** join/#htc-linux vts (n=vts@62-47-227-51.adsl.highway.telekom.at) |
19:00.28 | Kevin2 | cr2: That CP documentation is old. CP now takes 5 parameters - everything needed to specify a coprocessor. |
19:00.31 | tmzt | yeah, next thing to dump |
19:00.41 | tmzt | is pxafb |
19:00.47 | tmzt | after this |
19:00.58 | cr2 | we just need something to eval CPUARCH |
19:01.14 | cr2 | tmzt: and omapfb |
19:01.25 | tmzt | we do hou want to do it in a haret script? |
19:01.27 | tmzt | yeah |
19:01.42 | cr2 | tmzt: since haret does not support mddi, it will be difficult on msm :) |
19:01.51 | tmzt | I'm hoping we can have an investigator that uploads logs with tthp |
19:01.54 | tmzt | http |
19:01.56 | tmzt | true |
19:02.05 | cr2 | Kevin2: yes, i've just mentioned that it was not limited to CP15 from the very beginning |
19:02.37 | tmzt | I'll do the simple version wit mfp* and pinstate first |
19:02.44 | cr2 | ok |
19:02.58 | tmzt | pinstate could also handle values then |
19:03.48 | tmzt | we could actual teach haretconsole pin so it will say something like gpio-i2c-scl now gpio-camera-data1 |
19:03.49 | cr2 | can we do "if ARCH != MSM7201A break" in haret ? |
19:04.25 | tmzt | when starting the camera if it changes alt function |
19:04.32 | cr2 | tmzt: i'll be great for stream processing |
19:04.51 | cr2 | but for a onetime dump a haret script is enough |
19:04.57 | tmzt | or Device "motoq" gpio1 is pcap |
19:05.02 | tmzt | yes |
19:05.41 | cr2 | tmzt: an i2c protocol parser in python will be fun too. |
19:06.03 | tmzt | we need an interactive one |
19:06.17 | tmzt | at least I do, and it will help with microp also |
19:06.27 | cr2 | because i was using awk on haretlogs to extract the i2c reg values |
19:06.46 | cr2 | if we want to support the cams, an i2c parser is a must. |
19:06.50 | *** part/#htc-linux vts (n=vts@62-47-227-51.adsl.highway.telekom.at) |
19:07.10 | *** join/#htc-linux vts (n=vts@62-47-227-51.adsl.highway.telekom.at) |
19:07.15 | *** part/#htc-linux vts (n=vts@62-47-227-51.adsl.highway.telekom.at) |
19:11.08 | tmzt | have we learned how to bhook ce functions? |
19:11.38 | cr2 | no |
19:12.23 | Kevin2 | tmzt: Yeah - haretconsole only supports decoding register names (and register bit names). It would be nice to add decoding of values too. |
19:12.52 | tmzt | that's what I'm doing with pinstate |
19:13.10 | tmzt | it will have a generic property for each pinnumber |
19:13.21 | tmzt | like level, dir, af, etc. |
19:13.47 | Kevin2 | tmzt: Cool. memalias.bitdecode should then be able to show the name instead of just the value. |
19:14.03 | tmzt | YEAH |
19:14.09 | tmzt | Sorry |
19:20.19 | *** join/#htc-linux swc|666 (n=infidel2@unaffiliated/swc666/x-4934821) |
19:22.08 | *** join/#htc-linux marex (n=marex@vasut.kolej.mff.cuni.cz) |
19:24.16 | tmzt | xsacha-tv: ping |
19:25.00 | xsacha-tv | hi |
19:25.30 | tmzt | get anywhere with mvl driver? |
19:25.47 | xsacha-tv | i tried that embedded sdio thing you pointed me towards but i get same problem |
19:26.06 | xsacha-tv | it seems the error comes before enable_wide_bus() function, which is probably why width is 0? |
19:26.28 | xsacha-tv | and i found out why my sd card had a width of 2.. it's because BUS_WIDTH4 is defined as 2 |
19:26.41 | tmzt | marex: you know if a delay is required to enumerate 8686? maybe between loading helper and main firmware? |
19:26.58 | tmzt | ok |
19:27.07 | xsacha-tv | the error is before firmware gets loaded btw |
19:27.14 | tmzt | both? |
19:27.22 | xsacha-tv | both parts of firmware yeah |
19:27.49 | tmzt | can you trace inital protocol with haret? |
19:28.58 | cr2 | dcordes: "powerdown" powerdown not implemented; halting |
19:29.07 | tmzt | xsacha-tv: if you want to get this work I need you to try a newer kernel |
19:29.19 | xsacha-tv | ah ok |
19:29.39 | xsacha-tv | 2.6.29 not new enough :( |
19:30.12 | xsacha-tv | what changed in 2.6.30? |
19:30.31 | marex | tmzt, no, but #zipit people had problems with some delay on GSPI8686 |
19:31.00 | xsacha-tv | even pre people had problems with delay in some parts it seems :P and problems faking 1.8V too |
19:31.12 | xsacha-tv | but it works for them on 2.6.24 |
19:32.30 | tmzt | gspi is different |
19:35.44 | xsacha-tv | and it works for other people on 2.6.27 |
19:37.05 | tmzt | with which driver? |
19:39.05 | xsacha-tv | libertas + firmware |
19:39.26 | xsacha-tv | thats what pre uses on 2.6.24 and what people have reported success on 2.6.27 with |
19:42.38 | marex | xsacha-tv, are you hacking on Pre or what ? |
19:43.15 | *** join/#htc-linux vts (n=vts@62-47-227-51.adsl.highway.telekom.at) |
19:44.33 | xsacha-tv | ive already performed all of pre's patches |
19:44.39 | xsacha-tv | no good on my 2.6.29 kernel |
19:44.57 | xsacha-tv | it gets voltage working but still fails in the ops part |
19:45.02 | *** part/#htc-linux vts (n=vts@62-47-227-51.adsl.highway.telekom.at) |
19:47.42 | tmzt | marex: samsung i780 |
19:48.10 | tmzt | sdio interface |
19:51.00 | cr2 | dcordes: ping |
19:51.23 | marex | cr2, pong, how's the N560 going ? ;-) |
19:52.51 | cr2 | marex: waiting for you |
20:01.47 | *** join/#htc-linux pe7er (n=Adium@f053195126.adsl.alicedsl.de) |
20:06.54 | Echo31 | pH5: I don't understand why I cannot initialise the athena cpld2. cr2 helped me, but I am not progressing. |
20:10.50 | cr2 | Echo31: can you tell me about other constants ? |
20:14.24 | Echo31 | cr2: I use the constants from 2.6.21-hh and by comparison, hx4700 |
20:15.40 | cr2 | HX4700_EGPIO_BASE(HX4700_ASIC3_GPIO_BASE + ASIC3_NUM_GPIOS) |
20:15.53 | cr2 | ASIC3_NUM_GPIOS=64, what about the rest ? |
20:17.25 | Echo31 | cr2:#define HX4700_ASIC3_GPIO_BASENR_BUILTIN_GPIO |
20:17.26 | Echo31 | #define HX4700_EGPIO_BASE(HX4700_ASIC3_GPIO_BASE + ASIC3_NUM_GPIOS) |
20:17.44 | cr2 | NR_BUILTIN_GPIO ? |
20:18.38 | pH5 | hi |
20:18.44 | tmzt | it should be defined by the soc code |
20:18.47 | pH5 | cr2: NR_BUILTIN_GPIO is the number of PXA GPIOs |
20:18.55 | pH5 | Echo31: what is the problem exactly? |
20:19.19 | cr2 | .gpio_base = HX4700_EGPIO_BASE, |
20:19.24 | pH5 | for hx4700 I put the ASIC3 GPIOs right after PXA GPIOS (and then after that the CPLD GPIOs) |
20:19.41 | pH5 | because on pxa, the gpio_to_irq mapping is stupid (linar, to be more polite). |
20:19.45 | pH5 | s/linar/linear/ |
20:19.45 | cr2 | Echo31 has + .gpio_base = 2*GPIO_BASE_INCREMENT, |
20:20.04 | pH5 | no, remove that GPIO_BASE_INCREMENT stuff |
20:20.12 | pH5 | we want to pack GPIOs tightly |
20:20.31 | Echo31 | pH5: the cpld2 on athena don't initialise |
20:20.32 | cr2 | pH5: is there any doc for htc-egpio ? |
20:21.13 | cr2 | pH5: how many irqs should be added ? also tightly packed ? |
20:21.41 | pH5 | cr2: only the kerneldoc comment in include/linux/mfd/htc-egpio.h |
20:21.54 | cr2 | pH5: ok. |
20:22.20 | cr2 | pH5: i don't quite understand some things |
20:22.30 | pH5 | does the CPLD2 have an irq line connected? |
20:22.42 | cr2 | no, it's like uni and h4700 |
20:23.14 | cr2 | his .gpio_base line is wrong |
20:23.15 | pH5 | so just leave irq_base=0, like hx4700 does. there will be no irqs allocated |
20:23.52 | cr2 | pH5: about cpld1 |
20:24.17 | cr2 | + .reg_start = 0, |
20:24.19 | cr2 | + .gpio_base = GPIO_BASE_INCREMENT, |
20:24.20 | cr2 | + .num_gpios = 16, |
20:24.29 | cr2 | GPIO_BASE_INCREMENT is obviously wrong |
20:24.49 | pH5 | it would be so much easier for me to comment if somebody sent a mail with the core patch to the list... |
20:24.58 | pH5 | does athena have asic3? |
20:25.03 | cr2 | no |
20:25.07 | cr2 | cpld1 |
20:25.09 | Echo31 | ccr2: this was the constant from 2.6.21-hh |
20:25.12 | cr2 | http://www.htc-linux.org/wiki/index.php?title=CPLD1 |
20:25.25 | cr2 | Echo31: the api changed. that's the problem. |
20:26.33 | pH5 | then I'd say CPLD1 gpio_base should be NR_BUILTIN_GPIO, CPLD2 gpio_base should be NR_BUILTIN_GPIO+NR_CPLD1_GPIOS |
20:26.33 | cr2 | pH5: i think it'll be easier if you'll just look at this wiki page |
20:26.33 | cr2 | ok |
20:26.34 | cr2 | pH5: what about .init values from the old API ? |
20:26.36 | cr2 | pH5: we don't want to zero some gpios, otherwise we will powerdown the LCD, and it's real PITA to reinit. |
20:26.50 | pH5 | struct htc_egpio_chip has an unsigned long initial_values field. |
20:26.59 | cr2 | ok |
20:27.29 | pH5 | which is not documented btw :) |
20:27.43 | cr2 | pH5: what to do with the mixed IO bank ? |
20:28.05 | *** join/#htc-linux pleemans (n=toi@d54C2AAB7.access.telenet.be) |
20:28.05 | cr2 | like that |
20:28.05 | pH5 | the direction parameter is a bitfield |
20:28.08 | cr2 | GPIOD1 0x0002 reset device (=1) |
20:28.10 | cr2 | GPIOD2 0x0004 LCD panel bit2 (get) |
20:28.11 | cr2 | GPIOD3 0x0008 power related (get+bic,orr) |
20:28.13 | cr2 | GPIOD4 0x0010 LCD panel bit4 (get) |
20:28.36 | cr2 | little-endian ? |
20:28.55 | tmzt | Kevin2: I don't get what parsebits does, I have a tuple similar to yours now ((28,29), ('AF', 14)) and I'm interating through the regval and checking the bits |
20:29.21 | *** join/#htc-linux timebomb (n=tb@e179192087.adsl.alicedsl.de) |
20:29.28 | pH5 | cr2: sure, cpu-native |
20:29.32 | cr2 | 365 .direction = HTC_EGPIO_OUTPUT, |
20:29.41 | cr2 | ? |
20:29.51 | pH5 | HTC_DIRECTION_OUTPUT = ~0 |
20:30.06 | pH5 | s/DIRECTION/EGPIO/ |
20:30.14 | cr2 | ok |
20:30.21 | cr2 | tricky :) |
20:30.33 | cr2 | i would have never thought |
20:31.14 | pH5 | I thought it'd be nice to have these macros for the common case. Of course that makes things a bit unobvious for the mixed-case at first. |
20:31.20 | cr2 | pH5: why .reg_start = 0, and not .start ? |
20:32.16 | cr2 | i guess it will be 0 in 99.99999% of cases though. |
20:33.23 | tmzt | wait, I'm iterating 2 bits at a time, so I can just look it up with (i, i+1) |
20:34.27 | pH5 | cr2: true, it'll be 0 for the first gpio block. magician defines a second one after the irq register. |
20:35.00 | cr2 | pH5: how many blocks then will be here http://www.htc-linux.org/wiki/index.php?title=CPLD1 ? |
20:35.18 | pH5 | reg_start just to make clear that this number is in register space. there is another parameter in this struct which are in gpio api space (gpio_base). |
20:35.56 | cr2 | 7 IO and 1 IRQ ? |
20:36.01 | pH5 | cr2: this looks like magician |
20:36.24 | pH5 | two blocks, one 4*8 and one 3*8 |
20:36.35 | pH5 | and the irqack register in-between |
20:36.39 | cr2 | and the irq block is sparse too ? |
20:36.56 | cr2 | magician was too long ago :) |
20:37.30 | *** join/#htc-linux leaigor (n=laigor@188.134.36.14) |
20:38.02 | cr2 | http://wiki.xda-developers.com/index.php?pagename=MagicianCPLD |
20:38.07 | pH5 | yes, the register bits 3,5,7 in that register will be unused |
20:38.39 | cr2 | i'm looking at your magician code now |
20:39.51 | pH5 | magician is configured as 3*8 output + 1*8 irqack + 3*8 input |
20:39.57 | cr2 | 281 .num_irqs = 4, |
20:39.59 | cr2 | 282 .ack_register = 3, |
20:40.39 | cr2 | .num_irqs is the number of real irqs |
20:40.49 | cr2 | and what is .ack_register ? |
20:40.52 | pH5 | I think for athena you'd have to set num_irqs = 7 to get that tvout one |
20:41.04 | pH5 | ack_register is 4 for athena |
20:41.15 | cr2 | tricky :) |
20:41.16 | pH5 | the one where you read irq status and ack the irqs |
20:41.33 | cr2 | pH5: the output is 1 and input 0 in the direction ? |
20:41.36 | pH5 | yes |
20:41.54 | cr2 | ok |
20:42.06 | cr2 | then i may use .num_irqs = 8 |
20:42.09 | pH5 | so registers 0-3 can be handled by one egpio_chip with num_gpios=32, all output if I see correctly |
20:42.20 | pH5 | sure, you will just waste one more irq_desc |
20:42.57 | cr2 | lcd panel bits are input |
20:43.07 | cr2 | this cpld is not write-only |
20:43.32 | pH5 | ah, ok. so you'll have both 0-3(32) and 5-7(24) mixed-case. |
20:43.38 | cr2 | but i guess that this driver shadows the values for reading |
20:43.47 | pH5 | the magician cpld had a clear separation between I and O pins |
20:43.57 | pH5 | (it is RW, too) |
20:44.17 | cr2 | then IO distinction does not matter really. |
20:44.26 | pH5 | but yes, htc-egpio shadows because the hx4700 cpld is truly write-only. |
20:44.42 | cr2 | yes, afair hermes too |
20:44.45 | cr2 | and n560 |
20:46.19 | dcordes | cr2: pong. did powerdown work in the other initrd? |
20:46.45 | cr2 | dcordes: can't boot with your initramfs anymore... |
20:47.00 | cr2 | it crashes with can't mount /dev/ram0 |
20:47.16 | cr2 | after some config changes |
20:47.34 | dcordes | kernel config changes? |
20:47.44 | cr2 | dcordes: i think i've found one more rpc bug. the adsp_atom func is 1, and not 1. |
20:47.57 | cr2 | s/not 1/not 2/ |
20:48.09 | cr2 | yeah, looks strange |
20:48.27 | cr2 | since it's initramfs i don't need root=/dev/ram0 ? |
20:49.01 | cr2 | nit=/init ? |
20:49.19 | cr2 | i dont know why it was working before :) |
20:50.16 | dcordes | <PROTECTED> |
20:50.22 | Echo31 | pH5: what is the change of htc-egpio (from 2.6.21 to now) impacting the athena cpld2? Because the old values work with the old htc-egpio. |
20:50.30 | cr2 | dcordes: then there is a distinction between halt and reboot |
20:51.15 | tmzt | <PROTECTED> |
20:51.16 | tmzt | TypeError: list indices must be integers, not tuple |
20:51.18 | cr2 | dcordes: what we are doing right now is halt. but is it implemented on g1 ? |
20:54.16 | *** join/#htc-linux apt (i=ibot@rikers.org) |
20:54.16 | *** topic/#htc-linux is Welcome to htc-linux | Logs: http://apt.rikers.org/%23htc-linux | Livelogs: http://irclog.netripper.com/?chan=htc-linux | Wiki: http://htc-linux.org/wiki | Original project page: http://wiki.xda-developers.com/index.php?pagename=Xanadux | Please use device codenames. For aliases, see: http://wiki.xda-developers.com | Join #android for android centered discussion. |
20:54.24 | tmzt | cr2: yeah, why are you using it though? |
20:54.26 | cr2 | or maybe it's some bug because i've changed log buffer to 21 ? |
20:54.35 | tmzt | it needs it if it needs to mount something else |
20:54.37 | cr2 | tmzt: ask dcordes |
20:54.56 | cr2 | an it was working just 1 hour ago |
20:54.59 | tmzt | did you use -H newc ? |
20:55.53 | *** join/#htc-linux MethoS (n=clemens@dyndsl-085-016-163-188.ewe-ip-backbone.de) |
20:56.51 | pH5 | Echo31: the configuration is different, 2.6.21 didn't have gpio api. the fields are documented in the htc-egpio.h header, but the gpio_base values you have to choose yourself. I made a suggestion for that above (CPLD1 directly after PXA GPIOs, CPLD2 after that). |
20:56.56 | cr2 | can not open root device <NULL> |
20:58.18 | tmzt | cr2: leave it off, it should work |
20:59.31 | cr2 | pH5: the .initial_values have the same syntax as .direction ? |
20:59.45 | pH5 | well, 0 is low, 1 is high. |
20:59.48 | cr2 | tmzt: i get a crash |
20:59.54 | pH5 | at least on my cplds |
21:00.01 | tmzt | what kernel? |
21:00.42 | cr2 | tmzt: hm. i'll return to the old .config |
21:00.46 | pH5 | cr2: or do you mean whether (1 << x) in .direction corresponds to (1 << x) in .initial_values? (it does) |
21:00.59 | cr2 | pH5: ok |
21:02.04 | *** join/#htc-linux dcordes_ (n=dcordes@unaffiliated/dcordes) |
21:03.44 | darkstar62 | anyone have any idea why enabling PPP support in my kernel would make it unable to load an initramfs image anymore? |
21:04.51 | cr2 | must be something with the kernel :( |
21:05.47 | tmzt | darkstar62: no |
21:05.50 | darkstar62 | on a possibly related note, I get 6 section misalignments when I compile |
21:06.10 | tmzt | are either of you using a really new kernel? |
21:06.21 | darkstar62 | I'm on 2.6.25 |
21:09.24 | cr2 | bizarre |
21:09.52 | cr2 | dcordes_: got a new initramfs ? |
21:11.47 | *** join/#htc-linux pe7er (n=Adium@f053195126.adsl.alicedsl.de) |
21:12.28 | cr2 | [ 176.455584] audmgr_rpc_thread() start |
21:12.30 | cr2 | [ 176.456469] [RPC] READ on ept d4a327a0 |
21:12.31 | cr2 | [ 193.089862] audio: failed to get audplay0 dsp module |
21:15.56 | dcordes_ | cr2: with auto usb0 added? |
21:16.08 | cr2 | dcordes_: yes |
21:16.27 | cr2 | need to sort out the smd too |
21:19.16 | dcordes_ | forgot to add the /etc/ppp/peers/vodafone-de and your paste exceeded |
21:19.24 | dcordes_ | you always set one day duration? |
21:21.14 | cr2 | [ 180.036517] audio: failed to get audplay0 dsp module |
21:21.20 | cr2 | says _mp3 now |
21:21.29 | tmzt | good? |
21:21.37 | tmzt | did you get the initramfs working? |
21:21.52 | cr2 | tmzt: yes, something was fcked in .config |
21:22.10 | tmzt | diff? |
21:22.19 | cr2 | dcordes_: yes, to not spam the paste |
21:22.43 | tmzt | I haven't figured out whether CONFIG_BLOCK_INITRD is needed for initramfs |
21:23.39 | cr2 | dcordes_: https://privatepaste.com/67nUHJ4tfy |
21:23.58 | tmzt | chat script too |
21:24.12 | tmzt | but I just use wvdial for that, much simpler |
21:24.13 | cr2 | he has it |
21:24.48 | Echo31 | pH5: I don't understand, I can choose the gpio_base values. In the old constants, threre are PXA_GPIOs (120) hereafter a gpio_base= GPIO_BASE_INCREMENT (0x100) for cpld1 and after for the end, cpld2 (gpio_base=2*0x100) |
21:25.44 | cr2 | Echo31: it was block allocation for the old htc-egpio driver |
21:26.25 | cr2 | tmzt: where is my msm_snd disappeared ?? |
21:26.41 | tmzt | qdsp5 is enabled? |
21:26.47 | cr2 | it seems i need to add some printks |
21:26.57 | cr2 | yes, and the other msm_* are there |
21:27.22 | tmzt | oh |
21:28.26 | cr2 | dcordes_: where was your playwav binary ? |
21:28.51 | Echo31 | cr2: Now, the table of all gpios must be contiguous ? |
21:29.02 | dcordes_ | cr2 http://linuxtogo.org/~lgorris/misc/playwav |
21:29.53 | cr2 | err |
21:29.58 | cr2 | playwav: 'Splat.wav' is not 16bit per sample |
21:30.08 | cr2 | Echo31: yes |
21:30.35 | cr2 | lol |
21:30.43 | cr2 | <PROTECTED> |
21:31.13 | cr2 | <PROTECTED> |
21:31.56 | cr2 | locks |
21:32.09 | cr2 | playwav: 1 ch, 48000 hz, 16 bit, PCM |
21:32.10 | cr2 | prefill |
21:32.12 | cr2 | start |
21:35.38 | Echo31 | cr2: if I resume: 120 for pxa_gpios + 64 for cpld1 + 16 for cpld2 + 16 for cpld2 |
21:41.28 | pH5 | I'd say 56 for cpld1 (32+24) and 16 for cpld2 only once. |
21:42.24 | cr2 | Echo31: cpld2 is mixed IO too |
21:43.00 | cr2 | the lcd power should be preserved |
21:43.16 | cr2 | CPLD2_0 and CPLD2_1 |
21:44.34 | cr2 | the rest is probably not critical. need to check which or them are set to 1 in wince. |
21:45.27 | *** join/#htc-linux Shinto (n=John@f048051135.adsl.alicedsl.de) |
21:50.39 | Echo31 | cr: you think that the number gpios CPLD2 = CPLD2_0 + CPLD2_1 = 16, but copied on 2*2 octets in memory |
21:53.11 | *** join/#htc-linux Slyon (n=lukas@p4FDB210C.dip0.t-ipconnect.de) |
21:53.50 | pH5 | Echo31: no, pins 0 and 1 in the CPLD2 register should kept high during initialization (.initial_values = 0x0003) |
21:55.25 | cr2 | yes |
21:56.15 | tmzt | Kevin2: sorry, you wanted my to paste earlier, this is the current code: http://pastebin.com/m247433eb |
21:56.27 | *** join/#htc-linux Slyon (n=lukas@p4FDB210C.dip0.t-ipconnect.de) |
21:56.47 | cr2 | .direction = 0x01ff |
21:57.10 | cr2 | pH5: the unknown direction should be set to ?? |
22:05.27 | cr2 | looks mor user-friendly now |
22:05.36 | cr2 | pc_clk_enable: FIXME! enabling a clock that doesn't have an ena bit or ns-only offset: SDC2_PCLK |
22:06.18 | cr2 | clock-wince: pc_clk_set_rate: id=SDC2_CLK rate=144000 |
22:08.58 | cr2 | FIXME! clk_set_max_rate not implemented; PMDH_CLK:122880000 |
22:09.29 | cr2 | pc_clk_enable: FIXME! enabling a clock that doesn't have an ena bit or ns-only offset: USB_HS_PCLK |
22:12.51 | cr2 | still answeres to ping, but the kernel is dead |
22:13.14 | tmzt | what happened? |
22:15.26 | cr2 | called stty -F /dev/ttyHS1 |
22:15.58 | *** join/#htc-linux pyr0 (n=pyr0@c-98-219-163-43.hsd1.pa.comcast.net) |
22:15.59 | tmzt | ah |
22:16.07 | tmzt | but not hard locup |
22:16.20 | tmzt | if we can fix the clocks correctly |
22:16.32 | cr2 | not a complete lockup |
22:16.45 | cr2 | adsp on playwav is complete lockup |
22:17.04 | cr2 | the last message on stty is setting the UART2DM_CLK |
22:27.47 | IceBone | http://img222.imageshack.us/img222/3690/shamwow.png |
22:27.55 | *** join/#htc-linux ali12342 (n=al@robotfuzz.co.uk) |
22:31.20 | IceBone | http://farm4.static.flickr.com/3450/3402340011_9340bea89a.jpg?v=0 |
22:42.05 | *** join/#htc-linux Squarc (n=Squarc@82-217-32-29.cable.quicknet.nl) |
22:42.44 | Echo31 | cr2:pH5: Thanks for your help, today. See you soon. |
22:54.33 | *** join/#htc-linux marex (n=marex@vasut.kolej.mff.cuni.cz) |
22:54.33 | pH5 | cr2: I'd leave the unknown pins as inputs so you can't write to them accidentally. other than that, it doesn't matter. |
22:58.06 | Kevin2 | tmzt: parsebits converts the definitions in regs_pxa.py to a definition that is easier to use at runtime. |
22:58.57 | cr2 | pH5: ok |
22:59.39 | tmzt | I can't figure out how to look up the bit name |
22:59.44 | cr2 | pH5: seems to be clear so far. expect the finished patch in the next days |
23:00.24 | Kevin2 | tmzt: Lookup a register address by a register name? |
23:00.46 | tmzt | the last part of the code I posted |
23:01.33 | *** join/#htc-linux Squarc (n=Squarc@82-217-32-29.cable.quicknet.nl) |
23:01.34 | *** join/#htc-linux Squarc1 (n=Squarc@82-217-32-29.cable.quicknet.nl) |
23:02.09 | Kevin2 | What line? |
23:02.17 | tmzt | 58 |
23:02.47 | tmzt | basically, I'm looking up the address and bit offsets (i,i+1) in the generated tuple |
23:03.10 | tmzt | the setting pinstate[num, name] = value of the bit pair |
23:04.37 | *** join/#htc-linux Slyon (n=lukas@p4FDB210C.dip0.t-ipconnect.de) |
23:05.32 | tmzt | name is just 'AF', for instance |
23:06.31 | Kevin2 | tmzt: Why not just add a "print reg" on line 58 -- that will show you what "reg" is, and you'll see why that access isn't working. (Basically, reg is a list (ie, an array), and you can't access an array with a tuple as index - it must be an integer.) |
23:06.54 | tmzt | yeah |
23:06.55 | tmzt | ok |
23:07.17 | tmzt | reg? |
23:07.22 | tmzt | oh |
23:08.15 | tmzt | reg: ['GAFR0_L', (((0, 1), ('AF', 0)), ((2, 3), ('AF', 1)), ((4, 5), ('AF', 2)), ((6, 7), ('AF', 3)), ((8, 9), ('AF', 4)), ((10, 11), ('AF', 5)), ((12, 13), ('AF', 6)), ((14, 15), ('AF', 7)), ((16, 17), ('AF', 8)), ((18, 19), ('AF', 9)), ((20, 21), ('AF', 10)), ((22, 23), ('AF', 11)), ((24, 25), ('AF', 12)), ((26, 27), ('AF', 13)), ((28, 29), ('AF', 14)), ((30, 31), ('AF', 15)))] |
23:08.29 | tmzt | yeah, that works |
23:10.43 | tmzt | def mfpTwoBits(name, start=0): |
23:10.43 | tmzt | <PROTECTED> |
23:10.44 | tmzt | <PROTECTED> |
23:10.49 | tmzt | it's backwards |
23:11.09 | tmzt | no |
23:11.42 | tmzt | maybe it's easier just to parse the strings, then I can use string as an index, that's hashable right? |
23:12.18 | tmzt | I see |
23:14.58 | *** join/#htc-linux MethoS (n=clemens@dyndsl-085-016-163-188.ewe-ip-backbone.de) |
23:29.28 | *** join/#htc-linux skodde (n=skodde@unaffiliated/skodde) |
23:47.37 | *** join/#htc-linux stickboy (n=anonymou@ool-457e4101.dyn.optonline.net) |