Intel® EP80579 Software Drivers for Embedded Applications on FreeBSD* Getting Started Guide September 2009 Order Number: 320152-005US
INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL® PRODUCTS. NO LICENSE, EXPRESS OR IMPLIED, BY ESTOPPEL OR OTHERWISE, TO ANY INTELLECTUAL PROPERTY RIGHTS IS GRANTED BY THIS DOCUMENT.
Contents—EP80579 Integrated Processor Contents 1.0 Introduction .............................................................................................................. 6 1.1 About this Manual ............................................................................................... 6 1.2 Additional Information on Software........................................................................ 6 1.2.1 Where to Find Current Software and Documentation ..................................... 6 1.2.
EP80579 Integrated Processor—Contents 5.5 5.6 5.7 5.4.1 FreeBSD Compilation Instructions .............................................................24 5.4.2 FreeBSD Module Load/Unload Instructions .................................................25 IEEE 1588 Hardware Assist .................................................................................25 5.5.1 FreeBSD Compilation Instructions .............................................................25 5.5.
Revision History—EP80579 Integrated Processor Revision History Date Revision Description September 2009 005 Added text (with changebars) in: • Section 5.1.3, “FreeBSD Sample Codelet” on page 22 • Section 5.6.1, “FreeBSD Compilation Instructions” on page 26 May 2009 004 Minor modifications to correct URLs for FreeBSD download and other text corrections. Change bars were not updated; change bars show edits from previous doc version (below). 003 General updates to reflect support for FreeBSD* 7.1.
EP80579 Integrated Processor—Introduction 1.0 Introduction 1.1 About this Manual This Getting Started Guide documents the instructions to obtain, build (if necessary), install, and execute the software release package for the Intel® EP80579 Integrated Processor product line. Additionally, this document describes brief installation instructions for the Intel® EP80579 Integrated Processor with Intel® QuickAssist Technology Development Board.
Introduction—EP80579 Integrated Processor 1.2.3 Pre-boot Firmware The latest release of the development board pre-boot firmware (BIOS) is also located on Hardware Design resource center. Refer to the Intel® EP80579 Software Drivers for Embedded Applications Release Notes for latest version. Please follow the directions in Section 1.2.1 to locate this firmware. 1.
EP80579 Integrated Processor—Introduction Figure 1.
Configuration Requirements—EP80579 Integrated Processor 2.0 Configuration Requirements 2.1 Development Board Configuration Complete details about the development board can be found in the “Intel® EP80579 Integrated Processor with Intel® QuickAssist Technology Development Kit User’s Guide”. This document contains details on the design, structure, and function of all development board features.
EP80579 Integrated Processor—Configuration Requirements 2.1.3 Safety The development board is shipped as an open system allowing for maximum flexibility in changing hardware configurations and peripherals in a lab environment. Since the board is not in a protective chassis, the user is required to take safety precautions in handling and operating the board. Some assembly is required before use. Ensure a safe and static-free work environment before removing any components from their anti-static packaging.
Configuration Requirements—EP80579 Integrated Processor 2.1.7 Connecting the Serial ATA DVD-ROM Drive (Optional) Connect the Serial ATA DVD-ROM drive to SATA Port 1 utilizing the cable that comes with the DVD-ROM drive. See Figure 2 and Table 1 for the location and identification of the SATA connectors. 2.1.8 Connecting the Power Cables Use the following procedure to connect the power cables: 1. The board supports the use of ATX12V power supplies with either 2 x 10 or 2 x 12 main power cables. 2.
EP80579 Integrated Processor—Configuration Requirements Figure 2.
Configuration Requirements—EP80579 Integrated Processor Figure 3. Side View of the Board Connectors RR TT QQ SS MM UU PP NN OO B6605-01 Table 1.
EP80579 Integrated Processor—Configuration Requirements Table 1.
Configuration Requirements—EP80579 Integrated Processor 2.2 Development Board Setup Requirements 2.2.1 Stand-alone Target System Figure 4 shows the system setup when the target development board is also used for build and install. Figure 4.
EP80579 Integrated Processor—System Requirements for Installing an OS on a Development Board 3.0 System Requirements for Installing an OS on a Development Board 3.1 Installing FreeBSD FreeBSD* download software can be acquired from http://www.freebsd.org. For complete installation instructions and the FreeBSD* 7.1 release Readme document, please refer to FreeBSD’s web site at the following locations: • http://www.freebsd.org/releases/7.1R • http://www.freebsd.org/releases/7.1R/readme.
System Requirements for Installing an OS on a Development Board—EP80579 Integrated Processor 14. In the next few screens inetd and related services can be enabled. Do not edit the default configuration file. The questions can be deceptive. Select Yes and No carefully. 15. Enable the SSH login. 16. Do not ask for Anonymous FTP access to your machine. 17. Do not configure the machine as a NFS server. 18. Do not configure the machine as a NFS client. 19. Do not customize the system console settings. 20.
EP80579 Integrated Processor—System Requirements for Installing an OS on a Development Board Transfer the tarball to the development board using any preferred method, for example, USB memory stick, CDROM or network transfer.
System Requirements for Installing an OS on a Development Board—EP80579 Integrated Processor Note: Kernel compilation takes about 30 minutes to complete. Install the recompiled kernel by executing the following commands: cd /usr/src make installkernel KERNCONF=MYKERNEL Check if a new kernel was built by executing the following commands and examine the date and time that the kernel was produced: cd /boot/kernel ls -l kern* Rebooting the system brings the system up with the newly compiled kernel.
EP80579 Integrated Processor—Building and Installing EP80579 Software on a Target Development Board 4.0 Building and Installing EP80579 Software on a Target Development Board This chapter provides instructions for setting up the environment and building/ compilation instructions for the Intel® EP80579 Software Drivers for Embedded Applications package. 4.1 Environment Setup There are no environment variables to set for the Intel® EP80579 Software Drivers for Embedded Applications package for FreeBSD*.
Runtime Configuration—EP80579 Integrated Processor 5.0 Runtime Configuration This chapter describes how to compile and install EP80579 drivers individually. 5.1 Controller Area Network Driver 5.1.
EP80579 Integrated Processor—Runtime Configuration 5.1.3 FreeBSD Sample Codelet A codelet is provided to demonstrate how a sample application interfaces with the Controller Area Network driver. This codelet is intended to run on an Intel® EP80579 Integrated Processor with Intel® QuickAssist Technology Development Board with FreeBSD installed. The EP80579 Embedded Software kernel should also be installed, but the codelet works even if it is not.
Runtime Configuration—EP80579 Integrated Processor To load the FreeBSD EDMA driver, execute the following command from the directory where the compiled executable resides: kldload ./dma.ko To unload the FreeBSD EDMA driver execute the following command: kldunload dma.ko The kldstat command may be used to confirm if a module has been loaded or unloaded: kldstat | grep dma The output of the kldstat command lists all modules loaded in the system. Look for an entry titled “dma”. 5.2.
EP80579 Integrated Processor—Runtime Configuration 5.3.2 FreeBSD Module Load/Unload Instructions Note: This step is not necessary if the make install command above succeeded. This is only necessary to understand how to load and unload this driver individually. To load the FreeBSD Watchdog Timer driver, execute the following command from the directory where the compiled executable resides: kldload ./iwdt.ko To unload the FreeBSD Watchdog Timer driver execute the following command: kldunload iwdt.
Runtime Configuration—EP80579 Integrated Processor make install (this will install the driver for persistency) The GPIO driver compiles, is installed, and the resulting GPIO.ko file is placed in the /EP805XX_release/Embedded/build directory. 5.4.2 FreeBSD Module Load/Unload Instructions Note: This step is not necessary if the make install command above succeeded. This is only necessary to understand how to load and unload this driver individually.
EP80579 Integrated Processor—Runtime Configuration kldunload timesync.ko The kldstat command may be used to confirm if a module has been loaded or unloaded: kldstat | grep timesync The output of the kldstat command lists all modules loaded in the system. Look for an entry titled “timesync”. 5.5.3 FreeBSD Sample Codelet A codelet is provided to demonstrate how a sample application interfaces with the IEEE 1588 Hardware Assist driver.
Runtime Configuration—EP80579 Integrated Processor Compilation of the FreeBSD GCU and GbE drivers separately from the rest of the software package is possible. Ensure that GCU drivers are built and loaded before the GbE drivers. Enter the /EP805XX_release/Embedded/src/GbE and /EP805XX_release/ Embedded/src/GCU directory and execute the following commands: make clean make make install (this will install the driver for persistency) The Gigabit Ethernet driver compiles, is installed, and the resulting iegbe.
EP80579 Integrated Processor—Runtime Configuration The ichsmb.ko driver is installed using the following command: kldload ichsmb These drivers can be unloaded using the following commands: kldunload smb.ko kldunload smbus.ko kldunload ichsmb.ko To confirm these modules have been loaded or unloaded, execute the following command: kldstat The output of the kldstat command lists all modules loaded in the system. Look for entries entitled “smb”, “smbus”, and “ichsmb”.
Pre-boot (BIOS) Firmware—EP80579 Integrated Processor 6.0 Pre-boot (BIOS) Firmware The pre-boot firmware is executed when the system is powered up or reset. It initializes and configures system memory, devices and buses/interfaces. The pre-boot firmware is based on the AMI Aptio* 4.5 core and compliant to EFI v1.1.
EP80579 Integrated Processor—Pre-boot (BIOS) Firmware 6.1.1 Serial Console Redirection The pre-boot firmware supports redirection of both video and keyboard via a serial port. When console redirection is enabled, the remote console terminal sends keystrokes to the Intel® EP80579 Development Board pre-boot firmware and the preboot firmware redirects the video to the console terminal.
Pre-boot (BIOS) Firmware—EP80579 Integrated Processor The default setting in the BIOS is 400 MHz. If a higher speed memory DIMM is inserted into the development board, the corresponding memory speed must be selected in the BIOS Setup Menu to support the intended speed. Otherwise, the memory is reduced to the default of 400 MHz. 6.1.4 Coherent and Non-Coherent Memory Allocation The development board supports allocation of memory regions for coherent and noncoherent use.
EP80579 Integrated Processor—Pre-boot (BIOS) Firmware 3. Use the arrow keys to navigate to the IDE Configuration option. 4. Select the IDE Configuration option. 5. Use the arrow keys to navigate to the SATA Mode option. 6. Press the Enter key. A SATA Mode popup window appears. 7. Select either Legacy or AHCI as desired. Do not use Native as a selection. 8. Press F4 to save. 9. Choose Yes. The system continues the boot process. 6.
Pre-boot (BIOS) Firmware—EP80579 Integrated Processor 6. Once the “fs0:” command has been initiated, execute the AFUEFI utility. — Type “AFUEFI /X /P /B /N” (the will be similar to TRXTG055.ROM) 7. Reboot the development board once reflashing has completed. 8. Confirm the image has been updated to the reflashed image by looking in BIOS Setup.
EP80579 Integrated Processor—Uninstalling the Software 7.0 Uninstalling the Software Please refer to the instructions for individual loading and unloading modules in Chapter 5.0, “Runtime Configuration”. To uninstall all drivers, see the last paragraph in Section 4.3, “Uninstalling Embedded Software Drivers” on page 20. 7.1 FreeBSD Modules/Driver Dependencies Table 6 lists the dependencies for the driver modules or patch within the Intel® EP80579 Software Drivers for Embedded Applications package.
Troubleshooting—EP80579 Integrated Processor 8.0 Troubleshooting • It is advised to plug the Matrox Millennium G550 PCIe* graphics card into the PCI Express* slot closest to memory. Lack of video has been exhibited in the PCI Express x4 slot. • When using the Matrox Millennium G550 PCIe graphics card, utilize the bottom video port on this dual port video card. The top port will not output any video to the display.
EP80579 Integrated Processor—Glossary 9.