Setting up the environment for the Xilinx ZC702 (Zynq-7000 SoC) – ISE Design Suite (14.x)

About a month ago my group purchased the Xilinx Zynq-7000 SoC ZC702 Evaluation Kit, featuring the ZC702 SoC board. Far from being trivial, getting the SDK and the framework (ISE Design Suite 14.x + ARM Tools) to work properly in a stable environment is quite challenging. In this post I will go through the different alternatives, describing the pros and cons I considered. I will also propose a mixed set-up combining 2 virtual machines, as well as a step-by-step guideline for it. This configuration is actually the one I am using for programming the ZC702.

Continue reading

Android – Understanding, Modifying, Building and Installing

Once we have understood how our device boots up, we will then cover the technical aspects of how to flash our device. As in the boot sequence, the 3 main components that need to be transferred -”flashed”- to the board, are: The Bootloader, the Kernel and the OS (Android). We cover them in different posts, continuing here with the OS – Android.

Once the boot loader has loaded the kernel, the following step is mounting the root file system (Please refer here for further details on the boot sequence). In this post we will go through the process of compiling the Android system and uploading it image to our device. Sometimes, this image needs to be modified. Refer to this post in order to get more information on how to mount/unmount the Android system image.

Continue reading

The Kernel – Understanding, Modifying, Building and Installing

Once we have understood how our device boots up, we will then cover the technical aspects of how to flash our device. As in the boot sequence, the 3 main components that need to be transferred -”flashed”- to the board, are: The Bootloader, the Kernel and the OS (Android). We cover them in different posts, continuing here with The Kernel.

Continue reading

The Bootloader – Understanding, Modifying, Building and Installing

Once we have understood how our device boots up, we will then cover the technical aspects of how to flash our device. As in the boot sequence, the 3 main components that need to be transferred -“flashed”- to the board, are: The Bootloader, the Kernel and the OS (Android). We will cover them in different posts, starting here with The Bootloader.

Continue reading

From PowerOn to Android – The Boot Sequence

One of the main issues when dealing when embedded systems -specially as an amateur developer- is understanding what happens since our board/tablet/phone/etc (we will refer to is as a device from now on) is powered on, until the OS takes control of the device and we are able to use it. Understanding this chain of events is crucial in order to develop low-level routines for any given embedded platform, and equally necessary for efficiently design high-level Apps.

Continue reading