Outils pour utilisateurs

Outils du site


wiki:linux_pour_zynq_de_xilinx:projet_spidev_buildroot

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
wiki:linux_pour_zynq_de_xilinx:projet_spidev_buildroot [2016/11/24 13:18] – [changer le device tree] emeyerwiki:linux_pour_zynq_de_xilinx:projet_spidev_buildroot [2016/11/24 13:54] (Version actuelle) emeyer
Ligne 9: Ligne 9:
  
 Nous allons utiliser la configuration par défaut de //Buildroot// adaptée à la carte microzed. D'abord, où se trouve-t-elle ? Nous allons utiliser la configuration par défaut de //Buildroot// adaptée à la carte microzed. D'abord, où se trouve-t-elle ?
-  $ ls ~/buildroot-2016.08/configs+  $ ls ~/buildroot utilisation de Buildroot pour carte microzedt-2016.08/configs
   ...   ...
   zynq_zed_defconfig   zynq_zed_defconfig
Ligne 51: Ligne 51:
 Il est nécessaire de prendre en compte le périphérique SPI0 comme étant rattaché qu driver SPIDEV. Pour cela il faut modifier le fichier //zynq-zed.dts// fournit par défaut, ou indiquer un autre fichier //dts// Il est nécessaire de prendre en compte le périphérique SPI0 comme étant rattaché qu driver SPIDEV. Pour cela il faut modifier le fichier //zynq-zed.dts// fournit par défaut, ou indiquer un autre fichier //dts//
 Voici un exemple de fichier que nous appellerons //zynq-zed_spi0_spidev.dts// placé dans le répertoire /vagrant/ afin de ne pas le perdre en cas de nettoyage de la configuration : Voici un exemple de fichier que nous appellerons //zynq-zed_spi0_spidev.dts// placé dans le répertoire /vagrant/ afin de ne pas le perdre en cas de nettoyage de la configuration :
 +++++ zynq-zed_spi0_spidev.dts |
 <code c> <code c>
 /* /*
Ligne 194: Ligne 195:
 }; };
 </code> </code>
 +
 +++++
 ==== configurer la prise en charge du nouveau device tree ==== ==== configurer la prise en charge du nouveau device tree ====
   $ make O=../microzed_spidev/ menuconfig   $ make O=../microzed_spidev/ menuconfig
Ligne 199: Ligne 202:
 dans le menu -> Kernel --> Device Tree Source file paths ---> /vagrant/zynq-zed_spi0_spidev.dts dans le menu -> Kernel --> Device Tree Source file paths ---> /vagrant/zynq-zed_spi0_spidev.dts
 ==== configurer linux avec le driver //SPIDEV// ==== ==== configurer linux avec le driver //SPIDEV// ====
-  $ make O=../microzed_spidev/ lionux-menuconfig+  $ make O=../microzed_spidev/ linux-menuconfig
 dans le menu -> Device Drivers --> [*] SPI support  ---> <*>   User mode SPI device driver support dans le menu -> Device Drivers --> [*] SPI support  ---> <*>   User mode SPI device driver support
-==== appliquer les chagements ====+==== appliquer les changements ====
   $ make O=../microzed_spidev/   $ make O=../microzed_spidev/
 +Il se peut que seul la génération //uImage// et le fichier //dtb// soit nécessaire à regénérer. Alors :
 +  $ make O=../microzed_spidev/ linux-rebuild
  
 +==== mettre les fichiers sur la carte SD ====
 +Quels sont les résultats ?
 +  * <color blue> ~/microzed_spidev/images </color>\\ boot.bin        rootfs.cpio.uboot  uImage\\ rootfs.cpio     rootfs.tar         zynq-zed.dtb\\ rootfs.cpio.gz  u-boot.img         zynq-zed_spi0_spidev.dtb\\
  
- +Nous devons alors copier certains de ces fichiers sur la carte SD. Pour cela, il va falloir passer par le répertoire commun entre l'hôte et la machine virutelle 
 +  $ cp ~/microzed_spidev/images/* /vagrant/ 
 + 
 +Ensuite, se référer à cette section : [[wiki:linux_pour_zynq_de_xilinx:installation_buildroot#installation_sur_la_carte_sd|Installation sur la carte SD]] 
 + 
 +==== mettre le bitstream sur la carte SD ==== 
 + 
 +Pour que le contenu du FPGA soit chargé dans le composant, dans notre cas le bistrean sera chargé après le lancement de //linux//. Cela peut se faire au chargement de //u-boot//, mais nous ne verrons pas cela ici. \\ 
 +Dans une console du système où le répertoire utilisé pour le projet avec //Xilinx SDK//, on copie le fichier //.bit// sur la carte SD 
 + 
 +  $ cp  ~/chemin_du_projet_vivado.sdk/design_1_wrapper_hw_platform_0/design_1_wrapper.bit /media/BOOT/ 
 + 
 +===== Une fois la carte Microzed allumée ===== 
 + 
 +Lorsque que vous avez installé la carte SD dans la Microzed et que vous avez une console pour communiquer avec, vous devez monter la partition où vous avez votre bitstream, puis le charge dans le FPGA : 
 + 
 +  Welcome to Buildroot 
 +  buildroot login: root 
 +  # mount -a /dev/mmcblk0p1 /tmp/ 
 +  # cat /tmp/design_1_wrapper.bit > /dev/xdevcfg 
 + 
 +Là, vérifiez que le driver //spidev// a bien pris en compte le périphérique //spi// 
 +  # ls /dev/spidev32766.0  
 +  /dev/spidev32766.0 
 +   
 +Vous pouvez communiquer avec le bus spi : 
 +  # echo -n 1 > /dev/spidev32766.0 
 +   
 +Ensuite, pour vos programmes, vous pouvez utiliser l'interface //ioctl// pour accéder à votre périphérique SPI.
  
wiki/linux_pour_zynq_de_xilinx/projet_spidev_buildroot.1479989933.txt.gz · Dernière modification : 2016/11/24 13:18 de emeyer