S3c2410-linux實現網路視頻監控功能

來源:互聯網
上載者:User
文章目錄
  • 下載核心補丁和網路攝影機驅動補丁
  • 修改核心補丁版本號碼
  • 打核心補丁
  • 打網路攝影機驅動補丁
  • 編譯核心
  • 需要的點o檔案
  • 載入模組
 這兩天一直在作一個網路視頻監控的項目,前兩天在X86平台上實現了,從昨天開始就一直想怎麼把它移植到s3c2410開發板上。由於這個板子的所 有資料全部丟失,如果從頭再把u-boot、核心等所有的東東再移植一遍就比較麻煩,最後想一個比較簡單的辦法:板子上的核心版本號碼是2.4.18- rmk7-pxa1,我就到網上下一個2.4.18的核心和一個for arm的補丁,通過編譯核心產生自己需要的網路攝影機驅動模組,然後把驅動模組拷到開發板上,最後載入模組就行了。 [編輯]

載入網路攝影機驅動[編輯]

下載核心補丁和網路攝影機驅動補丁

http://ftp.linux.org.uk/pub/linux/arm/kernel/v2.4/patch-2.4.18-rmk7.bz2 (核心補丁) http://mxhaard.free.fr/spca50x/embedded/KernelPatch/usb-2.4.31LE06.patch.tar.gz (網路攝影機驅動spca5xx的補丁)

[編輯]

修改核心補丁版本號碼

開啟patch-2.4.18-rmk7檔案,把

+EXTRAVERSION = -rmk7

改為

+EXTRAVERSION = -rmk7-pxa1

前面已經說過板子上的核心版本號碼是-rmk7-pxa1,所以此處要將它改過來,否則在載入模組時會出現“核心版本號碼不一致”的錯誤

[編輯]

打核心補丁
cd linux-2.4.18
patch -p1 < ../patch-2.4.18-rmk7
[編輯]

打網路攝影機驅動補丁
cd linux-2.4.18/drivers/usb
patch -p1 < ../../../usb-2.4.31.patch

此處會出現兩個錯誤,解決方案如下: 把Makefile.rej檔案中的

subdir-$(CONFIG_USB_SPCA5XX)  += spca5xx
ifeq ($(CONFIG_USB_SPCA5XX),y)
obj-y += spca5xx/spca5xx.o
endif

加到Makefile檔案中
把Config.in.rej檔案中的

dep_tristate '  USB SPCA5XX Sunplus Vimicro Sonix Cameras'  CONFIG_USB_SPCA5XX     $CONFIG_USB $CONFIG_VIDEO_DEV

加到Config.in檔案中

[編輯]

編譯核心

開啟Makefile檔案,把

ARCH := $(shell uname -m | sed -e s/i.86/i386/ -e s/sun4u/sparc64/ -e s/arm.*/arm/ -e s/sa110/arm/)
CROSS_COMPILE =

改為

ARCH := arm
CROSS_COMPILE = /usr/local/arm/2.95.3/bin/arm-linux-

此處只能用2.95.3版的,如果用比它高的版本就會出現

“arm-linux-ld:arch/arm/kernel/vmlinux.lds:799: parse error
make: *** [.tmp_vmlinux1]”

的錯誤
核心配置

make menuconfig

此處只需選擇兩處就行了:

Multimedia device --->
<M>Video for linux
USB support --->
<M> Support for USB
--- USB Multimedia devices
<M> USB SPCA5XX Sunplus Vimicro Sonix Cameras

這些選項一定要是M
然後make dep && make modules就行了,因為我們不需要核心映像檔案所以就把make zIamge省去了

[編輯]

需要的點o檔案

可能需要四個點o檔案:spca5xx.o、spca_core.o、spcadecoder.o、videodev.o
linux-2.4.18/driver/usb/spca5xx檔案下有:spca5xx.o、spca_core.o、spcadecoder.o
linux-2.4.18/driver/media/video檔案下有:videodev.o
有以下四種方法檔案拷貝到開發板上:

1)用隨身碟等行動裝置
2)用NFS服務
3)用FTP服務
4)用Apache+wget
[編輯]

載入模組
insod videodev.o

會在/dev目錄下產生一個video0的字元裝置檔案

insod spca5xx.o

若出現類似於以下的資訊就代表成功了:

usb.c: registered new driver spca5xx
spca_core.c: spca5xx driver 00.57.06LE registered
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.