2015年2月8日日曜日

V4L-DVBをごにょごにょ

【DVB driver for SKnet MonsterTV HD series】

を3.0.6Kernelに組み込もうとしているが挫折

途中までのパッチ

drivers/media/dvb/dvb-usb/mtvhd.c: In function ‘__check_enable_hdp_rc’:
drivers/media/dvb/dvb-usb/mtvhd.c:28:1: warning: return from incompatible pointer type [enabled by default]
drivers/media/dvb/dvb-usb/mtvhd.c: At top level:
drivers/media/dvb/dvb-usb/mtvhd.c:708:4: error: unknown field ‘frontend_attach’ specified in initializer
drivers/media/dvb/dvb-usb/mtvhd.c:708:4: warning: initialization makes integer from pointer without a cast [enabled by default]
drivers/media/dvb/dvb-usb/mtvhd.c:708:4: warning: (near initialization for ‘hdu2_properties.adapter[1].size_of_priv’) [enabled by default]
drivers/media/dvb/dvb-usb/mtvhd.c:709:4: error: unknown field ‘streaming_ctrl’ specified in initializer
drivers/media/dvb/dvb-usb/mtvhd.c:709:4: warning: initialization from incompatible pointer type [enabled by default]
drivers/media/dvb/dvb-usb/mtvhd.c:709:4: warning: (near initialization for ‘hdu2_properties.adapter[1].frontend_ctrl’) [enabled by default]
drivers/media/dvb/dvb-usb/mtvhd.c:710:4: error: unknown field ‘stream’ specified in initializer
drivers/media/dvb/dvb-usb/mtvhd.c:710:4: warning: braces around scalar initializer [enabled by default]
drivers/media/dvb/dvb-usb/mtvhd.c:710:4: warning: (near initialization for ‘hdu2_properties.adapter[1].fe_ioctl_override’) [enabled by default]
drivers/media/dvb/dvb-usb/mtvhd.c:711:5: error: field name not in record or union initializer
drivers/media/dvb/dvb-usb/mtvhd.c:711:5: error: (near initialization for ‘hdu2_properties.adapter[1].fe_ioctl_override’)
drivers/media/dvb/dvb-usb/mtvhd.c:711:5: warning: initialization makes pointer from integer without a cast [enabled by default]
drivers/media/dvb/dvb-usb/mtvhd.c:711:5: warning: (near initialization for ‘hdu2_properties.adapter[1].fe_ioctl_override’) [enabled by default]
drivers/media/dvb/dvb-usb/mtvhd.c:712:5: error: field name not in record or union initializer
drivers/media/dvb/dvb-usb/mtvhd.c:712:5: error: (near initialization for ‘hdu2_properties.adapter[1].fe_ioctl_override’)
drivers/media/dvb/dvb-usb/mtvhd.c:712:5: warning: excess elements in scalar initializer [enabled by default]
drivers/media/dvb/dvb-usb/mtvhd.c:712:5: warning: (near initialization for ‘hdu2_properties.adapter[1].fe_ioctl_override’) [enabled by default]
drivers/media/dvb/dvb-usb/mtvhd.c:713:5: error: field name not in record or union initializer
drivers/media/dvb/dvb-usb/mtvhd.c:713:5: error: (near initialization for ‘hdu2_properties.adapter[1].fe_ioctl_override’)
drivers/media/dvb/dvb-usb/mtvhd.c:713:5: warning: excess elements in scalar initializer [enabled by default]
drivers/media/dvb/dvb-usb/mtvhd.c:713:5: warning: (near initialization for ‘hdu2_properties.adapter[1].fe_ioctl_override’) [enabled by default]
drivers/media/dvb/dvb-usb/mtvhd.c:714:5: error: field name not in record or union initializer
drivers/media/dvb/dvb-usb/mtvhd.c:714:5: error: (near initialization for ‘hdu2_properties.adapter[1].fe_ioctl_override’)
drivers/media/dvb/dvb-usb/mtvhd.c:714:5: warning: braces around scalar initializer [enabled by default]
drivers/media/dvb/dvb-usb/mtvhd.c:714:5: warning: (near initialization for ‘hdu2_properties.adapter[1].fe_ioctl_override’) [enabled by default]
drivers/media/dvb/dvb-usb/mtvhd.c:715:6: error: field name not in record or union initializer
drivers/media/dvb/dvb-usb/mtvhd.c:715:6: error: (near initialization for ‘hdu2_properties.adapter[1].fe_ioctl_override’)
drivers/media/dvb/dvb-usb/mtvhd.c:715:6: warning: braces around scalar initializer [enabled by default]
drivers/media/dvb/dvb-usb/mtvhd.c:715:6: warning: (near initialization for ‘hdu2_properties.adapter[1].fe_ioctl_override’) [enabled by default]
drivers/media/dvb/dvb-usb/mtvhd.c:716:7: error: field name not in record or union initializer
drivers/media/dvb/dvb-usb/mtvhd.c:716:7: error: (near initialization for ‘hdu2_properties.adapter[1].fe_ioctl_override’)
drivers/media/dvb/dvb-usb/mtvhd.c:716:7: warning: initialization makes pointer from integer without a cast [enabled by default]
drivers/media/dvb/dvb-usb/mtvhd.c:716:7: warning: (near initialization for ‘hdu2_properties.adapter[1].fe_ioctl_override’) [enabled by default]
drivers/media/dvb/dvb-usb/mtvhd.c:718:5: warning: excess elements in scalar initializer [enabled by default]
drivers/media/dvb/dvb-usb/mtvhd.c:718:5: warning: (near initialization for ‘hdu2_properties.adapter[1].fe_ioctl_override’) [enabled by default]
drivers/media/dvb/dvb-usb/mtvhd.c:799:4: error: unknown field ‘frontend_attach’ specified in initializer
drivers/media/dvb/dvb-usb/mtvhd.c:799:4: warning: initialization makes integer from pointer without a cast [enabled by default]
drivers/media/dvb/dvb-usb/mtvhd.c:799:4: warning: (near initialization for ‘hdp2_properties.adapter[1].size_of_priv’) [enabled by default]
drivers/media/dvb/dvb-usb/mtvhd.c:800:4: error: unknown field ‘streaming_ctrl’ specified in initializer
drivers/media/dvb/dvb-usb/mtvhd.c:800:4: warning: initialization from incompatible pointer type [enabled by default]
drivers/media/dvb/dvb-usb/mtvhd.c:800:4: warning: (near initialization for ‘hdp2_properties.adapter[1].frontend_ctrl’) [enabled by default]
drivers/media/dvb/dvb-usb/mtvhd.c:801:4: error: unknown field ‘stream’ specified in initializer
drivers/media/dvb/dvb-usb/mtvhd.c:801:4: warning: braces around scalar initializer [enabled by default]
drivers/media/dvb/dvb-usb/mtvhd.c:801:4: warning: (near initialization for ‘hdp2_properties.adapter[1].fe_ioctl_override’) [enabled by default]
drivers/media/dvb/dvb-usb/mtvhd.c:802:5: error: field name not in record or union initializer
drivers/media/dvb/dvb-usb/mtvhd.c:802:5: error: (near initialization for ‘hdp2_properties.adapter[1].fe_ioctl_override’)
drivers/media/dvb/dvb-usb/mtvhd.c:802:5: warning: initialization makes pointer from integer without a cast [enabled by default]
drivers/media/dvb/dvb-usb/mtvhd.c:802:5: warning: (near initialization for ‘hdp2_properties.adapter[1].fe_ioctl_override’) [enabled by default]
drivers/media/dvb/dvb-usb/mtvhd.c:803:5: error: field name not in record or union initializer
drivers/media/dvb/dvb-usb/mtvhd.c:803:5: error: (near initialization for ‘hdp2_properties.adapter[1].fe_ioctl_override’)
drivers/media/dvb/dvb-usb/mtvhd.c:803:5: warning: excess elements in scalar initializer [enabled by default]
drivers/media/dvb/dvb-usb/mtvhd.c:803:5: warning: (near initialization for ‘hdp2_properties.adapter[1].fe_ioctl_override’) [enabled by default]
drivers/media/dvb/dvb-usb/mtvhd.c:804:5: error: field name not in record or union initializer
drivers/media/dvb/dvb-usb/mtvhd.c:804:5: error: (near initialization for ‘hdp2_properties.adapter[1].fe_ioctl_override’)
drivers/media/dvb/dvb-usb/mtvhd.c:804:5: warning: excess elements in scalar initializer [enabled by default]
drivers/media/dvb/dvb-usb/mtvhd.c:804:5: warning: (near initialization for ‘hdp2_properties.adapter[1].fe_ioctl_override’) [enabled by default]
drivers/media/dvb/dvb-usb/mtvhd.c:805:5: error: field name not in record or union initializer
drivers/media/dvb/dvb-usb/mtvhd.c:805:5: error: (near initialization for ‘hdp2_properties.adapter[1].fe_ioctl_override’)
drivers/media/dvb/dvb-usb/mtvhd.c:805:5: warning: braces around scalar initializer [enabled by default]
drivers/media/dvb/dvb-usb/mtvhd.c:805:5: warning: (near initialization for ‘hdp2_properties.adapter[1].fe_ioctl_override’) [enabled by default]
drivers/media/dvb/dvb-usb/mtvhd.c:806:6: error: field name not in record or union initializer
drivers/media/dvb/dvb-usb/mtvhd.c:806:6: error: (near initialization for ‘hdp2_properties.adapter[1].fe_ioctl_override’)
drivers/media/dvb/dvb-usb/mtvhd.c:806:6: warning: braces around scalar initializer [enabled by default]
drivers/media/dvb/dvb-usb/mtvhd.c:806:6: warning: (near initialization for ‘hdp2_properties.adapter[1].fe_ioctl_override’) [enabled by default]
drivers/media/dvb/dvb-usb/mtvhd.c:807:7: error: field name not in record or union initializer
drivers/media/dvb/dvb-usb/mtvhd.c:807:7: error: (near initialization for ‘hdp2_properties.adapter[1].fe_ioctl_override’)
drivers/media/dvb/dvb-usb/mtvhd.c:807:7: warning: initialization makes pointer from integer without a cast [enabled by default]
drivers/media/dvb/dvb-usb/mtvhd.c:807:7: warning: (near initialization for ‘hdp2_properties.adapter[1].fe_ioctl_override’) [enabled by default]
drivers/media/dvb/dvb-usb/mtvhd.c:809:5: warning: excess elements in scalar initializer [enabled by default]
drivers/media/dvb/dvb-usb/mtvhd.c:809:5: warning: (near initialization for ‘hdp2_properties.adapter[1].fe_ioctl_override’) [enabled by default]
make[4]: *** [drivers/media/dvb/dvb-usb/mtvhd.o] エラー 1
make[3]: *** [drivers/media/dvb/dvb-usb] エラー 2
make[2]: *** [drivers/media/dvb] エラー 2
make[1]: *** [drivers/media] エラー 2
make: *** [drivers] エラー 2

になるのでまだ未解決

目標としてはこのドライバでPX-S3U2が動くといいな(たぶん無理)

PX-S3U2のAS11LoaderのUSBログ
とりあえずここからfirmwareとかごにょごにょできるはず

PX-S3U2のLinuxドライバってGNU GP(略)

2015年2月6日金曜日

Chinachu on Banana Pi


Banana Piは中華製のRaspberry Piのパチモノちっくな
Arm-based Single board computerで、
Allwinner A20を搭載しているためRaspberryPIより速い
そしてSerialATAを持っているので録画鯖に最適です。

Aliexpressで4-5kぐらいで手に入ります
もしくはアキバでも入手可能なので突撃してみるといいかもです

SDcardに好きなイメージ突っ込んで焼きます
以下のDebian wheezyをいれてみました
http://www.igorpecovnik.com/2014/09/07/banana-pi-debian-sd-image/
fdiskでパーティションを広げたりいろいろ好きにいじってください

拾い食いはいやな方はごりごりkernel buildとdebootstrapするといいと思う

これに1TBのTOSHIBA HDDとLinuxで使えそうなICカードリーダをつなげます
http://www.amazon.co.jp/dp/B003XF2JJY
とか
realtek のチップがのった格安リーダとか使えるはず

http://mimikakimemo.hatenablog.jp/entry/2014/06/08/193608
を参考に

$ sudo apt-get install build-essential curl git-core libssl-dev yasm libtool autoconf libboost-all-dev

$ git clone git://github.com/kanreisa/Chinachu.git ~/chinachu
$ cd ~/chinachu/

ここでパッチを当ててください。
ただしchinachuのバージョンがころころと変わるので
当たらなかったら大意をくみ取って書き換えてください
sedでnave.shをいじってます。
 やっていることは

 CFLAGSのmarchをarmv7-aでベタ指定
 nave(というかnode)を --without-snapshotでコンパイル

$ ./chinachu installer
Chinachu Installer Menu:
[!] These are installed under all /home/*****/chinachu/...
[!] Recommend the Auto installation.
1) Auto (full)            5) Node.js Modules       9) libfdk-aac
2) Auto (fast)            6) epgdump              10) libogg
3) submodule              7) libx264              11) libvorbis
4) Node.js Environment    8) libvpx               12) libav
what do you install? > 1

あとはほかの方がかかれていることと同じなので詰まるところはないはずです。
一時間以上かかるので放置してください


chinachuが導入できたらnginxのstableを最新版を野良ビルドして導入してください。
(Debian wheezyだとnodeのsocket.ioに対応してない?)

server {
    listen 80;
    server_name hogehoge.hoge;
    access_log  /var/log/nginx/hogehoge.hoge.log;
    location / {
            proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection "upgrade";
            proxy_pass http://127.0.0.1:10772/;
        }
    }

とりあえずチューナーが来るのを待っている。

Realtek RTS5169の回路図解析?

Realtek RTS5169はSmartcard やSDなどMultimediacardの統合チップである。

ただしこれを素でSmart card reader に使っている製品もちらほらある。

その場合の回路図をジャンクのsmartcard readerから書き起こしたのでメモ程度に

おいておきます。

※無保証 コンデンサの定数は不明(LCRメータはあるので時季に追加します)


それと基板のスキャンデータもPSDでおいておきます。
回路図が違っていたら突っ込みを入れてください。
回路図が汚いのは仕様です