08/12/07 09:01:26 iWVZuwUN
>851
基本的にqemu+アースのsample.exeでテストしている。
qemuから返さなければならないデータはsample.exeで流したデータを
実際に検証用ファイルに突っ込んでリターン値をチェックして
qemuを再buildしての繰り返し。
状況によっては+VC2008Expressでステップ実行する事もあるし。
気が付いたけど、0x10が裏レジスタへのアクセスだったらの前提で
毎回全て書き換えるっていうのはばかばかしいし、
変わる部分だけ書き換えて実行って出来ないのかなって気がしてきた。
普通のソフトなら自分の状態と次の状態ってもつのが普通だろうし、
まるまる書くのは初期化時だけでいいのかなって気がしている。
>838
私は839が言っている事はある意味正しいと思う。
私自信は仕事でもやっているから判る部分もあるから、
838が何が必要かは言えないけど、
今回のドライバについて最低限のキーワードが欲しいなら、
kernelソースコード 私は頭から書くのが面倒だったんでdrivers/netから適当に
もって来た
レジスタマップ これがないから苦労している
データシート レジスタマップとほぼ同意。HWのタイミングとかかいてある
PCIコンフィグ PCIバスなんで必須
DMA 実際にデータを転送する場合は使うはずなんで。
後は838次第
856:login:Penguin
08/12/07 10:27:19 Uz9nk4Oy
>>855
すばらしい回答ありがとうございます。
こんな感じで、いろいろキーワードよろ!
857:login:Penguin
08/12/07 12:17:29 4x8zgmll
>>856
あんた基礎スキルはどの程度あるの?
俺も素人だけど協力出来るかな。
858:login:Penguin
08/12/07 12:21:45 Uz9nk4Oy
>>857
プログラミングは普通にできる。
その程度。
でも基礎スキルなんて聞くことに意味ある?
キーワードさえわかれば、それについて調べればいいだけでしょ?
だから調べるべきキーワードをたくさんくれーw
859:login:Penguin
08/12/07 12:22:23 Uz9nk4Oy
あと参考になる本も。
860:login:Penguin
08/12/07 12:24:11 M3rQutBy
プログラム普通にできるなら
ここまで教えて貰ったら十分だろ。
いいかげん黙ってろ
861:login:Penguin
08/12/07 12:36:18 19Ftf9aX
プログラムが書けるかどうかは別として、
とりあえずPCIの知識が要るんじゃないか。
CQ出版のTECH-Iシリーズだったかでいろいろ
出てるんで買って来たらいい。
キーワードを元にネットの検索で何とかなると思ってる
かもしれないがネットで手に入る散文的な情報じゃ
どうにもならんと思うよ
862:login:Penguin
08/12/07 12:55:28 ENsADJSI
つーかお前らいい加減スルーしろよ
PT1の解析やろうって時になんで初心者講座やってんだよ
863:login:Penguin
08/12/07 12:57:36 4x8zgmll
>>858
いや、何も出来ない素人が質問してるように感じたんで。
クレクレ行為に意味あるのか疑問だったからさ‥
>>861
趣味でLinuxいじる程度なんで力になれるかわかりませんが
本探して勉強してみます。
ありがとう。
864:login:Penguin
08/12/07 13:00:51 wvMf2CxU
あと何年くらい待てば使えるようになりますか。
865:login:Penguin
08/12/07 13:11:59 iWVZuwUN
>850の法則にしたがって
SetTunerSleep()だけで実行させてみてこんな法則が出て来たんだけど、
他で何か法則みつけた奴いる?
アドレス(PT1pci_mmio_writelで書き込まれた上位2バイト)の書き込みデータ(下
位2バイト)
4C, 50, 54の書き込みデータビット6 = 1 1 1 = チューナ2 ISDB-T?
4C, 50, 54の書き込みデータビット6 = 0 0 0 = チューナ1 ISDB-T?
4C, 50, 54の書き込みデータビット6 = 0 0 0 = チューナセレクト? = チューナ1
4C, 50, 54の書き込みデータビット6 = 1 1 1 = チューナセレクト? = チューナ2
以下の4点が不明。ISDBセレクトなのかな?
58, 5C, 60の書き込みデータビット6 = 0 0 0 = ISDBセレクト? ISDB-S
A0, A4, A8の書き込みデータビット6 = 0 0 0 = ISDBセレクト? ISDB-S
58, 5C, 60の書き込みデータビット6 = 1 1 1 = ISDBセレクト? ISDB-T
B8, BC, C0の書き込みデータビット6 = 1 1 1 = ISDBセレクト? ISDB-T
>864
しらん。自分が作れ。
もしくは強力せい。
866:login:Penguin
08/12/07 13:27:20 iWVZuwUN
>865
すまんビット6じゃなくてビット10だった。
867:login:Penguin
08/12/07 16:52:58 vmOXofgJ
素朴な疑問。
HDK買えば詳細な仕様が手に入るのに、なんでお前らそんなことしてるんだ?
868:login:Penguin
08/12/07 17:20:30 EcJ2K89S
HDKってなに? 買うっていくらするの?
869:login:Penguin
08/12/07 21:41:09 RUZbWxMQ
NDA
870:login:Penguin
08/12/07 21:43:39 iWVZuwUN
>867
私も知りたい。
HDKってなに?
文脈からすると
Hardware Design Kitって事?
普通言うならリファレンスボードとか言うけど、
アースソフトから出ているのか?
何が判る?
価格は?
ちなみにアースソフトに出せる部分のデータシートを公開する気はあるかって聞いたら、
欲しい人が少ないから公開する気なしって言われたが…。
871:login:Penguin
08/12/07 22:21:04 7nf1njpH
>>870
欲しいぞ!
872:login:Penguin
08/12/08 16:06:27 gfhNOsnh
公開すると変な質問する馬鹿が迷い込んでくるので
個別に書類書いてNDA結ぶのが妥当なんじゃね?
例:
・当社への質問禁止
・関連する企業への質問禁止
・他言無用、というか契約したこと自体を口外することを禁止
873:login:Penguin
08/12/08 16:07:37 g9jokiCy
NDA結んじゃったらドライバ書いて配布できないじゃん。
ああ、バイナリならOKか。
874:login:Penguin
08/12/08 16:08:40 o80vUL/H
こうしてまたblobが1つ...
875:login:Penguin
08/12/08 18:27:06 hJVeTDXJ
それは全然面白くないかな~
開発している奴が飽きたり引き継げる人とかどう判断する?
引き継ぐ人もNDAしているか判らんし、結局動かなくてアースソフトに文句言う奴がでるって事は変わらんと思うけど。
876:login:Penguin
08/12/08 18:34:48 gfhNOsnh
>>875
アースソフトに文句を言うような馬鹿が迷い込んでくるから
NDAを結ぶわけでしょ。
資料公開に当たってのコストを誰が負担するの?
と考えれば、公開しない方向に流れるのは当然かと。
877:login:Penguin
08/12/08 18:40:51 8ht3xXyv
もうアースソフトに雇われるしかないな
878:login:Penguin
08/12/08 18:44:45 g9jokiCy
>>875
昔、LogitechのWebカメラのドライバをコントローラ作ってた
PhilipsとNDA結んで一部バイナリで公開してた人がいた。
したら粘着な人がやってきていろいろ言ったもんだから
結局、その人もうんざりしたか面倒になったみたいで公開を
やめてしまったと言うことがあった。いまはUSB Videoが
整備されたおかげで不自由なくなったけどね。
いまnVidiaが一部バイナリでドライバを提供してるけどそれに
対しても色々いってる人がいるね。nVIdiaは意に介してないようだけど
個人ならうんざりしてやっぱり辞めるだろう。
てなことがあるんで、LinuxではNDA結んでどうのやるより
正々堂々とリバースエンジニアリングでドライバ書くのがいいと思う。
879:login:Penguin
08/12/08 18:48:33 o80vUL/H
NDA にサインして GPL ドライバ開発ってどう?
URLリンク(slashdot.jp)
880:login:Penguin
08/12/08 18:53:50 U1a+r5+G
>>878
M$ってそんな妨害活動までしてるの??
とてもじゃないが信じられないのだが。
881:login:Penguin
08/12/08 19:36:51 hJVeTDXJ
>876
ポインタか論点ずれてない?
私が言いたいイメージはむしろ878のたとえの方が近いよ。
粘着な人が来るのは無視すればすむ様に出来ると思うけど、
それがアースソフトに波及する方が嫌って事。
879の例のNDAなら結んでも構わないと思う。
お財布との相談になるかもしれないけどね。
目的はlinux上でPT1で録画するって事で、
自分だけがメンテするんじゃないって方法が確立出来ればいいから。
自分がすべて抱えるとろくな事にならないし、
自分のコードを100パー信じる程バカじゃないから。
882:814 というか ◆N/E9PqspSk
08/12/10 04:15:45 MXZ3Umn4
DMAの構造をたぶん把握した。検証してないけど美しいからたぶんあってる。
夜あたりにゆっくり書く。あとはmmioだけだから最悪blobで何とかなるよね。
883:login:Penguin
08/12/10 07:56:40 M8IGUxVt
もう少し詳しく見ていくと多分チューナー部分については8ビットなんじゃないかなっていう様に見えてきた。32ビット中上位2バイトが4ずつ上がるんで、FPGAのアドレスで、下位2バイト中が1ずつ上がるんでI2Cのアドレスじゃないかなって予測。
出せるデータを纏めていたんだけど、今日か明日中にWIKI立てる事にしたんで、解析結果を纏めましょう。
884:login:Penguin
08/12/10 08:57:59 kBJoQ8P5
>>865
その法則があってるのか、また違う法則も含まれてるのか知りたいから、
データビットnの値だけでなく全部だしてほすい
885:login:Penguin
08/12/10 09:06:21 BR79+tOR
ソースが出てるよ。
URLリンク(earthsoft.jp)
886:login:Penguin
08/12/10 09:18:20 htzVQW07
>>885
期待したが肝心の部分が抜けている
887:login:Penguin
08/12/10 09:33:53 htzVQW07
ちゃんと見ずに言っていた。前言撤回。
888:login:Penguin
08/12/10 09:40:06 dQTy3QNW
おお!
889:login:Penguin
08/12/10 09:47:05 htzVQW07
NDA 下にある TC90512.h の中身を探る作業になるな。
890:login:Penguin
08/12/10 09:47:20 eUeiWS2P
おお! これは期待していいですかね
891: ◆N/E9PqspSk
08/12/10 10:56:10 MXZ3Umn4
チューナ制御部分以外は使える感じですね。
0x10への書込がI2Cで、0x00への4の書込が送信開始、その後の0x00のReadが送信完了待ち
ということが分かっただけでもかなりの収穫だと思う。
892:login:Penguin
08/12/10 11:06:20 6nO3ieGe
社長は神
893:login:Penguin
08/12/10 11:10:35 dQTy3QNW
有用な情報は↓と共有で^^
【開発】アースソフト PT1 ソフトウェア【TS抜き】
スレリンク(avi板)
894:login:Penguin
08/12/10 12:23:20 M8IGUxVt
>884了解
今のところ私が判っている事すべてを載せるつもり。
初期化だけでI2C部分の送信が85ブロック程あるんで
法則見つけるのは人数がいれば楽になるかも。
ISDB-Sについてはスロット数とTSIDは狙った値が出せるけど、
CNとか、肝心なTMCCとかはまだ値が判らない。
ISDB-Tについてはまだ未調査。
こんなところ。
895:login:Penguin
08/12/10 23:14:57 M8IGUxVt
とりあえず、
URLリンク(sourceforge.jp)
にプロジェクト登録してwiki立てて見たんでよろしくです。
まずは初期化関連と、
qemu用のソースを置いて置きました。
896:login:Penguin
08/12/11 00:04:25 SjrpJCre
>>895
乙
とりあえずはじまったな
897:login:Penguin
08/12/11 00:33:38 BHygqmNU
>>895
乙です
898: ◆N/E9PqspSk
08/12/11 03:56:38 eThMYV4Y
>>895
乙。
せっかくなので、DMAに関しての情報をページを作って書いておきました。
899:login:Penguin
08/12/13 10:46:41 8gxupyfq
まずは初期化とISDB-S迄判っている部分に関しては
wikiにupしておいたんでよろ。
ISDB-T側についてはまだ未調査なんで、
ISDB-Tについて調査した人いる?
900:login:Penguin
08/12/13 11:01:56 FR1IV5y3
チューナモジュールのI2C端子のデータとログとを比較したいな。
901:login:Penguin
08/12/13 12:53:14 oWsxDrmY
で、今のところどれくらい解析完了してるんだ?
あとどれくらいで出来そうなんだ?
902:login:Penguin
08/12/13 19:44:09 qhoW/1q4
見通しつくわけないだろ
本当に解析完了できるかどうかもわからない
903:login:Penguin
08/12/13 22:01:59 8gxupyfq
やるべき事は
ベースのデータを作る
戻り値のデータが正常かどうかの判断
DMAをどうするか?
初期化まわりやタイマなど等色々色々
904:login:Penguin
08/12/14 10:12:50 ErRCPl54
DMAってそんなに面倒なん?
905:login:Penguin
08/12/14 11:38:01 Ryy9BIN6
>904
面倒なのは定期的にチェックしなければならないって事位。
割り込みがないんで自分でタイマをはってDMAされたかチェックして
それぞれにコピーしてって事かな。
906:login:Penguin
08/12/14 12:17:24 ErRCPl54
ふーん。DMAって直接使ったことないから
よくわからんのよ。
907:login:Penguin
08/12/14 13:12:44 Ryy9BIN6
つうかCPU使用率をどうやって押さえるかっていうのがポイントだと思っている
wikiのDMA部分をまだちゃんと読んでないけど
ざっと読んだ限り
受信DMAと書いている部分がデバイスファイル側で持つデータ領域、
送信DMAと書いてある部分が実際にPT1との間でDMAされるDMAリングでOK?
908:login:Penguin
08/12/14 23:37:06 pn1WAF5i
何か楽しそう。俺も混ぜてもらいたいんだが、モノが手に入らねぇorz
実機がなくて出来る最終奥義は、逆汗になっちまうからな。
現行法じゃ、クリーンルームにしても、逆汗は著作権法に抵触するんだっけか?
909:login:Penguin
08/12/15 06:02:44 v72mQCSN
>>908
どうなんだろね。 ↓みると、大丈夫そうに見えるけど。
>リバースエンジニアリングを行う人と、プログラムを作成する人を別個に分け、
>プログラムを作成する人に、リバースエンジニアリングの情報が行かないように
>して、プログラムを作成した場合は、例え、他人の著作権にかかる著作物と
>同一のものが出来たとしても、著作権侵害とはなりません。
>このように、プログラムを作成する人のところに、他人の著作権にかかる
>著作物の情報がいかないようにして、プログラムを作成する方式のことを
>一般にクリーンルームと言います。
URLリンク(www.venture.nict.go.jp)
910:login:Penguin
08/12/15 21:58:56 qb8R2dBJ
I2Cの解析の仕方が間違っていたみたい。
詳しくはXC3S_I2C.hのWriteBlock()とReadBlock()を
見ている最中だけど、
もしかしてI2Cのビットストリームをそのまま出してる?
911:login:Penguin
08/12/15 22:44:41 47dFpyKV
I2Cって結局何なんですか?
912:login:Penguin
08/12/15 23:39:44 qb8R2dBJ
>911
URLリンク(www.picfun.com)
をみれ。
I2C通信のタイミングのSCL/SCDと
10BITタイミングのBIT列を
そのまま送ってる。
913:login:Penguin
08/12/15 23:50:21 FclJNXZe
10BITって何?へんなこと教えるなよ。
見るなら URLリンク(www.nxp.com) をみろ