02:15.12 | *** join/#maemo-ssu povbot (~supybot@178-236-196-236.csc.lt) |
02:31.47 | *** join/#maemo-ssu sparetire (~sparetire@unaffiliated/sparetire) |
03:19.01 | *** join/#maemo-ssu DocScrutinizer05 (~saturn@openmoko/engineers/joerg) |
03:25.42 | *** join/#maemo-ssu povbot_ (~supybot@178-236-196-236.csc.lt) |
03:26.22 | *** join/#maemo-ssu DocScrutinizer05 (~saturn@openmoko/engineers/joerg) |
03:34.22 | *** join/#maemo-ssu sparetire (~sparetire@unaffiliated/sparetire) |
05:28.03 | *** join/#maemo-ssu povbot (~supybot@178-236-196-236.csc.lt) |
05:29.46 | *** join/#maemo-ssu peetah (~peetah@cha92-9-82-236-202-86.fbx.proxad.net) |
05:35.42 | *** join/#maemo-ssu sunweaver (~mike@fylgja.das-netzwerkteam.de) |
05:56.25 | *** join/#maemo-ssu arcean (~arcean@62.159.77.166) |
06:13.04 | *** join/#maemo-ssu corvinux (~hashcore@n58h194.net.telprom.si) |
06:13.04 | *** join/#maemo-ssu corvinux (~hashcore@unaffiliated/corvinux) |
06:25.17 | *** join/#maemo-ssu corvinux (~hashcore@unaffiliated/corvinux) |
06:33.20 | *** join/#maemo-ssu futpib_ (~futpib@37.113.228.187) |
06:55.00 | *** join/#maemo-ssu arcean_ (~arcean@62.159.77.166) |
07:10.06 | *** join/#maemo-ssu povbot (~supybot@178-236-196-236.csc.lt) |
07:32.49 | *** join/#maemo-ssu povbot (~supybot@178-236-196-236.csc.lt) |
07:35.27 | *** join/#maemo-ssu M4rtinK (~M4rtinK@ip-78-102-146-111.net.upcbroadband.cz) |
08:16.12 | *** join/#maemo-ssu jonwil (~jonwil@27-33-80-219.tpgi.com.au) |
08:19.52 | *** join/#maemo-ssu jonwil_ (~jonwil@27-33-80-219.tpgi.com.au) |
08:44.10 | *** join/#maemo-ssu _laco (~laco@static.95.25.4.46.clients.your-server.de) |
09:10.51 | *** join/#maemo-ssu bredebid (~bredebid@es-217-129-26-160.netvisao.pt) |
09:21.36 | *** join/#maemo-ssu freemangordon_ (~ivo@213.222.56.174) |
09:41.30 | *** join/#maemo-ssu bredebid (~bredebid@es-217-129-26-160.netvisao.pt) |
10:17.39 | *** join/#maemo-ssu corvinux (~hashcore@unaffiliated/corvinux) |
11:14.36 | *** join/#maemo-ssu arcean_ (~arcean@62.159.77.166) |
12:29.57 | *** join/#maemo-ssu povbot_ (~supybot@178.236.196.236) |
12:36.43 | *** join/#maemo-ssu NishanthMenon__ (nmenon@nat/ti/x-xazmxnhqcvafvncl) |
13:20.05 | *** join/#maemo-ssu corvinux (~hashcore@n58h194.net.telprom.si) |
13:20.05 | *** join/#maemo-ssu corvinux (~hashcore@unaffiliated/corvinux) |
15:18.30 | *** join/#maemo-ssu dos1 (~dos1@dosowisko.net) |
15:18.40 | *** join/#maemo-ssu dos1 (~dos1@unaffiliated/dos1) |
15:20.49 | *** join/#maemo-ssu sunweave1 (~mike@fylgja.das-netzwerkteam.de) |
15:21.46 | *** join/#maemo-ssu ShadowJK_ (~jk@212.7.198.194) |
15:22.14 | *** join/#maemo-ssu futpib_ (~futpib@37.113.252.112) |
15:31.17 | *** join/#maemo-ssu gregoa (~gregoa@colleen.colgarra.priv.at) |
15:43.58 | *** join/#maemo-ssu Pali (~pali@Maemo/community/contributor/Pali) |
17:01.52 | *** join/#maemo-ssu gregoa_ (~gregoa@colleen.colgarra.priv.at) |
17:23.38 | *** join/#maemo-ssu gregoa (~gregoa@colleen.colgarra.priv.at) |
17:28.02 | *** join/#maemo-ssu sparetire (~sparetire@unaffiliated/sparetire) |
17:28.41 | *** join/#maemo-ssu dos1 (~dos1@unaffiliated/dos1) |
17:30.48 | freemangordon | sailus: " 40: 599 INTC 24 Edge 480bd400.mmu, OMAP3 ISP" :) |
17:31.54 | *** join/#maemo-ssu peetah (~peetah@cha92-9-82-236-202-86.fbx.proxad.net) |
17:48.31 | *** join/#maemo-ssu ShadowJK (~jk@212.7.198.194) |
17:49.57 | freemangordon | Pali: ^^^ we got ISP interrupts, still no image, but at least there are signs of life |
17:50.08 | Pali | nice!!!! |
17:50.40 | freemangordon | Pali: to achieve that, I remove video-bus-switch |
17:50.43 | freemangordon | *removed |
17:51.05 | freemangordon | we should contact sre |
17:51.36 | Pali | yes |
17:52.12 | freemangordon | but first, I will try to have something but green image displayed |
18:07.33 | DocScrutinizer05 | make sure your video bus switch (actually mux) doesn't operate inverted, enabling front cam when you want main and vice versa |
18:09.07 | DocScrutinizer05 | check GPIO_97 |
18:09.18 | freemangordon | DocScrutinizer05: no way, i2c bus is switched there as well |
18:09.32 | freemangordon | yes, I do that switching by hand |
18:09.34 | DocScrutinizer05 | duh! never noticed |
18:09.51 | freemangordon | hmm, wait |
18:10.00 | freemangordon | it is not i2c bus, my bad |
18:10.24 | freemangordon | but gpio is connected to secondary camera reset |
18:10.55 | freemangordon | so if it is not the correct value, secondary camera is held in reset and does not respond to i2c bus red/writes |
18:10.58 | freemangordon | *reads |
18:11.07 | DocScrutinizer05 | o.O |
18:11.34 | freemangordon | see schemati, on page 2 |
18:11.35 | DocScrutinizer05 | indeed, CAM_B_EN |
18:11.40 | freemangordon | yeah |
18:12.19 | DocScrutinizer05 | is this actually reset on front cam module? |
18:12.20 | freemangordon | hmm, I get lots of error IRQs |
18:12.44 | freemangordon | no, it has another gpio for reset (102) |
18:12.48 | DocScrutinizer05 | error IRQ? |
18:12.54 | freemangordon | yes |
18:13.15 | DocScrutinizer05 | please elaborate |
18:13.33 | freemangordon | see CSI1B_IRQSTATUS in TRM |
18:13.43 | freemangordon | I get 0x615 here :D |
18:13.45 | DocScrutinizer05 | aah ok |
18:14.01 | DocScrutinizer05 | you got a pagenumber of TRM for me? |
18:14.33 | freemangordon | sure |
18:14.45 | freemangordon | 1538 |
18:14.56 | freemangordon | Table 12-138. |
18:15.24 | DocScrutinizer05 | SPRS599D ? |
18:15.51 | freemangordon | OMAP34xx_ES3.1.x_PUBLIC_TRM_vZM.pdf |
18:18.14 | DocScrutinizer05 | so SPRUF98? |
18:19.19 | freemangordon | DocScrutinizer05: http://46.249.74.23/TRM/ |
18:19.27 | DocScrutinizer05 | ohmy |
18:20.03 | freemangordon | DocScrutinizer05: SWPU223M |
18:24.45 | DocScrutinizer05 | thanks! :-) |
18:26.20 | DocScrutinizer05 | "bit NNN value 0x0" ??? 0x ? |
18:26.45 | freemangordon | hmm? |
18:27.07 | DocScrutinizer05 | a bit weird to give a hex value for a one bit var |
18:27.08 | freemangordon | DocScrutinizer05: elaborate, please |
18:27.15 | freemangordon | one bit? |
18:27.26 | freemangordon | DocScrutinizer05: CSI1B_IRQSTATUS |
18:28.19 | DocScrutinizer05 | http://wstaw.org/m/2016/04/15/plasma-desktopug2219.png |
18:28.40 | freemangordon | aah |
18:28.43 | freemangordon | well |
18:28.52 | DocScrutinizer05 | minor but puzzling |
18:29.16 | freemangordon | actually not, as this is *field* value |
18:29.23 | DocScrutinizer05 | you got 0x615? |
18:29.29 | freemangordon | it might be longer than 1 bit |
18:29.44 | DocScrutinizer05 | yes |
18:30.15 | freemangordon | the first is e11, then 411, then 615, which repeats countless times |
18:30.36 | freemangordon | 615 is the one that repeats |
18:30.53 | DocScrutinizer05 | 0b11000010101 |
18:30.57 | freemangordon | so, yeah |
18:31.21 | freemangordon | 111000010001 |
18:31.27 | freemangordon | e11 |
18:32.08 | freemangordon | that bit 4 (reserved) is actually CRC error |
18:32.14 | freemangordon | according to the kernel code |
18:32.20 | DocScrutinizer05 | mhm |
18:33.14 | freemangordon | hmm, KP explicitly sets crc to 0 |
18:34.14 | DocScrutinizer05 | according to TRM you write 1(!) to it to reset |
18:34.26 | DocScrutinizer05 | sounds weird |
18:34.28 | freemangordon | so? |
18:35.05 | DocScrutinizer05 | 0x0: READS: Event is false. WRITES: Status bit unchanged. 0x1: READS: Event is true (pending). WRITES: Status bit is reset. |
18:36.08 | DocScrutinizer05 | actually e11 doesn't look like too much of an error, most are just sync notifications |
18:36.25 | DocScrutinizer05 | just that CRC bit 4 |
18:36.38 | DocScrutinizer05 | aiui |
18:37.11 | DocScrutinizer05 | and SSC_IRQ bit 0 |
18:37.22 | DocScrutinizer05 | which means it's not synced yet |
18:37.35 | DocScrutinizer05 | again aiui |
18:38.26 | freemangordon | ok, CRC disabled, bit 4 is down |
18:38.30 | freemangordon | still no image |
18:38.48 | freemangordon | DocScrutinizer05: those sync errors mean that no image will appear |
18:39.34 | DocScrutinizer05 | I seem to recall you need to write a sync byte (word?) to cam sensor's "upper left pixel" |
18:39.59 | freemangordon | DocScrutinizer05: never heard of that |
18:40.03 | DocScrutinizer05 | cloudy memories |
18:40.27 | DocScrutinizer05 | maybe it's hardwired in sensor |
18:47.33 | DocScrutinizer05 | hmm, sort of there it is: >> Each frame is clearly identified by four unique 32-bit synchronization codes: frame start, frame end, line start, and line end, which are embedded in the serial bitstream. The logical channel identification number is also encoded in the synchronization codes.<< p1324 |
18:48.30 | DocScrutinizer05 | table 12-8 Sync codes |
18:49.03 | freemangordon | DocScrutinizer05: those codes are the same in stock kernel |
18:49.08 | freemangordon | already checked |
18:49.14 | DocScrutinizer05 | :nod: |
18:49.18 | freemangordon | 3210 |
18:49.59 | DocScrutinizer05 | sorry, afk. Prolly I'm not much of a help anyway |
18:53.06 | DocScrutinizer05 | Figure 12-57. CSI1 Receiver Block Diagram - first thing after CSI input is "Extract SYNC" |
18:53.38 | freemangordon | yep, but this is CSI1 that gives errors |
18:53.45 | freemangordon | so nothing gets out |
18:54.36 | DocScrutinizer05 | yes, it seems it doesn't sync |
18:55.11 | DocScrutinizer05 | on a very low layer |
18:55.18 | freemangordon | :nod: |
18:55.26 | DocScrutinizer05 | bbl |
18:55.44 | freemangordon | however, this is still HUGE success, so far we've never got ISP interrupts |
18:55.55 | freemangordon | *get |
18:57.05 | DocScrutinizer05 | check module config |
18:57.31 | DocScrutinizer05 | (huge success) :-) |
18:58.41 | DocScrutinizer05 | wait, I got some bookmark to some useful contribution regarding camera, from a dunno Jolla devel or sth? |
18:58.49 | DocScrutinizer05 | I'll try to find that later |
18:59.13 | freemangordon | ok |
18:59.14 | DocScrutinizer05 | aah |
18:59.21 | DocScrutinizer05 | ~fptf |
18:59.21 | infobot | extra, extra, read all about it, fptf is the Fremantle Porting Task Force, see http://talk.maemo.org/showthread.php?t=91308 |
19:00.06 | DocScrutinizer05 | About camera (about meego/sailfish, but for stuff like zerocopy and omap3camd and how stuff works it applies to fremantle as well, more or less): http://talk.maemo.org/showthread.php...55#post1397155 |
19:01.17 | DocScrutinizer05 | hmm, prolly irrelevant here, not kernel related |
19:01.46 | DocScrutinizer05 | or is it? omap3camd? |
19:04.00 | DocScrutinizer05 | anyway, afk for good now |
19:04.32 | freemangordon | YEEEAAH |
19:05.08 | freemangordon | got frames in mplayer!!! |
19:06.11 | freemangordon | Pali: ^^^ :) |
19:06.18 | Sicelo | \m/ |
19:06.58 | Pali | wau!! |
19:11.02 | freemangordon | well, there still no video, but no green only as well, I guess I need to tweak brightness etc |
19:13.55 | freemangordon | waw, test patterns seem to work :) |
19:13.58 | freemangordon | *wow |
19:18.24 | Sicelo | what test patterns? :) |
19:20.25 | freemangordon | vertical strips |
19:20.30 | freemangordon | color bars |
19:20.46 | freemangordon | <PROTECTED> |
19:20.46 | freemangordon | <PROTECTED> |
19:20.46 | freemangordon | <PROTECTED> |
19:20.46 | freemangordon | <PROTECTED> |
19:20.46 | freemangordon | <PROTECTED> |
19:21.45 | DocScrutinizer05 | :-D \o/ :-D \o/ :-D \o/ :-D \o/ :-D \o/ :-D \o/ :-D \o/ :-D \o/ :-D \o/ :-D \o/ :-D \o/ :-D \o/ :-D \o/ |
19:22.10 | DocScrutinizer05 | amazing what a lil bit of syncing can do, eh? ;-) |
19:22.57 | freemangordon | well, those bars are heavily distorted, I see way more than 8, an they are almost horizontal |
19:22.59 | DocScrutinizer05 | wait, who generates the test patterns? cam module or CSI interface in SoC? |
19:23.00 | freemangordon | but this ia a matter of tweaking |
19:23.04 | *** join/#maemo-ssu gregoa (~gregoa@colleen.colgarra.priv.at) |
19:23.09 | freemangordon | I guess it is cam module |
19:23.36 | *** join/#maemo-ssu peetah (~peetah@cha92-9-82-236-202-86.fbx.proxad.net) |
19:24.01 | DocScrutinizer05 | (distorted) sounds like wrong resolution |
19:24.20 | freemangordon | rather wrong pixel rate |
19:24.31 | DocScrutinizer05 | aka dividers for DMA addressing |
19:24.48 | freemangordon | well, there are at least 10 dividers :D |
19:25.00 | DocScrutinizer05 | pixel rate is sort of fixed, err synced. CSI has a clock and data differential line |
19:25.13 | freemangordon | no, it is not |
19:25.33 | freemangordon | camera module gets external clock and has its own pll |
19:25.47 | DocScrutinizer05 | it's not fixed, it's controlled by cam module aiui, and the CSI IF is synced to that |
19:25.54 | DocScrutinizer05 | aah ok |
19:26.05 | DocScrutinizer05 | then the cam PLL can be off too |
19:26.44 | freemangordon | loks like, as it reports `Pixel Rate' min 0 max 0 step 0 default 0 current 12000000. |
19:27.45 | freemangordon | hmm, this might be ok |
19:28.05 | DocScrutinizer05 | anyway you got (at least) one modulo divider for horizontal and one for vertical addressing in DMA on SOC, and you get a resolution setting that prolly works similar in cam module, both must match or the wrong pixel data will end on the wrong RAM address |
19:28.37 | *** join/#maemo-ssu sparetire (~sparetire@unaffiliated/sparetire) |
19:29.02 | freemangordon | the pipeline is way more complicated, you have CSI then CCDC then previewer then resizer :) |
19:29.37 | DocScrutinizer05 | sync between the two modulo divider groups gets done by CSI clk and table 12-8 Sync codes |
19:30.03 | DocScrutinizer05 | yeah sure there is more complicated stuff in it than just taht |
19:30.27 | DocScrutinizer05 | particularly resizing is 'fun' to get right, I guess |
19:31.12 | freemangordon | anyway, I think I did enough for today, will wait for sailus to appear to give some hints on where to look at |
19:36.02 | DocScrutinizer05 | good job, you earned your glass of spirit of your choice ;-D |
19:36.17 | freemangordon | :) |
19:44.24 | *** join/#maemo-ssu RedW (~redw@89-76-164-87.dynamic.chello.pl) |
19:54.00 | *** join/#maemo-ssu Sicelo009N (~sicelo@unaffiliated/sicelo) |
20:23.42 | *** join/#maemo-ssu peetah (~peetah@cha92-9-82-236-202-86.fbx.proxad.net) |
20:28.12 | *** join/#maemo-ssu sparetire (~sparetire@unaffiliated/sparetire) |
22:09.50 | *** join/#maemo-ssu Sicelo009N (~sicelo@unaffiliated/sicelo) |
22:18.41 | *** join/#maemo-ssu Sicelo009N (~sicelo@unaffiliated/sicelo) |
22:25.20 | *** join/#maemo-ssu Sicelo009N (~sicelo@unaffiliated/sicelo) |
23:30.11 | *** join/#maemo-ssu xes (~xes@unaffiliated/xes) |