User Tools

Site Tools


hw:zynq:linux:petalinux:boot_kernel

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
hw:zynq:linux:petalinux:boot_kernel [2019/03/29 12:04]
jakub.moron
hw:zynq:linux:petalinux:boot_kernel [2021/04/21 14:57] (current)
jakub.moron
Line 1: Line 1:
-====== Boot and Kernel configure & build with PetaLinux without BSP (board support package) ​ ======+====== Boot and Kernel configure & build with PetaLinux ​2018.3 ​without BSP (board support package) ​ ======
  
   - Create Vivado design and export the hardware with bitstream.\\ Default hdf (hardware description file) location is: <​code>​   - Create Vivado design and export the hardware with bitstream.\\ Default hdf (hardware description file) location is: <​code>​
Line 10: Line 10:
 petalinux-create --type project --template zynq --name <​boot_project_name>​ petalinux-create --type project --template zynq --name <​boot_project_name>​
 cd <​boot_project_name>​ cd <​boot_project_name>​
 +</​code>​ For UltraScale+:​ <​code>​
 +petalinux-create -t project --template zynqMP --name <​boot_project_name>​
 </​code>​ </​code>​
   - Get hardware description from Vivado project: <​code>​   - Get hardware description from Vivado project: <​code>​
Line 25: Line 27:
   - Check whether all required drivers/​modules are enabled in kernel config: <​code>​   - Check whether all required drivers/​modules are enabled in kernel config: <​code>​
 petalinux-config -c kernel petalinux-config -c kernel
-</​code>​ Hint: you can use vim-like search ''/<​search_string>''​ to list all enabled drivers/​modules.\\ **Remember to __Save__ changes before exit -- it seems taht there is no autosave!** \\+</​code>​ Hint: you can use vim-like search ''/<​search_string>''​ to list all enabled drivers/​modules.\\ **Remember to __Save__ changes before exit -- it seems that there is no autosave!** \\
   - In order to use the generic UIO driver ''​uio_pdrv_genirq''​ enable kernel modules in kernel config: <​code>​   - In order to use the generic UIO driver ''​uio_pdrv_genirq''​ enable kernel modules in kernel config: <​code>​
 petalinux-config -c kernel petalinux-config -c kernel
Line 36: Line 38:
 </​code>​ and add the entry at the end of this file: <​code>​ </​code>​ and add the entry at the end of this file: <​code>​
 &​axi_gpio_0 { &​axi_gpio_0 {
- compatible = "uio_pdrv_genirq";+ compatible = "generic-uio";
 }; };
-</​code>​+</​code> ​for every hardware module you have.\\ Please notice that ''​axi_gpio_0''​ __is only an example__ of module name!
   - Fix the u-boot bug -- a typo in default boot command.\\ The proper boot configure entry: <​code>​   - Fix the u-boot bug -- a typo in default boot command.\\ The proper boot configure entry: <​code>​
 default_bootcmd=run uenvboot; run cp_kernel2ram && bootm ${netstart} default_bootcmd=run uenvboot; run cp_kernel2ram && bootm ${netstart}
Line 59: Line 61:
 </​code>​ </​code>​
   - Determinate the bit file name in PetaLinux project (it is copied automatically from Vivado design by ''​--get-hw-description''​):​ <​code>​   - Determinate the bit file name in PetaLinux project (it is copied automatically from Vivado design by ''​--get-hw-description''​):​ <​code>​
-ls ./​images/​linux/​*.bin+ls ./​images/​linux/​*.bit
 </​code>​ </​code>​
   - Create ''​BOOT.BIN''​ image: <​code>​   - Create ''​BOOT.BIN''​ image: <​code>​
 petalinux-package --boot --format BIN --fsbl ./​images/​linux/​zynq_fsbl.elf --fpga ./​images/​linux/<​bit_filename>​.bit --u-boot petalinux-package --boot --format BIN --fsbl ./​images/​linux/​zynq_fsbl.elf --fpga ./​images/​linux/<​bit_filename>​.bit --u-boot
 </​code> ​ </​code> ​
/services/www/http/wiki/data/attic/hw/zynq/linux/petalinux/boot_kernel.1553857459.txt.gz · Last modified: 2019/03/29 12:04 by jakub.moron