FC2カウンター FPGAの部屋 Linux

FPGAやCPLDの話題やFPGA用のツールの話題などです。 マニアックです。 日記も書きます。

FPGAの部屋

FPGAの部屋の有用と思われるコンテンツのまとめサイトを作りました。Xilinx ISEの初心者の方には、FPGAリテラシーおよびチュートリアルのページをお勧めいたします。

@ikwzmさんのUltraZed 向け Debian GNU/Linux の構築をやってみる15(udmabuf を使用する)

@ikwzmさんのUltraZed 向け Debian GNU/Linux の構築をやってみる14(led_on.py を C で書いてみる)”の続き。

前回は、デバイスツリーをロードして、LEDを点灯させるアプリケーションソフトは @ikwzm さんの作成された led_on.py の代わりにじぶんで書いた C 言語のアプリケーションソフトを使用した。今回は、Vivado HLS で作ったプロジェクトで udmabuf を使用してみよう。

今回、参照するのは@ikwzm さんの書かれた、”UltraZed 向け Debian GNU/Linux で Vivado-HLS を使って合成した回路を動かす”まずは、この通りにやってみよう。

fpga ユーザーの examples ディレクトリに移動して、git clone でGitHub の ikwzm/ZynqMP-FPGA-Linux-Example-2-UltraZed を negative という名前でダウンロードして、negative ディレクトリに入る。なお、Vivado HLS の回路は in を AXI4 Master で読んできて、マイナスにして、out へ書くという回路だ。
cd negative
git clone https://github.com/ikwzm/ZynqMP-FPGA-Linux-Example-2-UltraZed negative
cd negative

UltraZed-EG_StKit_Linux_202_180130.png

Python スクリプトでビットファイルをバイナリ・ファイルへ変換し、/lib/firmware へコピー。
python3 fpga-bit-to-bin.py -f negative.bit negative.bin
sudo cp negative.bin /lib/firmware

UltraZed-EG_StKit_Linux_203_180130.png

/lib/firmware ディレクトリを見ると、negative.bin があるのが分かる。
UltraZed-EG_StKit_Linux_204_180130.png

fpga-load.dts をコンパイルして、fpga-load.dtb を生成する。
dtc -I dts -O dtb -o fpga-load.dtb fpga-load.dts
UltraZed-EG_StKit_Linux_205_180130.png

fpga-load.dtb を fpga に登録
sudo mkdir /config/device-tree/overlays/fpga
sudo cp fpga-load.dtb /config/device-tree/overlays/fpga/dtbo

UltraZed-EG_StKit_Linux_206_180130.png

COMポートのTrea Term ウインドウにメッセージが表示された。
UltraZed-EG_StKit_Linux_207_180130.png

FPGA のクロックを設定するための fclk0-zynqmp.dts をコンパイル
dtc -I dts -O dtb -o fclk0-zynqmp.dtb fclk0-zynqmp.dts
UltraZed-EG_StKit_Linux_208_180130.png

fclk0-zynqmp.dts を fclk0 に登録
sudo mkdir /config/device-tree/overlays/fclk0
sudo cp fclk0-zynqmp.dtb /config/device-tree/overlays/fclk0/dtbo

UltraZed-EG_StKit_Linux_209_180130.png

COMポートのTrea Term ウインドウにメッセージが表示された。
UltraZed-EG_StKit_Linux_210_180130.png

UIO と udmabuf のデバイスツリー negative.dts
UltraZed-EG_StKit_Linux_211_180130.png

negative.dts をコンパイル
dtc -I dts -O dtb -o negative.dtb negative.dts
UltraZed-EG_StKit_Linux_212_180130.png

negative.dtb を negative に登録
sudo mkdir /config/device-tree/overlays/negative
sudo cp negative.dtb /config/device-tree/overlays/negative/dtbo
ls -l /dev/uio*
ls -l /dev/udmabuf*

UltraZed-EG_StKit_Linux_213_180130.png

COMポートのTrea Term ウインドウにメッセージが表示された。
UltraZed-EG_StKit_Linux_214_180130.png

negative.py を動作させる
sudo python3 negative.py
UltraZed-EG_StKit_Linux_215_180130.png

今回はスループットが 292 MByte/sec 程度だったが、2回目やると次に示すようにスループットが減っていた。何か?奇数回の方が偶数会よりもスループットが高い気がする。
2 回目の結果を示す。
UltraZed-EG_StKit_Linux_216_180130.png

スループットは、148 MByte/sec 程度と 1 回目よりも少なくなっている。

後始末
デバイスツリーをディレクトリごと削除する。
sudo rmdir /config/device-tree/overlays/netagive
sudo rmdir /config/device-tree/overlays/fclk0
sudo rmdir /config/device-tree/overlays/fpga

UltraZed-EG_StKit_Linux_217_180130.png

COMポートのTrea Term ウインドウに表示されたメッセージを示す。
UltraZed-EG_StKit_Linux_218_180130.png
  1. 2018年02月01日 04:32 |
  2. Linux
  3. | トラックバック:0
  4. | コメント:0

@ikwzmさんのUltraZed 向け Debian GNU/Linux の構築をやってみる14(led_on.py を C で書いてみる)

@ikwzmさんのUltraZed 向け Debian GNU/Linux の構築をやってみる12(FPGAのコンフィギュレーション)
@ikwzmさんのUltraZed 向け Debian GNU/Linux の構築をやってみる13(デバイスツリーの入れ替え)
では、デバイスツリーをロードして、LEDを点灯させるアプリケーションソフトは @ikwzm さんの作成された led_on.py を使用した。Python のコードを使っても良いのだが、いつも書いている C 言語でアプリケーションソフトを書いてみることにした。

関連する @ikzwm さんの記事は”UltraZed 向け Debian GNU/Linux で FPGA をコンフィギュレーション”の”LED を点滅させてみる”だ。

まずは、led_on.c を書いてみた。
UltraZed-EG_StKit_Linux_200_180129.png

// led_on.c
// 2018/01/29 by marsee
//

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <assert.h>
#include <sys/mman.h>
#include <fcntl.h>
#include <unistd.h>

int main(){
    int fd1;
    
    volatile unsigned int *led;
    
    unsigned int pattern[14] = {0x010x020x040x080x100x200x400x800x400x200x100x080x040x02};
    int i, j;
    
    // led(uio1)
    fd1 = open("/dev/uio1", O_RDWR); // USER LEDS
    if(fd1 < 1){
        fprintf(stderr, "/dev/uio1 (led) open error\n");
        exit(-1);
    }
    led = (volatile unsigned *)mmap(NULL, 0x1000, PROT_READ|PROT_WRITE, MAP_SHARED, fd1, 0);
    if(!led){
        fprintf(stderr, "led mmap error\n");
        exit(-1);
    }
    
    for(i=0; i<10; i++){
        for(j=0; j<14; j++){
            led[0] = pattern[j];
            usleep(100000);
        }
    }
    
    munmap((void *) led, 0x1000);
    
    close(fd1);
    
    return(0);
}


led_on.py と比べて点滅する数は少し多いかもしれないが、大体同じ動作をする。

これをUltraZed-EG Starter Kit のDebian Linux の ~/examples/gpio ディレクトリにおいて、コンパイルを行った。
gcc -o led_on led_on.c

led_on を実行するために、”@ikwzmさんのUltraZed 向け Debian GNU/Linux の構築をやってみる12(FPGAのコンフィギュレーション)”と同様に sh スクリプトを作成した。exe_led_on_c.sh だ。その内容を示す。
UltraZed-EG_StKit_Linux_201_180129.png

#!/bin/sh

sudo mkdir /config/device-tree/overlays/fpga
sudo cp fpga-load_uzed.dtb /config/device-tree/overlays/fpga/dtbo

sudo mkdir /config/device-tree/overlays/fclk0
sudo cp fclk0-zynqmp.dtb /config/device-tree/overlays/fclk0/dtbo

sudo mkdir /config/device-tree/overlays/uio
sudo cp uio_uzed.dtb /config/device-tree/overlays/uio/dtbo
ls -la /dev/uio*

sudo ./led_on


ただ単に最後の行を入れ替えただけだ。

exe_led_on_c.sh を実行すると、同様にLED が点灯した。これで、従来通りに C で書いても動作するということが分かった。
UltraZed-EG_StKit_Linux_199_180129.png
  1. 2018年01月30日 04:09 |
  2. Linux
  3. | トラックバック:0
  4. | コメント:0

@ikwzmさんのUltraZed 向け Debian GNU/Linux の構築をやってみる13(デバイスツリーの入れ替え)

@ikwzmさんのUltraZed 向け Debian GNU/Linux の構築をやってみる12(FPGAのコンフィギュレーション)”の続き。

前回は、Debian を使用して、UltraZed-EG Starter Kit でFPGA のコンフィギュレーション、FPGA のクロック設定、UIO を設定して、アプリケーションソフトを動作させた。今回は、FPGA のコンフィギュレーション、FPGA のクロック設定、UIO を設定を入れ替えてみよう。

今回、参考にするのも、”UltraZed 向け Debian GNU/Linux で FPGA をコンフィギュレーション

最初に私の作ったVivado プロジェクトのビットファイルでコンフィギュレーションを行い、FPGA のクロック設定、UIO を設定してアプリケーションソフトを起動して動作を確認した後で、@ikwzm さんの作ったVivado プロジェクトのビットファイルでコンフィギュレーションを行い、FPGA のクロック設定、UIO を設定してアプリケーションソフトを起動して動作を確認してみようと思う。

さて、FPGA のコンフィギュレーション、FPGA のクロック設定、UIO を設定して、アプリケーションソフトを動作する一連の流れを実行するスクリプトを作成した。もうすでにdtb は作成済みなので、dtc コンパイルは入れていない。
まずは、私のVivado プロジェクトのビットファイルを使用する exe_led_on.sh を貼っておく。

#!/bin/sh

sudo mkdir /config/device-tree/overlays/fpga
sudo cp fpga-load_uzed.dtb /config/device-tree/overlays/fpga/dtbo

sudo mkdir /config/device-tree/overlays/fclk0
sudo cp fclk0-zynqmp.dtb /config/device-tree/overlays/fclk0/dtbo

sudo mkdir /config/device-tree/overlays/uio
sudo cp uio_uzed.dtb /config/device-tree/overlays/uio/dtbo
ls -la /dev/uio*

sudo python3 led_on.py


UltraZed-EG_StKit_Linux_190_180125.png

次に、ikwzm さんのVivado プロジェクトのビットファイルを使用する exe_led_on_org.sh を貼っておく。

#!/bin/sh

sudo mkdir /config/device-tree/overlays/fpga
sudo cp fpga-load.dtb /config/device-tree/overlays/fpga/dtbo

sudo mkdir /config/device-tree/overlays/fclk0
sudo cp fclk0-zynqmp.dtb /config/device-tree/overlays/fclk0/dtbo

sudo mkdir /config/device-tree/overlays/uio
sudo cp uio.dtb /config/device-tree/overlays/uio/dtbo
ls -la /dev/uio*

sudo python3 led_on.py


UltraZed-EG_StKit_Linux_191_180125.png

最後に、”UltraZed 向け Debian GNU/Linux で FPGA をコンフィギュレーション”の”後始末”のDevice Tree Overlay で追加したデバイスツリーを、後から追加した順に削除するスクリプトの rm_dev.sh を貼っておく。

#!/bin/sh

sudo rmdir /config/device-tree/overlays/uio
sudo rmdir /config/device-tree/overlays/fclk0
sudo rmdir /config/device-tree/overlays/fpga


UltraZed-EG_StKit_Linux_192_180125.png

まずは、
./exe_led_on.sh
を実行した。IP ポートのTrea Term ウインドウを示す。
UltraZed-EG_StKit_Linux_184_180125.png

LEDの点滅動作もOKだった。
COMポートのTrea Term ウインドウを示す。
UltraZed-EG_StKit_Linux_185_180125.png

この時の/config/device-tree/overlay は fclk0, fpga, uio の各ディレクトリができている。
UltraZed-EG_StKit_Linux_186_180125.png

初めてデバイスツリーの削除をやるので、rm_dev.sh ではなく、実際にコマンドを打って削除した。
UltraZed-EG_StKit_Linux_187_180125.png

COMポートのTrea Term ウインドウを示す。
UltraZed-EG_StKit_Linux_188_180125.png

/config/device-tree/overlay は fclk0, fpga, uio の各ディレクトリが削除されている。
UltraZed-EG_StKit_Linux_189_180125.png

次に、
./exe_led_on_org.sh
を実行した。
UltraZed-EG_StKit_Linux_193_180125.png

led の点滅動作もOK だった。一度、デバイスツリーを削除してからもう一度、デバイスツリーをロードしても問題なく動作する。

COMポートのTrea Term ウインドウを示す。
UltraZed-EG_StKit_Linux_194_180125.png

/config/device-tree/overlay は fclk0, fpga, uio の各ディレクトリができている。
UltraZed-EG_StKit_Linux_195_180125.png

./rm_dev.sh
を実行した。
UltraZed-EG_StKit_Linux_196_180125.png

COMポートのTrea Term ウインドウを示す。
UltraZed-EG_StKit_Linux_197_180125.png

/config/device-tree/overlay は fclk0, fpga, uio の各ディレクトリが削除されている。
UltraZed-EG_StKit_Linux_198_180125.png

これで一旦ロードしたデバイスツリーを削除して、別のデバイスツリーをロードできることが確認できた。
  1. 2018年01月27日 04:45 |
  2. Linux
  3. | トラックバック:0
  4. | コメント:0

@ikwzmさんのUltraZed 向け Debian GNU/Linux の構築をやってみる12(FPGAのコンフィギュレーション)

@ikwzmさんのUltraZed 向け Debian GNU/Linux の構築をやってみる11(パッケージのインストール)”の続き。

前回は、Debian が起動してから、使用するパッケージをインストールした。今回は、そのDebian を使用して、UltraZed-EG Starter Kit でFPGA のコンフィギュレーション、FPGA のクロック設定、UIO を設定して、アプリケーションソフトを動作させてみよう。

参考にするのは、”UltraZed 向け Debian GNU/Linux で FPGA をコンフィギュレーション

今回、FPGA にコンフィギュレーションする回路は@ikwzm さんと同じ回路だが自分で作ったGPIO の回路とする。IP インテグレータで作成するとデフォルトでは、IP のアドレス範囲が 4 k バイトになる。@ikwzm さんの回路ではIP のアドレス範囲は 64 k バイトなので、そこは違っている。

UltraZed-EG Starter Kit で Debian を立ち上げる。

fpga ユーザーでログインする。

fpga ディレクトリの下に examples ディレクトリを作成する。
mkdri examples
cd examples


ファイル一式を gpio ディレクトリにダウンロードする。( git clone です)
git clone https://github.com/ikwzm/ZynqMP-FPGA-Linux-Example-0-UltraZed gpio
cd gpio
ls

UltraZed-EG_StKit_Linux_156_180126.png

@ikwzmさんのUltraZed 向け Debian GNU/Linux の構築をやってみる2(Sample FPGA Design編)”で作成したビットファイルの uzed_eg_ex1_wrapper.bit をUltraZed-EG Starter Kit の /home/fpga/examples/gpio にアップロードした。
UltraZed-EG_StKit_Linux_157_180126.png

Python の fpga-bit-to-bin.py を使って、ビットファイルを変換する。
python3 fpga-bit-to-bin.py -f uzed_eg_ex1_wrapper.bit uzed_eg_ex1_wrapper.bin
UltraZed-EG_StKit_Linux_159_180126.png

uzed_eg_ex1_wrapper.bin が生成された。

uzed_eg_ex1_wrapper.bin を /lib/firmware にコピーした。
sudo cp uzed_eg_ex1_wrapper.bin /lib/firmware
UltraZed-EG_StKit_Linux_160_180126.png

次は、Device Tree Overlay による FPGA のコンフィギュレーションなのだが、独自のビットファイルを使用しているので、dts を書き換える必要がある。
元になる fpga-load.dts を表示した。
UltraZed-EG_StKit_Linux_161_180126.png

fpga-load.dts をコピーして fpga-load_uzed.dts を作成し、ビットファイル名を uzed_eg_ex1_wrapper.bin に変更した。
cp fpga-load.dts fpga-load_uzed.dts
vi fpga-load_uzed.dts

UltraZed-EG_StKit_Linux_162_180126.png

dts をコンパイルして、FPGAのコンフィギュレーションを行う。
dtc -I dts -O dtb -o fpga-load_uzed.dtb fpga-load_uzed.dts (下の図のコマンドは間違っている。以前、コンパイルしておいたのでOKだった)
sudo mkdir /config/device-tree/overlays/fpga
sudo cp fpga-load_uzed.dtb /config/device-tree/overlays/fpga/dtbo

つまり、/config/device-tree/overlays に fpga ディレクトリを作って、そこにデバイスツリーをロードすればビットファイルをFPGA にコンフィギュレーションできるようだ。
UltraZed-EG_StKit_Linux_175_180124.png

このTrea Term のウインドウは、IP で開いているので表示が出ないが、COMポートのTrea Term ウインドウに fpga_manager の表示が出た。
UltraZed-EG_StKit_Linux_176_180124.png

FPGAのクロックを設定する。
fclk0-zynqmp.dts を表示した。これは修正する必要が無い。
UltraZed-EG_StKit_Linux_177_180124.png

dtc -I dts -O dtb -o fclk0-zynqmp.dtb fclk0-zynqmp.dts
sudo mkdir /config/device-tree/overlays/fclk0
sudo cp fclk0-zynqmp.dtb /config/device-tree/overlays/fclk0/dtbo

UltraZed-EG_StKit_Linux_178_180124.png

同様にCOMポートのTrea Term ウインドウを見ると、クロック設定のメッセージが出た。
UltraZed-EG_StKit_Linux_179_180124.png

正常にFPGA のクロックがコンフィギュレーションされたようだ。

UIO の設定。
uio.dts を uio_uzed.dts にコピーして設定を変更する。IP のアドレス範囲が 4k バイトなので、その領域指定とアドレスを変更する。
cp uio.dts uio_uzed.dts
vi uio_uzed.dts

UltraZed-EG_StKit_Linux_180_180124.png

修正済みの uio_uzed.dts
UltraZed-EG_StKit_Linux_181_180124.png

dtc -I dts -O dtb -o uio_uzed.dtb uio_uzed.dts
sudo mkdir /config/device-tree/overlays/uio
sudo cp uio_uzed.dtb /config/device-tree/overlays/uio/dtbo
ls -la /dev/uio*
をすると、/dev/uio0, /dev/uio1, /dev/uio2 の 3 個の UIO を見ることができた。
UltraZed-EG_StKit_Linux_182_180124.png

LED を点滅させる led_on.py を実行する。
sudo python3 led_on.py スーパーユーザー権限で led_on.py を実行すると、LEDが順番に点灯した。
led_on.py を実行するためには、UIO の権限を 666 にする。UIO のオーナーは root なので、一般ユーザーに使えるように 666 にしておこう。
すると、スーパーユーザー権限がなくても led_on.py が実行できた。
sudo chmod 666 /dev/uio*
python3 led_on.py

UltraZed-EG_StKit_Linux_183_180124.png

UltraZed-EG Starter Kit のピンクの四角で囲ったLED が点滅した。
UltraZed-EG_StKit_Linux_183_2_180125.jpg
  1. 2018年01月26日 04:49 |
  2. Linux
  3. | トラックバック:0
  4. | コメント:0

@ikwzmさんのUltraZed 向け Debian GNU/Linux の構築をやってみる11(パッケージのインストール)

@ikwzmさんのUltraZed 向け Debian GNU/Linux の構築をやってみる10(実機で試す2)”の続き。

前回は、Debian の起動メッセージにエラーが出ていたので、その修正を行った。今回は、必要なパッケージのインストールを行う。

参考にするのは、”UltraZed 向け Debian GNU/Linux ブートイメージの提供

最初に ip_addr_show で IP アドレスを表示した。
UltraZed-EG_StKit_Linux_152_180126.png

なお、ここから何度もやり直したので、辻褄が合わなくてしまった。ご了承ください。。。

先ほどのIP アドレスから fpga ユーザーでログインする。
debian ディレクトリに行く。
debian ディレクトリにはインストールするべき 4 つのパッケージがある。
UltraZed-EG_StKit_Linux_153_180126.png

まずは、
sudo dpkg -i linux-image-4.9.0-xlnx-v2017.3-zynqmp-fpga_4.9.0-xlnx-v2017.3-zynqmp-fpga-1_arm64.deb
UltraZed-EG_StKit_Linux_153_2_180126.png

sudo dpkg -i linux-headers-4.9.0-xlnx-v2017.3-zynqmp-fpga_4.9.0-xlnx-v2017.3-zynqmp-fpga-1_arm64.deb
UltraZed-EG_StKit_Linux_153_180126.png

sudo dpkg -i fclkcfg-4.9.0-xlnx-v2017.3-zynqmp-fpga_0.0.1-1_arm64.deb
ここは、”arm のDebian でsudo をする時に「ホスト…の名前解決ができません」といわれたときの対処方法”以前に画像をキャプチャしたので、名前解決ができませんと言われている。
UltraZed-EG_StKit_Linux_154_180126.png

sudo dpkg -i udmabuf-4.9.0-xlnx-v2017.3-zynqmp-fpga_0.0.1-1_arm64.deb
ここも、”arm のDebian でsudo をする時に「ホスト…の名前解決ができません」といわれたときの対処方法”以前に画像をキャプチャしたので、名前解決ができませんと言われている。
UltraZed-EG_StKit_Linux_155_180126.png

これで下準備は終了したので、次は、FPGA をコンフィギュレーションして動作させてみよう。
  1. 2018年01月25日 05:06 |
  2. Linux
  3. | トラックバック:0
  4. | コメント:0

@ikwzmさんのUltraZed 向け Debian GNU/Linux の構築をやってみる10(実機で試す2)

@ikwzmさんのUltraZed 向け Debian GNU/Linux の構築をやってみる9(実機で試す)”の続き。

前回は、今までビルドしてきたソフトウェアやRoot FSを使用して、UltraZed-EG Starter Kit でDebian をブートした。今回は、Debian はブートできたのだが、2つほどエラーが出ているので、それを修正する。

Debian の起動メッセージで FPGA Clock Service と DMA Buffer Service にエラーが出ている。
UltraZed-EG_StKit_Linux_171_180124.png

エラー内容を知るためにコマンドを実行した。
systemctl status fpga-clock.service
systemctl status udmabuf.service

/sbin/modprobe fclkcfg と /sbin/modprobe udmabuf が実行コマンドのようなので、実行してみた。
sudo /sbin/modprobe fclkcfg
sudo /sbin/modprobe udmabuf

そしたら、どちらも /lib/modules/4.9.0-xlnx-v2017.3-zynqmp-fpga にモジュールが見つからないということだ。
UltraZed-EG_StKit_Linux_172_180124.png

fpga@debian-fpga:~$ systemctl status fpga-clock.service
● fpga-clock.service - FPGA Clock Service.
   Loaded: loaded (/etc/systemd/system/fpga-clock.service; enabled; vendor prese
   Active: failed (Result: exit-code) since Wed 2018-01-24 14:18:57 JST; 1min 5s
  Process: 2938 ExecStart=/sbin/modprobe fclkcfg (code=exited, status=1/FAILURE)
 Main PID: 2938 (code=exited, status=1/FAILURE)
fpga@debian-fpga:~$ systemctl status udmabuf.service
● udmabuf.service - User space mappable DMA Buffer Service.
   Loaded: loaded (/etc/systemd/system/udmabuf.service; enabled; vendor preset:
   Active: failed (Result: exit-code) since Wed 2018-01-24 14:18:57 JST; 3min 49
  Process: 2941 ExecStart=/sbin/modprobe udmabuf (code=exited, status=1/FAILURE)
 Main PID: 2941 (code=exited, status=1/FAILURE)


ここで、@ikwzm さんに対処方法を聞いたところ、depmod でカーネルモジュールの依存関係情報を更新した後で、modprobe してみてくれとのことだったので、やってみたところ、うまく行った。
そして、リブートを行った。
sudo /sbin/depmod
sudo /sbin/modprobe fclkcfg
sudo /sbin/modprobe udmabuf
sudo reboot

UltraZed-EG_StKit_Linux_173_180124.png

リブートしたところ、Debian の起動メッセージでの FPGA Clock Service と DMA Buffer Service のエラーは無くなっていた。
解消できた。
UltraZed-EG_StKit_Linux_174_180124.png

Debian の全起動メッセージを貼っておく。

Xilinx Zynq MP First Stage Boot Loader
Release 2017.4   Jan 23 2018  -  11:44:05
NOTICE:  ATF running on XCZU3EG/silicon v4/RTL5.1 at 0xfffea000, with PMU firmware
NOTICE:  BL31: Secure code at 0x0
NOTICE:  BL31: Non secure code at 0x8000000
NOTICE:  BL31: v1.4(release):development build
NOTICE:  BL31: Built : 11:44:32, Dec 24 2017
PMUFW:  v0.3


U-Boot 2017.01 (Dec 25 2017 - 00:11:15 +0900) Xilinx ZynqMP UltraZed-EG-IOCC

I2C:   ready
DRAM:  2 GiB
EL Level:       EL2
Chip ID:        xczu3eg
MMC:   sdhci@ff160000: 0 (eMMC), sdhci@ff170000: 1 (SD)
reading uboot.env

** Unable to read "uboot.env" from mmc0:1 **
Using default environment

In:    serial@ff000000
Out:   serial@ff000000
Err:   serial@ff000000
Bootmode: SD_MODE1
Net:   ZYNQ GEM: ff0e0000, phyaddr 9, interface rgmii-id

Warning: ethernet@ff0e0000 (eth0) using random MAC address - f6:f0:f3:80:f8:43
eth0: ethernet@ff0e0000
Hit any key to stop autoboot:  0
switch to partitions #0, OK
mmc1 is current device
Device: sdhci@ff170000
Manufacturer ID: 74
OEM: 4a60
Name: USDU1
Tran Speed: 50000000
Rd Block Len: 512
SD version 3.0
High Capacity: Yes
Capacity: 7.3 GiB
Bus Width: 4-bit
Erase Group Size: 512 Bytes
reading uEnv.txt
461 bytes read in 11 ms (40 KiB/s)
Loaded environment from uEnv.txt
Importing environment from SD ...
Running uenvcmd ...
reading image-4.9.0-xlnx-v2017.3-fpga
13107712 bytes read in 886 ms (14.1 MiB/s)
reading devicetree-4.9.0-xlnx-v2017.3-fpga-zynqmp-uz3eg-iocc.dtb
34934 bytes read in 19 ms (1.8 MiB/s)
## Flattened Device Tree blob at 04000000
   Booting using the fdt blob at 0x4000000
   Loading Device Tree to 000000000fff4000, end 000000000ffff875 ... OK

Starting kernel ...

[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Linux version 4.9.0-xlnx-v2017.3-zynqmp-fpga (masaaki@masaaki-VirtualBox2) (gcc version 5.2.1 20151005 (Linaro GCC 5.2-2015.11-2) ) #1 SMP Thu Jan 18 05:08:39 JST 2018
[    0.000000] Boot CPU: AArch64 Processor [410fd034]
[    0.000000] efi: Getting EFI parameters from FDT:
[    0.000000] efi: UEFI not found.
[    0.000000] cma: Reserved 256 MiB at 0x0000000070000000
[    0.000000] psci: probing for conduit method from DT.
[    0.000000] psci: PSCIv1.1 detected in firmware.
[    0.000000] psci: Using standard PSCI v0.2 function IDs
[    0.000000] psci: MIGRATE_INFO_TYPE not supported.
[    0.000000] percpu: Embedded 21 pages/cpu @ffffffc06ff74000 s47488 r8192 d30336 u86016
[    0.000000] Detected VIPT I-cache on CPU0
[    0.000000] CPU features: enabling workaround for ARM erratum 845719
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 517120
[    0.000000] Kernel command line: console=ttyPS0,115200 root=/dev/mmcblk1p2 rw rootwait uio_pdrv_genirq.of_id=generic-uio
[    0.000000] PID hash table entries: 4096 (order: 3, 32768 bytes)
[    0.000000] Dentry cache hash table entries: 262144 (order: 9, 2097152 bytes)
[    0.000000] Inode-cache hash table entries: 131072 (order: 8, 1048576 bytes)
[    0.000000] Memory: 1789432K/2097152K available (8956K kernel code, 576K rwdata, 2732K rodata, 512K init, 389K bss, 45576K reserved, 262144K cma-reserved)
[    0.000000] Virtual kernel memory layout:
[    0.000000]     modules : 0xffffff8000000000 - 0xffffff8008000000   (   128 MB)
[    0.000000]     vmalloc : 0xffffff8008000000 - 0xffffffbebfff0000   (   250 GB)
[    0.000000]       .text : 0xffffff8008080000 - 0xffffff8008940000   (  8960 KB)
[    0.000000]     .rodata : 0xffffff8008940000 - 0xffffff8008bf0000   (  2752 KB)
[    0.000000]       .init : 0xffffff8008bf0000 - 0xffffff8008c70000   (   512 KB)
[    0.000000]       .data : 0xffffff8008c70000 - 0xffffff8008d00200   (   577 KB)
[    0.000000]        .bss : 0xffffff8008d00200 - 0xffffff8008d61850   (   390 KB)
[    0.000000]     fixed   : 0xffffffbefe7fd000 - 0xffffffbefec00000   (  4108 KB)
[    0.000000]     PCI I/O : 0xffffffbefee00000 - 0xffffffbeffe00000   (    16 MB)
[    0.000000]     vmemmap : 0xffffffbf00000000 - 0xffffffc000000000   (     4 GB maximum)
[    0.000000]               0xffffffbf00000000 - 0xffffffbf01c00000   (    28 MB actual)
[    0.000000]     memory  : 0xffffffc000000000 - 0xffffffc080000000   (  2048 MB)
[    0.000000] Hierarchical RCU implementation.
[    0.000000]  Build-time adjustment of leaf fanout to 64.
[    0.000000]  RCU restricting CPUs from NR_CPUS=8 to nr_cpu_ids=4.
[    0.000000] RCU: Adjusting geometry for rcu_fanout_leaf=64, nr_cpu_ids=4
[    0.000000] NR_IRQS:64 nr_irqs:64 0
[    0.000000] GIC: Adjusting CPU interface base to 0x00000000f902f000
[    0.000000] GIC: Using split EOI/Deactivate mode
[    0.000000] arm_arch_timer: Architected cp15 timer(s) running at 99.99MHz (phys).
[    0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x171015c90f, max_idle_ns: 440795203080 ns
[    0.000003] sched_clock: 56 bits at 99MHz, resolution 10ns, wraps every 4398046511101ns
[    0.000284] Console: colour dummy device 80x25
[    0.000305] Calibrating delay loop (skipped), value calculated using timer frequency.. 199.99 BogoMIPS (lpj=399996)
[    0.000313] pid_max: default: 32768 minimum: 301
[    0.000427] Mount-cache hash table entries: 4096 (order: 3, 32768 bytes)
[    0.000433] Mountpoint-cache hash table entries: 4096 (order: 3, 32768 bytes)
[    0.001092] ASID allocator initialised with 65536 entries
[    0.001635] zynqmp_plat_init Power management API v0.3
[    0.001718] EFI services will not be available.
[    0.002095] Detected VIPT I-cache on CPU1
[    0.002124] CPU1: Booted secondary processor [410fd034]
[    0.002419] Detected VIPT I-cache on CPU2
[    0.002438] CPU2: Booted secondary processor [410fd034]
[    0.002716] Detected VIPT I-cache on CPU3
[    0.002735] CPU3: Booted secondary processor [410fd034]
[    0.002773] Brought up 4 CPUs
[    0.002788] SMP: Total of 4 processors activated.
[    0.002794] CPU features: detected feature: 32-bit EL0 Support
[    0.002802] CPU: All CPU(s) started at EL2
[    0.002816] alternatives: patching kernel code
[    0.003593] devtmpfs: initialized
[    0.008770] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns
[    0.014951] xor: measuring software checksum speed
[    0.052047]    8regs     :  2178.000 MB/sec
[    0.092075]    8regs_prefetch:  1934.000 MB/sec
[    0.132109]    32regs    :  2413.000 MB/sec
[    0.172141]    32regs_prefetch:  2178.000 MB/sec
[    0.172145] xor: using function: 32regs (2413.000 MB/sec)
[    0.172244] pinctrl core: initialized pinctrl subsystem
[    0.173002] NET: Registered protocol family 16
[    0.190592] cpuidle: using governor menu
[    0.190826] Failed to initialise IOMMU /amba/smmu@fd800000
[    0.191020] vdso: 2 pages (1 code @ ffffff8008947000, 1 data @ ffffff8008c74000)
[    0.191033] hw-breakpoint: found 6 breakpoint and 4 watchpoint registers.
[    0.191639] DMA: preallocated 256 KiB pool for atomic allocations
[    0.202321] reset_zynqmp reset-controller: Xilinx zynqmp reset driver probed
[    0.202961] ARM CCI_400_r1 PMU driver probed
[    0.206478] zynqmp-pinctrl ff180000.pinctrl: zynqmp pinctrl initialized
[    0.226888] HugeTLB registered 2 MB page size, pre-allocated 0 pages
[    0.292346] raid6: int64x1  gen()   413 MB/s
[    0.360338] raid6: int64x1  xor()   419 MB/s
[    0.428404] raid6: int64x2  gen()   619 MB/s
[    0.496479] raid6: int64x2  xor()   548 MB/s
[    0.564548] raid6: int64x4  gen()   904 MB/s
[    0.632574] raid6: int64x4  xor()   679 MB/s
[    0.700587] raid6: int64x8  gen()  1051 MB/s
[    0.768677] raid6: int64x8  xor()   679 MB/s
[    0.836713] raid6: neonx1   gen()   671 MB/s
[    0.904740] raid6: neonx1   xor()   668 MB/s
[    0.972798] raid6: neonx2   gen()  1039 MB/s
[    1.040861] raid6: neonx2   xor()   921 MB/s
[    1.108900] raid6: neonx4   gen()  1378 MB/s
[    1.176952] raid6: neonx4   xor()  1072 MB/s
[    1.244999] raid6: neonx8   gen()  1552 MB/s
[    1.313038] raid6: neonx8   xor()  1128 MB/s
[    1.313042] raid6: using algorithm neonx8 gen() 1552 MB/s
[    1.313046] raid6: .... xor() 1128 MB/s, rmw enabled
[    1.313049] raid6: using intx1 recovery algorithm
[    1.313895] SCSI subsystem initialized
[    1.314117] usbcore: registered new interface driver usbfs
[    1.314157] usbcore: registered new interface driver hub
[    1.314199] usbcore: registered new device driver usb
[    1.314277] media: Linux media interface: v0.10
[    1.314307] Linux video capture interface: v2.00
[    1.314338] pps_core: LinuxPPS API ver. 1 registered
[    1.314342] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
[    1.314358] PTP clock support registered
[    1.314388] EDAC MC: Ver: 3.0.0
[    1.314704] FPGA manager framework
[    1.314854] fpga-region fpga-full: FPGA Region probed
[    1.314952] Advanced Linux Sound Architecture Driver Initialized.
[    1.315293] Bluetooth: Core ver 2.22
[    1.315317] NET: Registered protocol family 31
[    1.315322] Bluetooth: HCI device and connection manager initialized
[    1.315332] Bluetooth: HCI socket layer initialized
[    1.315339] Bluetooth: L2CAP socket layer initialized
[    1.315362] Bluetooth: SCO socket layer initialized
[    1.315983] clocksource: Switched to clocksource arch_sys_counter
[    1.316072] VFS: Disk quotas dquot_6.6.0
[    1.316122] VFS: Dquot-cache hash table entries: 512 (order 0, 4096 bytes)
[    1.322736] NET: Registered protocol family 2
[    1.323125] TCP established hash table entries: 16384 (order: 5, 131072 bytes)
[    1.323272] TCP bind hash table entries: 16384 (order: 6, 262144 bytes)
[    1.323565] TCP: Hash tables configured (established 16384 bind 16384)
[    1.323636] UDP hash table entries: 1024 (order: 3, 32768 bytes)
[    1.323681] UDP-Lite hash table entries: 1024 (order: 3, 32768 bytes)
[    1.323830] NET: Registered protocol family 1
[    1.324161] RPC: Registered named UNIX socket transport module.
[    1.324166] RPC: Registered udp transport module.
[    1.324170] RPC: Registered tcp transport module.
[    1.324173] RPC: Registered tcp NFSv4.1 backchannel transport module.
[    1.324628] hw perfevents: enabled with armv8_pmuv3 PMU driver, 7 counters available
[    1.325382] futex hash table entries: 1024 (order: 5, 131072 bytes)
[    1.325462] audit: initializing netlink subsys (disabled)
[    1.325490] audit: type=2000 audit(1.320:1): initialized
[    1.325999] workingset: timestamp_bits=62 max_order=19 bucket_order=0
[    1.326732] NFS: Registering the id_resolver key type
[    1.326751] Key type id_resolver registered
[    1.326755] Key type id_legacy registered
[    1.326765] nfs4filelayout_init: NFSv4 File Layout Driver Registering...
[    1.326785] jffs2: version 2.2. (NAND) (SUMMARY)  c 2001-2006 Red Hat, Inc.
[    1.331470] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 247)
[    1.331479] io scheduler noop registered
[    1.331483] io scheduler deadline registered
[    1.331494] io scheduler cfq registered (default)
[    1.332738] xilinx-dpdma fd4c0000.dma: Xilinx DPDMA engine is probed
[    1.333032] Write failed gate address:1000f02
[    1.333133] xilinx-zynqmp-dma fd500000.dma: ZynqMP DMA driver Probe success
[    1.333270] xilinx-zynqmp-dma fd510000.dma: ZynqMP DMA driver Probe success
[    1.333406] xilinx-zynqmp-dma fd520000.dma: ZynqMP DMA driver Probe success
[    1.333540] xilinx-zynqmp-dma fd530000.dma: ZynqMP DMA driver Probe success
[    1.333675] xilinx-zynqmp-dma fd540000.dma: ZynqMP DMA driver Probe success
[    1.333810] xilinx-zynqmp-dma fd550000.dma: ZynqMP DMA driver Probe success
[    1.333952] xilinx-zynqmp-dma fd560000.dma: ZynqMP DMA driver Probe success
[    1.334086] xilinx-zynqmp-dma fd570000.dma: ZynqMP DMA driver Probe success
[    1.334293] xilinx-zynqmp-dma ffa80000.dma: ZynqMP DMA driver Probe success
[    1.334432] xilinx-zynqmp-dma ffa90000.dma: ZynqMP DMA driver Probe success
[    1.334568] xilinx-zynqmp-dma ffaa0000.dma: ZynqMP DMA driver Probe success
[    1.334704] xilinx-zynqmp-dma ffab0000.dma: ZynqMP DMA driver Probe success
[    1.334843] xilinx-zynqmp-dma ffac0000.dma: ZynqMP DMA driver Probe success
[    1.334982] xilinx-zynqmp-dma ffad0000.dma: ZynqMP DMA driver Probe success
[    1.335118] xilinx-zynqmp-dma ffae0000.dma: ZynqMP DMA driver Probe success
[    1.335254] xilinx-zynqmp-dma ffaf0000.dma: ZynqMP DMA driver Probe success
[    1.335429] zynqmp_pm firmware: Power management API v0.3
[    1.370301] Serial: 8250/16550 driver, 4 ports, IRQ sharing disabled
[    1.371712] ff000000.serial: ttyPS0 at MMIO 0xff000000 (irq = 40, base_baud = 6249999) is a xuartps
[    2.335166] console [ttyPS0] enabled
[    2.339105] ff010000.serial: ttyPS1 at MMIO 0xff010000 (irq = 41, base_baud = 6249999) is a xuartps
[    2.348282] [drm] Initialized
[    2.351528] [drm] load() is defered & will be called again
[    2.357451] xilinx-drm-dp-sub fd4aa000.dp_sub: Xilinx DisplayPort Subsystem is probed
[    2.365360] Unable to detect cache hierarchy from DT for CPU 0
[    2.376566] brd: module loaded
[    2.382867] loop: module loaded
[    2.386726] ahci-ceva fd0c0000.ahci: ceva,p1-cominit-params property not defined
[    2.394070] ahci-ceva: probe of fd0c0000.ahci failed with error -22
[    2.400411] mtdoops: mtd device (mtddev=name/number) must be supplied
[    2.407620] m25p80 spi0.0: found n25q256a, expected n25q512a
[    2.413326] m25p80 spi0.0: n25q256a (65536 Kbytes)
[    2.418143] 3 ofpart partitions found on MTD device spi0.0
[    2.423549] Creating 3 MTD partitions on "spi0.0":
[    2.428325] 0x000000000000-0x000000100000 : "boot"
[    2.433755] 0x000000100000-0x000000140000 : "bootenv"
[    2.439238] 0x000000140000-0x000001740000 : "kernel"
[    2.445668] libphy: Fixed MDIO Bus: probed
[    2.450916] tun: Universal TUN/TAP device driver, 1.6
[    2.455897] tun: (C) 1999-2004 Max Krasnyansky <maxk@qualcomm.com>
[    2.462223] CAN device driver interface
[    2.466529] macb ff0e0000.ethernet: Not enabling partial store and forward
[    2.473858] libphy: MACB_mii_bus: probed
[    2.479542] macb ff0e0000.ethernet eth0: Cadence GEM rev 0x50070106 at 0xff0e0000 irq 30 (f6:f0:f3:80:f8:43)
[    2.489288] TI DP83867 ff0e0000.etherne:09: attached PHY driver [TI DP83867] (mii_bus:phy_addr=ff0e0000.etherne:09, irq=-1)
[    2.500887] usbcore: registered new interface driver asix
[    2.506244] usbcore: registered new interface driver ax88179_178a
[    2.512305] usbcore: registered new interface driver cdc_ether
[    2.518117] usbcore: registered new interface driver net1080
[    2.523758] usbcore: registered new interface driver cdc_subset
[    2.529661] usbcore: registered new interface driver zaurus
[    2.535234] usbcore: registered new interface driver cdc_ncm
[    2.541421] usbcore: registered new interface driver uas
[    2.546688] usbcore: registered new interface driver usb-storage
[    2.552955] mousedev: PS/2 mouse device common for all mice
[    2.558874] rtc_zynqmp ffa60000.rtc: rtc core: registered ffa60000.rtc as rtc0
[    2.566045] i2c /dev entries driver
[    2.569704] cdns-i2c ff030000.i2c: 400 kHz mmio ff030000 irq 32
[    2.576565] usbcore: registered new interface driver uvcvideo
[    2.582228] USB Video Class driver (1.1.1)
[    2.586841] cdns-wdt fd4d0000.watchdog: Xilinx Watchdog Timer at ffffff8008ee9000 with timeout 10s
[    2.595890] Bluetooth: HCI UART driver ver 2.3
[    2.600250] Bluetooth: HCI UART protocol H4 registered
[    2.605372] Bluetooth: HCI UART protocol BCSP registered
[    2.610663] Bluetooth: HCI UART protocol LL registered
[    2.615783] Bluetooth: HCI UART protocol ATH3K registered
[    2.621166] Bluetooth: HCI UART protocol Three-wire (H5) registered
[    2.627454] Bluetooth: HCI UART protocol Intel registered
[    2.632834] Bluetooth: HCI UART protocol Broadcom registered
[    2.638440] Bluetooth: HCI UART protocol QCA registered
[    2.643687] usbcore: registered new interface driver bcm203x
[    2.649323] usbcore: registered new interface driver bpa10x
[    2.654877] usbcore: registered new interface driver bfusb
[    2.660347] usbcore: registered new interface driver btusb
[    2.665782] Bluetooth: Generic Bluetooth SDIO driver ver 0.1
[    2.671479] usbcore: registered new interface driver ath3k
[    2.677021] EDAC MC: ECC not enabled
[    2.680681] EDAC DEVICE0: Giving out device to module zynqmp-ocm-edac controller zynqmp_ocm: DEV ff960000.memory-controller (INTERRUPT)
[    2.693297] cpufreq: cpufreq_online: CPU0: Running at unlisted freq: 1099999 KHz
[    2.700666] cpufreq: cpufreq_online: CPU0: Unlisted initial frequency changed to: 1199999 KHz
[    2.709530] sdhci: Secure Digital Host Controller Interface driver
[    2.715623] sdhci: Copyright(c) Pierre Ossman
[    2.719962] sdhci-pltfm: SDHCI platform and OF driver helper
[    2.726078] ledtrig-cpu: registered to indicate activity on CPUs
[    2.732135] usbcore: registered new interface driver usbhid
[    2.737634] usbhid: USB HID core driver
[    2.743191] fpga_manager fpga0: Xilinx ZynqMP FPGA Manager registered
[    2.750213] pktgen: Packet Generator for packet performance testing. Version: 2.75
[    2.757896] Netfilter messages via NETLINK v0.30.
[    2.762637] ip_tables: (C) 2000-2006 Netfilter Core Team
[    2.767910] Initializing XFRM netlink socket
[    2.772165] NET: Registered protocol family 10
[    2.777018] ip6_tables: (C) 2000-2006 Netfilter Core Team
[    2.782375] sit: IPv6, IPv4 and MPLS over IPv4 tunneling driver
[    2.788632] NET: Registered protocol family 17
[    2.793001] NET: Registered protocol family 15
[    2.797427] bridge: filtering via arp/ip/ip6tables is no longer available by default. Update your scripts to load br_netfilter if you need this.
[    2.810348] Ebtables v2.0 registered
[    2.813958] can: controller area network core (rev 20120528 abi 9)
[    2.820107] NET: Registered protocol family 29
[    2.824503] can: raw protocol (rev 20120528)
[    2.828752] can: broadcast manager protocol (rev 20161123 t)
[    2.834396] can: netlink gateway (rev 20130117) max_hops=1
[    2.839922] Bluetooth: RFCOMM TTY layer initialized
[    2.844731] Bluetooth: RFCOMM socket layer initialized
[    2.849851] Bluetooth: RFCOMM ver 1.11
[    2.853580] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[    2.858870] Bluetooth: BNEP filters: protocol multicast
[    2.864084] Bluetooth: BNEP socket layer initialized
[    2.869027] Bluetooth: HIDP (Human Interface Emulation) ver 1.2
[    2.874931] Bluetooth: HIDP socket layer initialized
[    2.880040] 9pnet: Installing 9P2000 support
[    2.884239] Key type dns_resolver registered
[    2.888938] registered taskstats version 1
[    2.893373] Btrfs loaded, crc32c=crc32c-generic
[    2.908659] [drm] load() is defered & will be called again
[    2.914768] xilinx-psgtr fd400000.zynqmp_phy: Lane:3 type:8 protocol:4 pll_locked:yes
[    2.922820] xilinx-drm-dp fd4a0000.dp: device found, version 4.010
[    2.928916] xilinx-drm-dp fd4a0000.dp: Display Port, version 1.0200 (tx)
[    2.936509] xhci-hcd xhci-hcd.0.auto: xHCI Host Controller
[    2.941929] xhci-hcd xhci-hcd.0.auto: new USB bus registered, assigned bus number 1
[    2.949794] xhci-hcd xhci-hcd.0.auto: hcc params 0x0238f625 hci version 0x100 quirks 0x02010010
[    2.958432] xhci-hcd xhci-hcd.0.auto: irq 220, io mem 0xfe200000
[    2.964527] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
[    2.971231] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    2.978432] usb usb1: Product: xHCI Host Controller
[    2.983291] usb usb1: Manufacturer: Linux 4.9.0-xlnx-v2017.3-zynqmp-fpga xhci-hcd
[    2.990756] usb usb1: SerialNumber: xhci-hcd.0.auto
[    2.995936] hub 1-0:1.0: USB hub found
[    2.999623] hub 1-0:1.0: 1 port detected
[    3.003683] xhci-hcd xhci-hcd.0.auto: xHCI Host Controller
[    3.009088] xhci-hcd xhci-hcd.0.auto: new USB bus registered, assigned bus number 2
[    3.016769] usb usb2: We don't know the algorithms for LPM for this host, disabling LPM.
[    3.024872] usb usb2: New USB device found, idVendor=1d6b, idProduct=0003
[    3.031573] usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    3.038775] usb usb2: Product: xHCI Host Controller
[    3.043635] usb usb2: Manufacturer: Linux 4.9.0-xlnx-v2017.3-zynqmp-fpga xhci-hcd
[    3.051100] usb usb2: SerialNumber: xhci-hcd.0.auto
[    3.056243] hub 2-0:1.0: USB hub found
[    3.059922] hub 2-0:1.0: 1 port detected
[    3.111992] mmc0: SDHCI controller on ff160000.sdhci [ff160000.sdhci] using ADMA 64-bit
[    3.171994] mmc1: SDHCI controller on ff170000.sdhci [ff170000.sdhci] using ADMA 64-bit
[    3.180590] OF: graph: no port node found in /xilinx_drm
[    3.185820] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013).
[    3.192412] [drm] No driver support for vblank timestamp query.
[    3.240883] mmc0: new HS200 MMC card at address 0001
[    3.246046] mmcblk0: mmc0:0001 Q2J55L 7.09 GiB
[    3.250620] mmcblk0boot0: mmc0:0001 Q2J55L partition 1 16.0 MiB
[    3.256581] mmcblk0boot1: mmc0:0001 Q2J55L partition 2 16.0 MiB
[    3.262544] mmcblk0rpmb: mmc0:0001 Q2J55L partition 3 4.00 MiB
[    3.269116]  mmcblk0: p1
[    3.282882] mmc1: new high speed SDHC card at address 59b4
[    3.288506] mmcblk1: mmc1:59b4 USDU1 7.31 GiB
[    3.293595]  mmcblk1: p1 p2
[    3.335061] random: fast init done
[    7.353304] xilinx-drm xilinx_drm: No connectors reported connected with modes
[    7.360450] [drm] Cannot find any crtc or sizes - going 1024x768
[    7.373197] Console: switching to colour frame buffer device 128x48
[    7.384446] xilinx-drm xilinx_drm: fb0:  frame buffer device
[    7.403991] [drm] Initialized xilinx_drm 1.0.0 20130509 on minor 0
[    7.410365] rtc_zynqmp ffa60000.rtc: setting system clock to 2018-01-24 07:53:12 UTC (1516780392)
[    7.419159] of_cfs_init
[    7.421600] of_cfs_init: OK
[    7.425176] ALSA device list:
[    7.428061]   No soundcards found.
[    7.432899] EXT4-fs (mmcblk1p2): couldn't mount as ext3 due to feature incompatibilities
[    7.454275] EXT4-fs (mmcblk1p2): mounted filesystem with ordered data mode. Opts: (null)
[    7.462308] VFS: Mounted root (ext4 filesystem) on device 179:34.
[    7.477456] devtmpfs: mounted
[    7.480559] Freeing unused kernel memory: 512K (ffffffc000bf0000 - ffffffc000c70000)
[    7.882410] systemd[1]: systemd 232 running in system mode. (+PAM +AUDIT +SELINUX +IMA +APPARMOR +SMACK +SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT +GNUTLS +ACL +XZ +LZ4 +SECCOMP +BLKID +ELFUTILS +KMOD +IDN)
[    7.900592] systemd[1]: Detected architecture arm64.

Welcome to Debian GNU/Linux 9 (stretch)!

[    7.924838] systemd[1]: Set hostname to <debian-fpga>.
[    8.208607] systemd[1]: Listening on Syslog Socket.
[  OK  ] Listening on Syslog Socket.
[    8.224131] systemd[1]: Listening on udev Kernel Socket.
[  OK  ] Listening on udev Kernel Socket.
[    8.240049] systemd[1]: Reached target Remote File Systems.
[  OK  ] Reached target Remote File Systems.
[    8.256129] systemd[1]: Listening on Journal Socket.
[  OK  ] Listening on Journal Socket.
[    8.272161] systemd[1]: Started Dispatch Password Requests to Console Directory Watch.
[  OK  ] Started Dispatch Password Requests to Console Directory Watch.
[    8.296113] systemd[1]: Listening on /dev/initctl Compatibility Named Pipe.
[  OK  ] Listening on /dev/initctl Compatibility Named Pipe.
[    8.320054] systemd[1]: Reached target Swap.
[  OK  ] Reached target Swap.
[  OK  ] Listening on Journal Audit Socket.
[  OK  ] Listening on udev Control Socket.
[  OK  ] Listening on Journal Socket (/dev/log).
[  OK  ] Created slice System Slice.
         Mounting POSIX Message Queue File System...
         Starting Nameserver information manager...
[  OK  ] Created slice system-serial\x2dgetty.slice.
[  OK  ] Created slice system-getty.slice.
         Starting Remount Root and Kernel File Systems...
         Starting Load Kernel Modules...
         Starting Journal Service...
[  OK  ] Created slice User and Session Slice.
[  OK  ] Reached target Slices.
         Mounting Debug File System...
         Starting Create Static Device Nodes in /dev...
[  OK  ] Started Forward Password Requests to Wall Directory Watch.
[  OK  ] Reached target Encrypted Volumes.
[  OK  ] Reached target Paths.
[  OK  ] Mounted POSIX Message Queue File System.
[  OK  ] Mounted Debug File System.
[  OK  ] Started Journal Service.
[  OK  ] Started Remount Root and Kernel File Systems.
[  OK  ] Started Load Kernel Modules.
[  OK  ] Started Create Static Device Nodes in /dev.
[  OK  ] Started Nameserver information manager.
         Starting udev Kernel Device Manager...
         Starting Apply Kernel Variables...
         Mounting Configuration File System...
         Starting udev Coldplug all Devices...
[  OK  ] Reached target Local File Systems (Pre).
         Mounting /config...
         Starting Load/Save Random Seed...
         Starting Flush Journal to Persistent Storage...
[  OK  ] Mounted Configuration File System.
[  OK  ] Mounted /config.
[  OK  ] Started Apply Kernel Variables.
[  OK  ] Started Load/Save Random Seed.
[    8.886266] systemd-journald[1597]: Received request to flush runtime journal from PID 1
[  OK  ] Started udev Kernel Device Manager.
[  OK  ] Started Flush Journal to Persistent Storage.
[  OK  ] Started udev Coldplug all Devices.
[  OK  ] Found device /dev/ttyPS0.
[  OK  ] Listening on Load/Save RF Kill Switch Status /dev/rfkill Watch.
[    9.366280] random: crng init done
[  OK  ] Found device /dev/mmcblk1p1.
         Mounting /boot...
[  OK  ] Mounted /boot.
[  OK  ] Reached target Local File Systems.
         Starting Raise network interfaces...
[  OK  ] Started ifup for eth0.
         Starting Create Volatile Files and Directories...
[  OK  ] Started Create Volatile Files and Directories.
         Starting Update UTMP about System Boot/Shutdown...
[  OK  ] Reached target System Time Synchronized.
[  OK  ] Started Update UTMP about System Boot/Shutdown.
[  OK  ] Reached target System Initialization.
[  OK  ] Listening on Avahi mDNS/DNS-SD Stack Activation Socket.
[  OK  ] Started Daily apt download activities.
[  OK  ] Started Daily Cleanup of Temporary Directories.
[  OK  ] Started Daily apt upgrade and clean activities.
[  OK  ] Reached target Timers.
[  OK  ] Listening on D-Bus System Message Bus Socket.
[  OK  ] Reached target Sockets.
[  OK  ] Reached target Basic System.
[   10.090628] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
         Starting FPGA Clock Service....
         Starting User space mappable DMA Buffer Service....
[   10.116686] fclkcfg: loading out-of-tree module taints kernel.
         Starting Avahi mDNS/DNS-SD Stack...
[  OK  ] Started D-Bus System Message Bus.
[  OK  ] Started Avahi mDNS/DNS-SD Stack.
         Starting System Logging Service...
[  OK  ] Started Regular background program processing daemon.
         Starting Login Service...
[  OK  ] Started FPGA Clock Service..
[  OK  ] Started User space mappable DMA Buffer Service..
[  OK  ] Started System Logging Service.
[  OK  ] Started Login Service.
[  OK  ] Started Raise network interfaces.
[  OK  ] Reached target Network.
         Starting Permit User Sessions...
         Starting OpenBSD Secure Shell server...
[  OK  ] Reached target Network is Online.
         Starting Samba NMB Daemon...
         Starting LSB: Start NTP daemon...
[  OK  ] Started Permit User Sessions.
[  OK  ] Started Getty on tty1.
[  OK  ] Started Serial Getty on ttyPS0.
[  OK  ] Reached target Login Prompts.
[  OK  ] Started OpenBSD Secure Shell server.
[  OK  ] Started LSB: Start NTP daemon.
[   11.108309] macb ff0e0000.ethernet eth0: link up (1000/Full)
[   11.113950] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready

Debian GNU/Linux 9 debian-fpga ttyPS0

debian-fpga login:

  1. 2018年01月24日 21:09 |
  2. Linux
  3. | トラックバック:0
  4. | コメント:0

arm のLinuxでGUI の文字が豆腐状態になってしまったときの対処方法

UltraZed-EG Starter Kit の Debian Linux についてブログでやっているが、Xming を立ち上げて、Xウインドをパソコン上に持ってきてUltraZed-EG Starter Kit の Debian Linux 上のGUI アプリケーションソフトを操作している。その際にロケールを日本語にしていると、文字が豆腐状態になってしまうときがある。その時の対処方法を書いておく。

ここを参考にして、ikwzm さんに教えて頂いた xbase-clients と xterm をインストールした。
sudo apt-get install xbase-clients xterm

そして、
sudo apt-get install gnome-commander
でファイル・マネージャーのグノーム・コマンダーをインストールしたのだが、文字が豆腐になってしまった。

検索してみるとロケールを日本語にしているのに、日本語フォントが入っていないのが問題ということだった。
対処方法として、梅フォントをインストールした。
sudo apt-get install fonts-vlgothic
sudo apt-get install fonts-horai-umefont
sudo apt-get install fonts-umeplus


gnome-commander でグノーム・コマンダーを立ち上げると、日本語のフォントが表示された。
UltraZed-EG_StKit_Linux_166_180126.png

  1. 2018年01月24日 05:06 |
  2. Linux
  3. | トラックバック:0
  4. | コメント:0
»