# Z-turn -kehityslaudan asennus, digitaalitekniikan kurssi

**URL:** <https://discourse.hacklab.fi/t/z-turn-kehityslaudan-asennus-digitaalitekniikan-kurssi/629>\
**Category:** Helsinki\
**Created:** [April 12, 2017, 6:10pm UTC](https://discourse.hacklab.fi/t/z-turn-kehityslaudan-asennus-digitaalitekniikan-kurssi/629 "2017-04-12T18:10:47Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![suovula](https://discourse.hacklab.fi/user_avatar/discourse.hacklab.fi/suovula/32/757_2.png) [@suovula](https://discourse.hacklab.fi/u/suovula)\
**Post date:** [April 12, 2017, 6:10pm UTC](https://discourse.hacklab.fi/t/z-turn-kehityslaudan-asennus-digitaalitekniikan-kurssi/629/1 "2017-04-12T18:10:48Z")

</div>

# Z-turn

### Toistaiseksi suositeltu image on mukana tullut, sitä ei netistä tunnu löytyvän, mutta saatavilla labilta jos ei omaa ole tallessa

(zturn-original-sd-card.img 3965190144 tavua, suosituksena kuitenkin vähintään 8GB microSD-kortti).

SSH-palvelin pitää ensin asentaa serial-portin kautta, levyllä pitää olla kuitenkin pääsy internettiin paketteja hakemaan.

Asetetaan teminaaliin värit ja käyttämään koko ikkunaa  
**`export TERM=xterm-256color && resize`**

Asennetaan SSH-palvelin  
**`sudo apt-get install openssh-server`**

Asetetaan root-käyttäjälle salasana  
**`passwd`**

Jatkossa oletetaan, että siihen on pääsy [SSH](https://wiki.redpitaya.com/index.php?title=SSH_connection)-yhteydellä.

### Tarkistetaan versiot

**`uname -a && cat /proc/version && cat /etc/issue`**

> Linux localhost.localdomain **3.15.0** -xilinx #9 SMP PREEMPT Tue May 26 17:26:14 CST 2015 armv7l armv7l armv7l GNU/Linux  
> Linux version 3.15.0-xilinx (tom@dev-server) (gcc version 4.6.1 (Sourcery CodeBench Lite 2011.09-50) ) #9 SMP PREEMPT Tue May 26 17:26:14 CST 2015  
> Ubuntu 12.04 LTS \n \l

**`gcc --version`**

> gcc (Ubuntu/Linaro 4.6.3-1ubuntu5) **4.6.3**

Kerneli menee toistaiseksi, mutta gcc pitää päivittää

**`sudo add-apt-repository ppa:ubuntu-toolchain-r/test`**  
**`sudo apt-get update; sudo apt-get install gcc-5 g++-5`**  
**`sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-5 20`**  
**`sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-5 20`**

**`gcc --version`**

> gcc (Ubuntu/Linaro 5.4.1-2ubuntu1~12.04) **5.4.1** 20160904

### FCLK -kellolinjat

PS:n generoimat oletuskellot PL:lle kyseissä distrossa, näitä tarvitaan Vivadon projektia luodessa jolloin kellot pitää asettaa samoiksi jotta se osaa laskea ajoitukset oikein:

> PS\_CLK\_MHZ = 33.333 MHz

> ARM\_PLL\_MHZ = 1333.333 MHz  
> DDR\_PLL\_MHZ = 1066.667 MHz  
> IO\_PLL\_MHZ = 1000.000 MHz

> FPGA0\_CLK = IO\_PLL\_MHZ / 10 / 1 = **100.000** MHz  
> FPGA1\_CLK = IO\_PLL\_MHZ / 20 / 1 = **50.000** MHz  
> FPGA2\_CLK = IO\_PLL\_MHZ / 20 / 1 = **50.000** MHz  
> FPGA3\_CLK = IO\_PLL\_MHZ / 20 / 1 = **50.000** MHz

### SD-kortti

SD-kortille ei kannata jättää mitään arvokasta vaan pitää tallessa ohjeet omista säädöistä jotta voidaan aina tarvittaessa jyrätä kokonaan uudella versiolla.

Isomman SD-kortin käyttämätön osuus ext-partitiolle, omalla vastuulla vaikka onkin testattu toimivaksi tässä esimerkissä 16GB kortilla:

**`sudo fdisk /dev/mmcblk0`**

> Command (m for help): **p**

> Disk /dev/mmcblk0: 15.9 GB, 15931539456 bytes  
> 255 heads, 63 sectors/track, 1936 cylinders, total 31116288 sectors  
> Units = sectors of 1 \* 512 = 512 bytes  
> Sector size (logical/physical): 512 bytes / 512 bytes  
> I/O size (minimum/optimal): 512 bytes / 512 bytes  
> Disk identifier: 0x00000000

> ```
> Device Boot Start End Blocks Id System
> 
> ```
> 
> /dev/mmcblk0p1 \* 63 401624 200781 c W95 FAT32 (LBA)  
> /dev/mmcblk0p2 **401625** 7743329 3670852+ 83 Linux

> Command (m for help): **d**  
> Partition number (1-4): **2**

> Command (m for help): **n**  
> Partition type:  
> p primary (1 primary, 0 extended, 3 free)  
> e extended  
> Select (default p): **p**  
> Partition number (1-4, default 2): **2**  
> First sector (401625-31116287, default 401625): **401625**  
> Last sector, +sectors or +size{K,M,G} (401625-31116287, **default** 31116287):  
> Using default value 31116287

> Command (m for help): **w**  
> The partition table has been altered!

> Calling ioctl() to re-read partition table.

> WARNING: Re-reading the partition table failed with error 16: Device or resource busy.  
> The kernel still uses the old table. The new table will be used at  
> the next reboot or after you run partprobe(8) or kpartx(8)  
> Syncing disks.

**`reboot`**

Nyt partitio on levyn loppuun ja logataan uudestaan SSH:lla ja laajennetaan tiedostojärjestelmäkin:

**`resize2fs /dev/mmcblk0p2`**

> resize2fs 1.42 (29-Nov-2011)  
> Filesystem at /dev/mmcblk0p2 is mounted on /; on-line resizing required  
> old\_desc\_blocks = 1, new\_desc\_blocks = 1  
> The filesystem on /dev/mmcblk0p2 is now 3839332 blocks long.

**`df -h`**

> Filesystem Size Used Avail Use% Mounted on  
> /dev/root **15G** 1.5G 13G 11% /  
> none 76M 564K 75M 1% /run  
> none 5.0M 0 5.0M 0% /run/lock  
> none 377M 8.0K 377M 1% /run/shm  
> /dev/mmcblk0p1 194M 29M 165M 15% /media/ZTURN
