mkimage取得方法

因為要將編好的kernel編成uImage
所以需要mkimage
網路上有提供
但是我當時不知道
只要下載jigit就可以了
apt-get install jigit

但是不知道為什麼不能用
我還在查
所以還是用以下生成出來的執行檔比較好
需要自己下載source code
編譯
但是他指附在uboot的程式裡
所以先下載uboot的程式
點此連結
在上面的網址找你想要下載uboot的版本
接下來在Linux下打
wget ftp://ftp.denx.de/pub/u-boot/u-boot-2009.11.tar.bz2

註:u-boot-2009.11.tar.bz2為你想下載的檔案
下載後解壓縮打
tar -jxvf u-boot-2009.11.tar.bz2
然後進入uboot的資料夾
因為我沒有要編uboot
只是因為mkimage的編譯被包在裡面
所以一定要uboot的make來編譯才行
所以按照uboot的編譯
首先要default config
也就是下
make at91sam9263ek_nandflash_config

註:at91sam9263ek_nandflash_config為其中的define config
但因為我沒有要編譯uboot所以講解跳過
看到Configuring for at91sam9263ek board...
代表設定成功
接下來本來要設定cross_compile
但是我只要mkimage所以接下來執行
make
雖然會有很多錯誤
但是進入
cd tools/
就會看見mkimage了
接下來就把mkimage
放到你path裡面的某一個地方
例如:/usr/bin
cp mkimage /usr/bin
就完成了

windows 7 開啟防火牆的PORT

開啟防火牆的方式
通常windwos 7的防火牆是開啟的
所以要是沒有設定外部是無法連進去
所以要設定好才能讓外部連到這台電腦
開啟控制台
將檢視方式選擇為大圖示


開啟windows防火牆
看看防火牆的狀態是否有開啟

點選進階設定
選擇輸入規則
再選擇新增規則

這裡要選擇連接埠這個選項
進行下一步

設定為TCP
特定連接埠設定為你所想要開啟的連接埠
接下來是下一步

選擇允許連線
下一步 

設定檔看你自己想要在哪個地方開啟在做設定
名稱的話就隨意
這樣就可以完成了

AT91SAM9263 kernel 編譯步驟

環境:
Linux : Ubuntu 8.04
Kernel : Linux kernel 2.6.27

首先需要下載Linux kernel
點此教學連結
再將廠商的修改檔Patch上去
點此教學連結
以上步驟都做好後再進行編譯

windows XP 開啟防火牆的PORT

開啟防火牆的方式
通常windwos XP的防火牆是開啟的
所以要是沒有設定外部是無法連進去
所以要設定好才能讓外部連到這台電腦

TFTP server for Ubuntu

安裝tftpd
apt-get install tftpd

編輯inetd.conf
vi /etc/inetd.conf

新增輸入
tftp dgram udp wait nobody /usr/sbin/tcpd /usr/sbin/in.tftpd /tftpboot

新增資料夾/tftpboot
mkdir /tftpboot


設定權限
chmod 777 /tftpboot

重新啟動inetd

/etc/init.d/inetd restart

註:/tftpboot可以以照自己喜歡的路徑來設定
註:prot為69類型為UDP

此外有另外一種狀況
安裝tftp時會同時安裝xinetd
這時候上面的設定都會找不到
此時就要在
/etc/xinetd.d下建立tftp的文件檔
並輸入資料
vi /etc/xinetd.d
內容為
# default: off
# description: The tftp server serves files using the Trivial File Transfer
#    Protocol.  The tftp protocol is often used to boot diskless
#    workstations, download configuration files to network-aware printers,
#    and to start the installation process for some operating systems.
service tftp
{
    socket_type     = dgram
    protocol        = udp
    port            = 69
    wait            = yes
    user            = root
    server          = /usr/sbin/in.tftpd
    server_args     = /tftpboot
    disable         = no
}

AT91SAM9263 uBoot首次燒入



假如是這塊板子的可以跟我這樣做
這塊是跟公板差不多的layout
所以公板因該也可以這樣做

首先先將系統核心切換到NAND Flash
也就是將S1的2、3隻腳切換到ON
1、4隻腳切換到OFF

接下來就是連接板子的USB-JTAG到電腦
開啟裝置管理員看看是否有連接成功
 
看看是否有兩個USB Serial Port(COMXX)
註:COMXX會因為系統的關係編號會有所不同
問題一: 沒有兩個USB Serial Port
要是沒有的話在USB Composite Device按右鍵
選擇解除安裝
再重新插入USB-JTAG到電腦
直到有兩個出現
要不然就換個電腦的USB插槽試試看
問題二:沒有找到驅動程式
去網路下載PL2303的Driver
安裝就可以找到了
開啟putty
請去下載0.60以上的版本


將選項選到Serial
將Serial line打上COMXX
註:COMXX會因為系統的關係編號會有所不同
請選擇USB Serial Port的二個的編號
Speed填上115200
完成時按下Open
註:要是你不想要每次都這樣設定
可以在Saved Sessions裡填上名子
然後按下Save
下次開啟時只要在名子上點兩下就可直接Open

接下來按下reset的按鈕
要是畫面出現RomBOOT的文字
代表沒有uBoot
要燒入uBoot接下來就是如何燒入uBoot
要是有出現uBoot代表有uBoot不需要燒入

下載AT91的ISP
按此連結

安裝後
將其版子的USB-DEV連接到電腦
電腦會接收到版子的USB
開啟剛安裝好的SAM-BA
要是有連接成功
就會出現/usb/ARM0
選擇board為AT91SAM9263-EK
connect

就會進入燒入模式
切換到NandFlash
選擇Scripts為Enable NandFlash按下Execute
就會顯現一些資訊有上圖的資訊代表成功

 
接下來燒入開頭檔
選擇Scripts為Send Boot File按下Execute
會開啟選擇檔案
找到版子附的檔名為nandflash_at91sam9263ek.bin的檔案
確定就OK

再來就是燒入uBoot的系統
首先將Send File Name選擇到版子附的檔名為NandFlash_u-boot.bin的檔案
將Address的位置設定到0x20000
按下Send File就可以了