Het opstarten van Linux op een Zedboard zonder U-Boot (2 / 6 stap)

Stap 2: Zynq-Boot

Zynq-Boot downloaden

Ten eerste, laten we de code voor zynq-schoen, waarin wat wij moet instellen van een Zedboard aan laars Android downloaden

 git clone git://github.com/cambridgehackers/zynq-boot 

Wat een opstartlader moet doen om op te starten Linux

Een opstartlader moet slechts een paar dingen doen voordat het ARM-Linux kan booten.

  1. Configureren van de DRAM-controller
  2. Laden van de zImage en elke afbeelding van de initiële ramdisk naar DRAM
  3. De waarde van het type machine in r2 laden
  4. Ga naar de zImage

Door de verpakking de zImage en de initiële ramdisk afbeelding in een boot.bin bestand, zorgt Xilinx van fsbl voor de eerste twee van deze. Dus alles wat we moeten doen is de laatste 2.

Behalve de Xilinx lijkt kernel te vereisen sommige andere configuratie registers worden geïnitialiseerd. Na verloop van tijd, worden misschien deze configuratie wil verplaatst naar de kernel om dit proces te vereenvoudigen.

Hoe Zynq-Boot bereidt de weg voor Linux

Als we een kijkje nemen op de inhoud van de Zynq-Boot, is een van de bestanden van belang clearreg. S. dit bestand wordt gecompileerd en zImage gekoppeld zodat deze code het ingangspunt is.

Het begint met wat code te springen uit het verleden een gegevenstabel:

 .arm .data .global clearreg clearreg: adr r4, data_table b 3f 

Het bevat dan de gegevenstabel zelf. Elk item is twee 32-bit woorden: een configuratiewaarde te schrijven en een adres waar u wilt schrijven. Deze registers kunnen worden geconfigureerd door de Xilinx FSBL of door de Linuxkernel, maakt deze stap eenvoudiger.

 data_table: .word SLCR_UNLOCK_MAGIC, XPSS_SYS_CTRL_BASEADDR+0x8//slcr_unlock /* remap DDR to zero, FILTERSTART */ .word 0, XPSS_SCU_BASEADDR + 0x40 //filter_start /* Device config APB, unlock the PCAP */ .word 0x757BDF0D, XPSS_DEV_CFG_APB_BASEADDR + 0x34 //unlock .word 0xFFFFFFFF, XPSS_DEV_CFG_APB_BASEADDR + 0x28 //rom_shadow /* OCM_CFG, Mask out the ROM, map ram into upper addresses */ .word 0x1F, XPSS_SYS_CTRL_BASEADDR + 0x910 //ocm_cfg /* FPGA_RST_CTRL, clear resets on AXI fabric ports */ .word 0x0, XPSS_SYS_CTRL_BASEADDR + 0x240 //fpga_rst_ctrl /* TZ_DDR_RAM, Set DDR trust zone non-secure */ .word 0xFFFFFFFF, XPSS_SYS_CTRL_BASEADDR + 0x430 //trust_zone /* Set urgent bits with register */ .word 0x0, XPSS_SYS_CTRL_BASEADDR + 0x61c //ddr_urgent_sel /* Urgent write, ports S2/S3 */ .word 0xC, XPSS_SYS_CTRL_BASEADDR + 0x600 //ddr_urgent .word SLCR_LOCK_MAGIC,XPSS_SYS_CTRL_BASEADDR + 0x4 //slcr_lock .word 0, 0 // end of table 

Nadat de gegevens is tabel het machinetype:

 machine_type: .word 0xd32 // XILINX_EP107 (Zynq) = 3378. 

Dan is er de code die de processor volgens de gegevenstabel configureert:

 2: str r0, [r1] 3: ldmia r4!, {r0,r1} cmp r1, #0 bne 2b 

Tot slot is er de code die het machinetype XILINX_EP107 ladingen en blijft het ingangspunt zImage:

 ldr r1, machine_type mov r2,#0x1000000 // set address of devicetree data // fall through (to start of zImage) 

Na dat laarzen Linux zoals gebruikelijk.

Gerelateerde Artikelen

Het opstarten van Linux vanaf USB

Het opstarten van Linux vanaf USB

uw harde schijf soms crasht en je moet gebruik maken van de computer. Deze instrable zal u tonen hoe te starten Linux vanaf uw USB.Stap 1: Wat die u nodig hebt... - Een minimale 512 MB USB-A Lichtgewicht Linux OS. Ik ' ll Puppy Linux gebruiken-A USB-
Het opstarten van PUD Linux uit een flash drive

Het opstarten van PUD Linux uit een flash drive

dit instructable leert u hoe u PUD, een 260MB OS installeren op uw flash drive. Dit is mijn eerste instructable dus, alstublieft, hard op me.Het is persistent, dus het zal haar instellingen opslaan bij afsluiten. Ik ben niet verantwoordelijk voor om
Het maken van 'One handschoen' - een 3D-gedrukte, draagbare mobiele telefoon.

Het maken van 'One handschoen' - een 3D-gedrukte, draagbare mobiele telefoon.

Hello!  Ik ben Bryan Cera, en ik ben dol op het maken van Ongein uit elektronica! Het is mijn passie. Voor dit instructable, ik wil u door mijn proces van het creëren van Een handschoen, een functionele mobiele telefoon die je op uw hand dragen nemen
Het uitschakelen van Auto-Off een Sunbeam gezondheidsbeleid op Home verwarming pad

Het uitschakelen van Auto-Off een Sunbeam gezondheidsbeleid op Home verwarming pad

Verklaring van empirismeIk heb deze verwarming pad gebruikt voor enkele jaren (ik schreef deze instructies in December 2007, het is nu februari 2011).  Ik heb precies nul problemen met het - het werkt perfect en de egel is vet en gelukkig.  JOUW SNEL
Het gebruik van Adobe's iPhone verpakker zonder een Apple-ontwikkelaar abonnement

Het gebruik van Adobe's iPhone verpakker zonder een Apple-ontwikkelaar abonnement

als je net als mij, en gewoon gedownloade Flash CS5 aan het testen van het vermogen om het maken van iPhone apps, slechts te worden tegengehouden door het feit dat u geld besteden bij apple moet om een ontwikkelaar, dan is deze instrucatable is voor
Het opstarten van Windows 7 in een USB-Drive (Windows PE LiveCD of LiveUSB)

Het opstarten van Windows 7 in een USB-Drive (Windows PE LiveCD of LiveUSB)

Windows Preinstallation Environment (ook bekend als Windows PE en WinPE) is een lichtgewicht versie van Windowsgebruikt voor de implementatie van PC's, werkstations en servers of oplossen van een besturingssysteem, terwijl het off line is. Het is bed
Virtual Reality Games en het maken van je lichaam een Controller! (Eenheid visuele Studio + Kinect + Oculus)

Virtual Reality Games en het maken van je lichaam een Controller! (Eenheid visuele Studio + Kinect + Oculus)

Meeslepende oneindige RunnerGa je gang en aan de slag.Leveringen· Microsoft-Account-https://www.microsoft.com/en-us/account/default.aspx· Visual Studio Community Edition 2013 of 2015 – https://www.visualstudio.com/· Visuele Studio eenheid Plugin-http
Het nieuws van het bevellijn van Linux.

Het nieuws van het bevellijn van Linux.

Aangezien nieuws voornamelijk tekst hoe dan ook is, de opdrachtregel blinkt uit op dit gebied. Newsbeuter is een eenvoudig programma om te gebruiken en te werken met. Niet alleen zal het importeren opml-bestanden meestal door een heleboel nieuwsprogr
Het installeren van Subwoofers in een auto

Het installeren van Subwoofers in een auto

In dit instructable, ik zal u tonen het hele proces van het installeren van een versterkte subwoofer in een auto. Nadat u uw subwoofersysteem opgezet hebt, zult u veel beter geluid horen van uw stereo-installatie.Dit proces zal werken met de meeste v
Het graveren van metaal met een Dremel gereedschap

Het graveren van metaal met een Dremel gereedschap

Ik heb onlangs een zak als een geschenk en het is er gebeurd met het hebben van een lege metalen plaat op het.Met dingen gaan industriële, ik in geslaagd om mijn handen krijgen op een Dremel gereedschap, heb ik besloten dat ik zou mijn initialen grav
Het afdrukken van stof, met een inkjetprinter en een DIY Colorfast recept

Het afdrukken van stof, met een inkjetprinter en een DIY Colorfast recept

Wow, ben ik zo blij dat ik was voldoende gemotiveerd om te leren meer over computers en het maken van ontwerpen. Het was een beetje frustrerend soms maar al met al ben ik blij dat ik leerde een paar technieken die me een hoop tijd met mijn projecten
Het houden van kippen in een ruw klimaat van Noord

Het houden van kippen in een ruw klimaat van Noord

Update: Ik ben dolblij om te horen van sommige Mainers die daadwerkelijk hebben gebruikt mijn instructable!Mijn naam is Dainius en ik woon in Maine, waar het klimaat moorddadig koud in de winter is. Ik heb veel verloren een kip in de vroegere dagen t
Het meten van afstanden op een foto met behulp van Google Sketchup

Het meten van afstanden op een foto met behulp van Google Sketchup

enige tijd geleden een vriend stuurde me wat foto's van een printer-uitbreidingskaart voor een Braziliaanse ZX Spectrum. Om te produceren een PCB lay-out voor een kloon van dergelijke bestuur nodig ik één of ander hulpmiddel om metingen gebaseerd op
Voelde me ballen uit het breien van wol voor een stevige parel ketting

Voelde me ballen uit het breien van wol voor een stevige parel ketting

dit is een beginner's vilten project dat uses opwaarts Diversen garen voor de productie van de sferische parels die vervolgens kunnen worden gemaakt in een ketting of armband.  De schoonheid van het gebruik van garen is dat het is gemakkelijk om kral