0% found this document useful (0 votes)
59 views44 pages

Security&FreeBSD Install Guide

This document provides instructions for getting started with Intel® EP80579 Software for Security Applications on Intel® QuickAssist Technology for FreeBSD*. It describes how to configure a development board, install FreeBSD, rebuild the FreeBSD kernel to include support for the EP80579 chipset, and build and install the EP80579 security software. The document is intended for developers working with the EP80579 chipset on FreeBSD.

Uploaded by

Tyler Kennedy
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
59 views44 pages

Security&FreeBSD Install Guide

This document provides instructions for getting started with Intel® EP80579 Software for Security Applications on Intel® QuickAssist Technology for FreeBSD*. It describes how to configure a development board, install FreeBSD, rebuild the FreeBSD kernel to include support for the EP80579 chipset, and build and install the EP80579 security software. The document is intended for developers working with the EP80579 chipset on FreeBSD.

Uploaded by

Tyler Kennedy
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 44

Intel® EP80579 Software for

Security Applications on Intel®


QuickAssist Technology for
FreeBSD*
Getting Started Guide

September 2009

Order Number: 320703-003US


INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL® PRODUCTS. NO LICENSE, EXPRESS OR IMPLIED, BY ESTOPPEL OR
Legal Lines and Disclaimers

OTHERWISE, TO ANY INTELLECTUAL PROPERTY RIGHTS IS GRANTED BY THIS DOCUMENT. EXCEPT AS PROVIDED IN INTEL’S TERMS AND CONDITIONS
OF SALE FOR SUCH PRODUCTS, INTEL ASSUMES NO LIABILITY WHATSOEVER, AND INTEL DISCLAIMS ANY EXPRESS OR IMPLIED WARRANTY, RELATING
TO SALE AND/OR USE OF INTEL PRODUCTS INCLUDING LIABILITY OR WARRANTIES RELATING TO FITNESS FOR A PARTICULAR PURPOSE,
MERCHANTABILITY, OR INFRINGEMENT OF ANY PATENT, COPYRIGHT OR OTHER INTELLECTUAL PROPERTY RIGHT. Intel products are not intended for
use in medical, life saving, life sustaining, critical control or safety systems, or in nuclear facility applications.
Intel may make changes to specifications and product descriptions at any time, without notice. Designers must not rely on the absence or characteristics
of any features or instructions marked “reserved” or “undefined.” Intel reserves these for future definition and shall have no responsibility whatsoever for
conflicts or incompatibilities arising from future changes to them. The information here is subject to change without notice. Do not finalize a design with
this information.
The products described in this document may contain design defects or errors known as errata which may cause the product to deviate from published
specifications. Current characterized errata are available on request.
Contact your local Intel sales office or your distributor to obtain the latest specifications and before placing your product order.
Copies of documents which have an order number and are referenced in this document, or other Intel literature, may be obtained by calling 1-800-548-
4725, or by visiting Intel’s Web Site.
Any software source code reprinted in this document is furnished under a software license and may only be used or copied in accordance with the terms
of that license.
Intel processor numbers are not a measure of performance. Processor numbers differentiate features within each processor family, not across different
processor families. See http://www.intel.com/products/processor_number for details.
BunnyPeople, Celeron, Celeron Inside, Centrino, Centrino logo, Core Inside, FlashFile, i960, InstantIP, Intel, Intel logo, Intel386, Intel486, Intel740,
IntelDX2, IntelDX4, IntelSX2, Intel Core, Intel Inside, Intel Inside logo, Intel. Leap ahead., Intel. Leap ahead. logo, Intel NetBurst, Intel NetMerge, Intel
NetStructure, Intel SingleDriver, Intel SpeedStep, Intel StrataFlash, Intel Viiv, Intel vPro, Intel XScale, Itanium, Itanium Inside, MCS, MMX, Oplus,
OverDrive, PDCharm, Pentium, Pentium Inside, skoool, Sound Mark, The Journey Inside, VTune, Xeon, and Xeon Inside are trademarks of Intel
Corporation in the U.S. and other countries.
*Other names and brands may be claimed as the property of others.
Copyright © 2009, Intel Corporation. All rights reserved.

Intel® EP80579 Software for Security Applications on Intel® QuickAssist Technology for FreeBSD*
GSG September 2009
2 Order Number: 320703-003US
Contents—EP80579 Security Software

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.2 Product Documentation ............................................................................. 7
1.2.3 Pre-Boot Firmware ................................................................................... 7
1.3 Related Software and Documentation..................................................................... 7
1.3.1 Open Source Software Required ................................................................. 7
1.4 Conventions ....................................................................................................... 7
1.5 Software Overview .............................................................................................. 8
1.5.1 Features Implemented .............................................................................. 8
1.5.2 List of Files in Release............................................................................... 9
1.5.3 Package Release Structure ........................................................................ 9
2.0 Configuration Requirements .................................................................................... 10
2.1 Development Board Configuration ....................................................................... 10
2.1.1 Package Components.............................................................................. 10
2.1.2 Development Kit Setup ........................................................................... 10
2.1.3 Safety .................................................................................................. 11
2.1.4 Connecting the Serial ATA Hard Drive and Cable......................................... 11
2.1.5 Connecting the Keyboard and Mouse......................................................... 11
2.1.6 Connecting the PCI Express* Video Card ................................................... 11
2.1.7 Connecting the Serial ATA DVD-ROM Drive (Optional) ................................. 12
2.1.8 Connecting the Power Cables ................................................................... 12
2.1.9 Powering Up the System ......................................................................... 12
2.2 Development Board Setup Requirements .............................................................. 17
3.0 Installing the OS on a Development Board .............................................................. 18
3.1 System Requirements ........................................................................................ 18
3.2 Acquiring FreeBSD 7.1 ....................................................................................... 18
3.3 Installing FreeBSD............................................................................................. 18
4.0 Rebuilding FreeBSD Kernel ...................................................................................... 21
4.1 Build Environment Requirements ......................................................................... 21
4.2 Unpacking EP80579 FreeBSD Security Package ..................................................... 21
4.3 Patching the Kernel for PCI Device Recognition...................................................... 21
4.4 Rebuilding the FreeBSD Kernel............................................................................ 22
4.5 Configure Loader Configuration File ..................................................................... 22
4.6 Rebooting and Verifying ..................................................................................... 22
5.0 Building EP80579 Security Software on a Target Development Board...................... 24
5.1 Environment Setup............................................................................................ 24
5.2 Build Options .................................................................................................... 24
5.3 Build Using Top Level Make ................................................................................ 24
5.4 Installation of Build Output ................................................................................. 25
5.4.1 Statistics Collection ................................................................................ 25
5.5 Uninstalling Embedded and Security Kernel Modules .............................................. 27
6.0 Building, Installing and Loading Individual EP80579 Embedded Software Drivers ... 28
6.1 Controller Area Network (CAN) Driver .................................................................. 28
6.1.1 FreeBSD Compilation Instructions............................................................. 28
6.1.2 FreeBSD Module Load/Unload Instructions ................................................. 28
6.1.3 FreeBSD Sample Codelet......................................................................... 29
6.2 Enhanced Direct Memory Access (EDMA) Driver..................................................... 29

Intel® EP80579 Software for Security Applications on Intel® QuickAssist Technology for FreeBSD*
September 2009 GSG
Order Number: 320703-003US 3
EP80579 Security Software—Contents

6.2.1 FreeBSD Compilation Instructions .............................................................29


6.2.2 FreeBSD Module Load/Unload Instructions .................................................29
6.2.3 FreeBSD Sample Codelet .........................................................................30
6.3 Watchdog Timer (WDT) Driver.............................................................................30
6.3.1 FreeBSD Compilation Instructions .............................................................30
6.3.2 FreeBSD Module Load/Unload Instructions .................................................30
6.3.3 FreeBSD Sample Codelet .........................................................................31
6.4 General Purpose I/O (GPIO) Driver.......................................................................31
6.4.1 FreeBSD Compilation Instructions .............................................................31
6.4.2 FreeBSD Module Load/Unload Instructions .................................................31
6.5 IEEE 1588 Hardware Assist Driver........................................................................32
6.5.1 FreeBSD Compilation Instructions .............................................................32
6.5.2 FreeBSD Module Load/Unload Instructions .................................................32
6.5.3 FreeBSD Sample Codelet .........................................................................33
6.6 Global Configuration Unit and Gigabit Ethernet Drivers............................................33
6.6.1 FreeBSD Compilation Instructions .............................................................33
6.6.2 FreeBSD Module Load/Unload Instructions .................................................34
6.7 System Management Bus (SMBus) Driver .............................................................34
6.7.1 FreeBSD Compilation Instructions .............................................................34
6.7.2 FreeBSD Module Load/Unload Instructions .................................................34
7.0 Sample Applications.................................................................................................36
8.0 Pre-Boot Firmware (BIOS) .......................................................................................37
8.1 Pre-Boot Firmware Setup Menu ...........................................................................37
8.1.1 Serial Console Redirection........................................................................38
8.1.2 Changing the Boot Device ........................................................................38
8.1.3 Maximum Memory Speed Setup................................................................38
8.1.4 Coherent and Non-Coherent Memory Allocation ..........................................39
8.1.5 Legacy and AHCI SATA Mode....................................................................39
8.2 Pre-Boot Firmware Image Reflashing Instructions ..................................................40
8.2.1 Aptio Flash Update Utility (AFUEFI) ...........................................................40
9.0 Uninstalling the Software.........................................................................................41
9.1 FreeBSD Modules/Driver Dependencies.................................................................41
10.0 Troubleshooting.......................................................................................................42
10.1 Using a Graphics Card ........................................................................................42
10.2 Using the Serial Port ..........................................................................................42
11.0 Glossary...................................................................................................................44

Figures
1 Development Board - Top View of Component and Connector Locations ...........................13
2 Development Board - Bottom View of Component and Connector Locations ......................14
3 Development Board - Side View of the Board Connectors ...............................................15
4 Development Board System Setup ..............................................................................17

Tables
1 Development Board - Key Components and Connectors Legend ......................................15
2 Output Files Created in the $ICP_BUILD_OUTPUT Directory............................................25
3 Pre-Boot Firmware Setup Main Menu ...........................................................................37
4 Pre-Boot Firmware Setup Program Action Keys .............................................................37
5 Serial Console Redirection Default Settings ..................................................................38
6 FreeBSD Module/Driver Dependencies .........................................................................41

Intel® EP80579 Software for Security Applications on Intel® QuickAssist Technology for FreeBSD*
GSG September 2009
4 Order Number: 320703-003US
Revision History—EP80579 Security Software

Revision History

Date Revision Description

Updates for 1.0.3 release including:


• The EP80579 security software release package version 1.0.3 does not support OpenBSD/
September 2009 003 FreeBSD Cryptographic Framework (OCF), OCF-Linux or any open source projects such as
Openswan*, OpenSSL*, or Racoon*. Text describing this functionality has been removed and
is not noted with changebars.
• Provided support for FreeBSD* v7.1 with major modifications in Chapter 3.0, “Installing the
OS on a Development Board” and minor edits elsewhere in the document.
• Provided support for OCF shim (Opencrypto driver) on FreeBSD* in Section 1.5.1.
• Added Section 5.4.1, “Statistics Collection” on page 25
• Added Chapter 7.0, “Runtime Configuration,” Chapter 8.0, “Racoon* Installation and
Configuration,” Chapter 14.0, “Building and Using Crypto Tools,” and Chapter 7.0, “Sample
June 2009 002 Applications.”
• Added FreeBSD sample codelet information in Section 6.1.3, Section 6.2.3, Section 6.3.3,
and Section 6.5.3.
• Added FreeBSD compilation instructions for GCU and GbE drivers in Section 6.6.1.
• Restructured Section 8.1.4, “Coherent and Non-Coherent Memory Allocation” on page 39 for
clarity.
• Other modifications noted with change bars.
December 2008 001 Initial release of this document.

§§

Intel® EP80579 Software for Security Applications on Intel® QuickAssist Technology for FreeBSD*
September 2009 GSG
Order Number: 320703-003US 5
EP80579 Security Software—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 Intel® EP80579 Software for Security Applications on Intel®
QuickAssist Technology release package. Additionally, this document describes some
brief instructions on configuring the Intel® EP80579 Integrated Processor with Intel®
QuickAssist Technology Development Board.

In this document, for convenience:


• “Intel® EP80579 Integrated Processor with Intel® QuickAssist Technology
Development Board” is referred to as the “development board”
• “Intel® EP80579 Software for Security Applications on Intel® QuickAssist
Technology” is referred to as the “EP80579 security software”

Note: The release package includes a directory with sample code.

Note: Copying FreeBSD commands with quoted strings from this pdf file to a shell script may
result in incorrect quotes. The user should edit the shell scripts appropriately.

1.2 Additional Information on Software


Note: The EP80579 security software release package version 1.0.3 does not support
OpenBSD/FreeBSD Cryptographic Framework (OCF), OCF-Linux, or any open source
projects such as Openswan*, OpenSSL*, or Racoon*. Text describing this functionality
has been removed and is not noted with changebars. If your application requires OCF,
you must use security software package version 1.0.2 which includes shim software to
enable OCF support.

The EP80579 security software release package for FreeBSD has been validated with
FreeBSD v7.1.

1.2.1 Where to Find Current Software and Documentation


The software release and associated collateral can be found on the Hardware Design
resource center.
1. In a web browser, go to http://www.intel.com/go/soc.
2. For software and pre-boot firmware: Click on “Tools & Software” tab.
3. For documentation: Click on “Technical Documents” tab.

Note: The EP80579 security software release package contains encryption software and is
subject to export requirements defined by the U.S Department of Commerce. To satisfy
these requirements, the End User Certification Form must be filled out and submitted
for review/approval. Instructions on this process are included during the download
process. Please note that this process may take up to two business days to complete.

Intel® EP80579 Software for Security Applications on Intel® QuickAssist Technology for FreeBSD*
GSG September 2009
6 Order Number: 320703-003US
Introduction—EP80579 integrated processor with QuickAssist

1.2.2 Product Documentation


The following documentation supporting this release can be accessed as described in
Section 1.2.1:
• Intel® EP80579 Software for Security Applications on Intel® QuickAssist
Technology for FreeBSD* Getting Started Guide (this document)
• Intel® EP80579 Software for Security Applications on Intel® QuickAssist
Technology Release Notes
• Intel® EP80579 Software for Security Applications on Intel® QuickAssist
Technology Programmer’s Guide
• Intel® EP80579 Software for Security Applications on Intel® QuickAssist
Technology Cryptographic API Reference Manual
• Intel® EP80579 Software on Intel® QuickAssist Technology Debug Services API
Reference Manual
• Intel® EP80579 Software Drivers for Embedded Applications Programmer’s Guide
and API Reference Manual

1.2.3 Pre-Boot Firmware


The latest release of the development board pre-boot firmware (BIOS) is also located
on the Hardware Design resource center.

Please refer to Release Notes listed in Section 1.2.1 for the correct firmware version.

1.3 Related Software and Documentation


Refer to the Intel® EP80579 Integrated Processor with Intel® QuickAssist Technology
Development Kit User’s Guide for information on the development board including
board layout, components, connectors, jumpers, headers, power and environmental
requirements, and pre-boot firmware.

Please follow the directions in Section 1.2.1 to locate this collateral.

1.3.1 Open Source Software Required


Depending on your applications, the following table shows required open source
software.

Item URL

FreeBSD 7.1 ISO ftp://ftp-archive.freebsd.org/pub/FreeBSD-Archive/old-releases/i386/ISO-IMAGES/7.1

FreeBSD Installation
ftp://ftp-archive.freebsd.org/pub/FreeBSD-Archive/old-releases/i386/7.1-RELEASE
Guide, Readme, etc

1.4 Conventions
The following conventions are used in this manual:
• Courier font - commands and code examples

Intel® EP80579 Software for Security Applications on Intel® QuickAssist Technology for FreeBSD*
September 2009 GSG
Order Number: 320703-003US 7
EP80579 Security Software—Introduction

1.5 Software Overview

1.5.1 Features Implemented


The software provides the following features:
• Gigabit Ethernet (GbE) Controller Driver for Network Connectivity
• Support for Symmetric Cryptography (Synchronous and Asynchronous modes)
— Ciphers:
- NULL Cipher
- DES (ECB, CBC),
- 3DES (ECB, CBC, CTR)
- AES (ECB, CBC, CTR, CCM, GCM)
- ARC4
— Hash Algorithms:
- MD5
- SHA-1
- SHA-2 (224, 256, 384, 512)
- Nested Hashing
Note: Hashing Algorithms have been verified to work when Racoon is configured
to use them to pass traffic in kernel space. The algorithms have not been
validated in user space.
— Authentication Schemes:
- AES-XCBC-MAC-96
- HMAC-MD-5
- HMAC-SHA-1
- HMAC-SHA-2 (224, 256, 384, 512)
— Chaining Cipher and Authentication algorithms
• Support for Public Key Cryptography (Synchronous and Asynchronous modes)
— Large Number Modular Exponentiation and Inversion
— RSA (Key Generation, Encrypt, Decrypt)
— DSA (Parameter Generation and Signatures)
— DH (Phase1 and Phase2 secret key generation)
— SSL/TLS Key and Mask generation
— True Random Number Generation (RNG)
— Prime Number Tests
• IEEE 1588 Hardware Assist Driver
• Controller Area Network (CAN) Hardware Access Driver
• Advanced Host Controller Interface Software Support for SATA for Native Command
Queuing and Hot Plug Capability
• SMBus Driver
• General Purpose I/O (GPIO) Hardware Access Driver
• Enhanced Direct Memory Access (EDMA) Hardware Assist Driver
• Watchdog Timer Hardware (WDT) Access Driver

Intel® EP80579 Software for Security Applications on Intel® QuickAssist Technology for FreeBSD*
GSG September 2009
8 Order Number: 320703-003US
Introduction—EP80579 integrated processor with QuickAssist

1.5.2 List of Files in Release


The Bill of Materials, sometimes referred to as the BOM, is included as a text file in the
released software package. This text file is labeled “filelist” and is located at the top
directory level for each release.

1.5.3 Package Release Structure


The high-level package release directory structure is shown as follows:

Note: The sample code is contained in the ./Acceleration/library/icp_crypto/


look_aside_crypto/sample_code/ directory.

./Acceleration
./Acceleration/firmware
./Acceleration/include
./Acceleration/include/dcc
./Acceleration/include/lac
./Acceleration/drivers
./Acceleration/drivers/icp_asd
./Acceleration/library
./Acceleration/library/common
./Acceleration/library/icp_debug
./Acceleration/library/icp_utils
./Acceleration/library/icp_utils/OSAL
./Acceleration/library/icp_services
./Acceleration/library/icp_crypto
./Acceleration/library/icp_crypto/QATAL
./Acceleration/library/icp_crypto/QAT_FW
./Acceleration/library/icp_crypto/look_aside_crypto
./Acceleration/library/icp_crypto/look_aside_crypto/src
./Acceleration/library/icp_crypto/look_aside_crypto/src/common
./Acceleration/library/icp_crypto/look_aside_crypto/src/freebsd
./Acceleration/library/icp_crypto/look_aside_crypto/src/sample_code
./Acceleration/library/icp_crypto/look_aside_crypto/include
./Acceleration/library/icp_debugmgmt
./Embedded
./Embedded/src
./Embedded/src/patches
./Embedded/src/WDT
./Embedded/src/GCU
./Embedded/src/EDMA
./Embedded/src/CAN
./Embedded/src/GPIO
./Embedded/src/1588
./Embedded/src/GbE
./FreeBSDConfigFiles
./FreeBSDConfigFiles/left
./FreeBSDConfigFiles/right
./build_system
./build_system/build_files

Intel® EP80579 Software for Security Applications on Intel® QuickAssist Technology for FreeBSD*
September 2009 GSG
Order Number: 320703-003US 9
EP80579 Security Software—Configuration Requirements

2.0 Configuration Requirements

2.1 Development Board Configuration


The Intel® EP80579 Integrated Processor with Intel® QuickAssist Technology
Development Kit User’s Guide contains complete details on the development board. The
document describes the design, structure, and function of all development board
features.

To facilitate quick start of the Software for Intel® EP80579 Integrated Processor
product line, relevant sections from the development kit User’s Guide have been
included in this chapter. Please follow the directions in Section 1.2.1 to access the full
User’s Guide.

2.1.1 Package Components


The development kit includes the following:
• A development board containing the Intel® EP80579 Integrated Processor with
Intel® QuickAssist Technology
• ATX12V power supply
• One DDR2-800 DIMM
• PCIe* graphics card
• SATA hard drive with cable
• SATA DVD-ROM with cable
• Two Controller Area Network cable connectors
• Power Cord (USA power cord supplied)

The following items are required, but not supplied by Intel:


• Mouse
• Keyboard
• Monitor
• Power Cord (if country or region-specific power cord is required)

Note: Additional items may be required but are not supplied by Intel.

2.1.2 Development Kit Setup


Ensure that all components listed in Section 2.1.1 arrive together. Once all components
have been identified and located, installation and setup can begin. This section
describes how to set up the development board for operation.

Note: This document assumes that the user is familiar with the basic concepts required to
install and configure hardware for a PC system.

Intel® EP80579 Software for Security Applications on Intel® QuickAssist Technology for FreeBSD*
GSG September 2009
10 Order Number: 320703-003US
Configuration Requirements—EP80579 integrated processor with QuickAssist

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
when 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. The development board is susceptible to electrostatic
discharge that may cause failure or unpredictable operation. The development board
must be operated on a flame-retardant surface because a chassis is not included with
the board.

Caution: Connecting the wrong cable or reversing a cable may damage the board and may
damage the device being connected. Since the board is not in a protective chassis, use
caution when connecting cables to the board.

Caution: The power supply cord provides the main connection to AC power. The socket outlet
should be installed near the equipment and should be readily accessible. To avoid
shock, ensure that the power cord is connected to a properly-wired and grounded
receptacle. Do not connect/disconnect any cables or perform installation/maintenance
of the boards in this product during an electrical storm. Ensure that any equipment to
which this product will be attached is also connected to properly-wired and grounded
receptacles.

Note: Ensure that the step to set up the ATX power supply is the final step performed in the
process of assembly.

2.1.4 Connecting the Serial ATA Hard Drive and Cable


The development board provides two Serial ATA (SATA) connectors. Connect cables to
the appropriate drive sequentially, starting from Port 0 to Port 1. See Figure 1 and
Table 1 for the location and identification of the SATA connectors.

Note: Intel recommends connecting the boot drive to SATA port 0.

2.1.5 Connecting the Keyboard and Mouse


Connect a PS/2 mouse and keyboard to the stacked PS/2 connector on the rear panel
of the board. The bottom connector is the keyboard connector and the top connector is
the mouse connector. Alternatively, a USB keyboard and a USB mouse can be
connected to the USB connectors on the development board.

Note: The mouse and keyboard are not supplied by Intel.

Note: The serial redirection feature can be enabled to remotely access the board through a
serial cable without attaching a keyboard or mouse to the development board. Refer to
the “Connecting the Serial Cable for Console Redirection” section of the Intel® EP80579
Integrated Processor with Intel® QuickAssist Technology Development Kit User’s Guide
for more information.

2.1.6 Connecting the PCI Express* Video Card


Populate the PCIe* graphics card in any one of the PCIe slots.

Intel® EP80579 Software for Security Applications on Intel® QuickAssist Technology for FreeBSD*
September 2009 GSG
Order Number: 320703-003US 11
EP80579 Security Software—Configuration Requirements

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 1 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. Plug the main connector into the board. Ensure that the plug clip lines up with the
clip lock and the connector pins easily fit into their appropriate slots. When using a
power supply with a 2 x 10 main power cable, attach that cable to the right-most
part of the main power connector, leaving pins 11, 12, 23 and 24 (labeled on the
board) unconnected.
3. Plug in the power connectors from each of the SATA drives.

2.1.9 Powering Up the System


Warning: Ensure the steps in the previous sections were strictly followed before powering up the
system.

Use the following procedure to power up the development board:


1. Ensure that the processor heat sink and the fan are installed according to the
procedure in the “Connecting the Processor Heatsink and Fan” section of the Intel®
EP80579 Integrated Processor with Intel® QuickAssist Technology Development Kit
User’s Guide.
2. Leaving the On/Off switch in the OFF position, connect the power cable into the
back of the power supply.
3. Once the board is set up, plug the cord into the power source.
4. Switch on the power supply.
5. Press the power-on button to start the system. Refer to Figure 1 for the location of
the power-on button (item I, lower-left).

Note: Table 1 is a legend for key items labeled in Figure 1, Figure 2 and Figure 3.

Intel® EP80579 Software for Security Applications on Intel® QuickAssist Technology for FreeBSD*
GSG September 2009
12 Order Number: 320703-003US
Configuration Requirements—EP80579 integrated processor with QuickAssist

Figure 1. Development Board - Top View of Component and Connector Locations

Y X
DD CC BB AA C G F

O
R
S
D

GG

I W
U M J V K EE T II P A E FF HH

B6607-02

Intel® EP80579 Software for Security Applications on Intel® QuickAssist Technology for FreeBSD*
September 2009 GSG
Order Number: 320703-003US 13
EP80579 Security Software—Configuration Requirements

Figure 2. Development Board - Bottom View of Component and Connector Locations

KK JJ
B 6606- 03

Intel® EP80579 Software for Security Applications on Intel® QuickAssist Technology for FreeBSD*
GSG September 2009
14 Order Number: 320703-003US
Configuration Requirements—EP80579 integrated processor with QuickAssist

Figure 3. Development Board - Side View of the Board Connectors

RR TT MM

QQ SS UU PP NN OO

B6605-01

Table 1. Development Board - Key Components and Connectors Legend (Sheet 1 of 2)


Callout Component/Connector

Intel EP80579 Integrated Processor with Intel®


®
A
QuickAssist Technology

B PEX PCIe Switch Chip

C Marvell* 88ME1141 Quad PHY

D Super IO Controller

E FPGA

F Flash memory 0

G Flash memory 1

H FWH

I Power button

J Reset button

K Sleep button

L PCIe Wake button

M Port 80 IC

N CMOS battery

O On-board speaker

P CPU FAN connector

Q AUX FAN connector

R AUX0 FAN connector

S AUX1 FAN connector

T ATX power connector

U Two 7-segment display (Port 80)

Intel® EP80579 Software for Security Applications on Intel® QuickAssist Technology for FreeBSD*
September 2009 GSG
Order Number: 320703-003US 15
EP80579 Security Software—Configuration Requirements

Table 1. Development Board - Key Components and Connectors Legend (Sheet 2 of 2)


Callout Component/Connector

V SATA port 0

W SATA port 1

X DDR2 DIMM0

Y DDR2 DIMM1

Z Slot 0 x8 connector 4 lanes PCI Express

AA Slot 1 x4 connector 1 lane PCI Express

BB Slot 2 x4 connector 1 lane PCI Express

CC Slot 3 x4 connector 1 lane PCI Express

DD Slot 4 x4 connector 1 lane PCI Express

EE Mezzanine connector 1

FF Mezzanine connector 0

GG Floppy Connector

HH CF connector

II ITP-XDP connector

JJ Trusted Platform Module

KK Mezzanine connector 2

MM Parallel port

NN COM1

OO COM2

PP PS/2 mouse (top)/keyboard (bottom)

QQ USB port 0

RR USB port 1

SS RJ-45 Ethernet port 0

TT RJ-45 Ethernet port 1

UU RJ-45 Ethernet port 2

Intel® EP80579 Software for Security Applications on Intel® QuickAssist Technology for FreeBSD*
GSG September 2009
16 Order Number: 320703-003US
Configuration Requirements—EP80579 integrated processor with QuickAssist

2.2 Development Board Setup Requirements


Figure 4 shows the system setup when the target development board is also used for
build and install.

Figure 4. Development Board System Setup

Intel® EP80579 Software for Security Applications on Intel® QuickAssist Technology for FreeBSD*
September 2009 GSG
Order Number: 320703-003US 17
EP80579 Security Software—Installing the OS on a Development Board

3.0 Installing the OS on a Development Board

Installing the OS on a development board involves the installation of FreeBSD* from


the CDs and the rebuilding of the kernel and module files after patching the kernel for
the following:
• Built-in PCI device recognition

3.1 System Requirements


Please consult the FreeBSD minimum hardware requirements in the online
documentation at http://www.freebsd.org/releases/7.1R. The development board
meets these requirements.

Execute the following three steps:


• Get the latest BIOS image and install it as described in Section 8.2.1, “Aptio Flash
Update Utility (AFUEFI)” on page 40
• Set the Legacy or AHCI SATA mode as described in Section 8.1.5, “Legacy and
AHCI SATA Mode” on page 39
• Allocate the Coherent and Non-Coherent Memory as described in Section 8.1.4,
“Coherent and Non-Coherent Memory Allocation” on page 39

Note: The SATA mode (Legacy or AHCI) cannot be changed after OS installation.

3.2 Acquiring FreeBSD 7.1


FreeBSD* download software can be acquired from ftp://ftp-archive.freebsd.org/pub/
FreeBSD-Archive/old-releases/i386/ISO-IMAGES/7.1.

For complete installation instructions and the FreeBSD 7.1 release Readme document,
please refer to FreeBSD’s web site at the following locations:
• ftp://ftp-archive.freebsd.org/pub/FreeBSD-Archive/old-releases/i386/7.1-RELEASE

3.3 Installing FreeBSD


The following are the instructions that Intel has used to install FreeBSD on the
development board.
1. Prepare the system to boot from CDROM by using the boot selections in the BIOS
Setup Menu. Details of the BIOS setup options are available in Section 8.0, “Pre-
Boot Firmware (BIOS)” on page 37.
2. Power on the system with FreeBSD 7.1 disc #1 in the CDROM. The system should
begin to boot from the FreeBSD installation disc #1.
3. The user is shown a list of Boot options. Select: 1 - Boot FreeBSD [default]
4. Select the appropriate Country from the next list.

Intel® EP80579 Software for Security Applications on Intel® QuickAssist Technology for FreeBSD*
GSG September 2009
18 Order Number: 320703-003US
Installing the OS on a Development Board—EP80579 integrated processor with QuickAssist

5. The user is shown a list of options for software installation. Select: “Standard -
Begin a Standard installation (recommended)”.
6. In the next few screens, the user will be asked to create a DOS-Style partition on
the disk. There may be warnings about geometry being incorrect; however, these
error messages can be ignored. Select: “A = Use Entire Disk”; and then confirm by
selecting: Q = Finish.
7. Next install a Boot Manager. Select: “Standard - Install a standard MBR (no boot
manager)”.
8. Create default sized BSD partitions inside the fdisk partition, created in a previous
step. Select: A = Auto Defaults; and then confirm by selecting: Q = Finish.
9. Choose the distribution to use. Select: “4 Developer -- Full sources, binaries and
doc but no games”.
10. Answer [Yes] to the question: Would you like to install the FreeBSD ports
collection?
11. Note the user is taken to the previous screen showing the various distributions.
Distribution was selected in previous step so select: Exit - Exit this menu (returning
to previous menu) to continue the installation.
12. Identify the installation media. Select: “1 CD/DVD - Install from a FreeBSD CD/
DVD”.
13. The system warns you of loss of data in the disk. To continue with the installation,
select “Yes”. File systems are created and files copied. This step will take a few
minutes to complete and display a Congratulations message at the end.
14. Do not configure any Ethernet devices or SLIP/PPP network devices.
15. Configure the machine to function as a Network Gateway.
16. 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.
17. Enable the SSH login.
18. Do not ask for Anonymous FTP access to your machine.
19. Do not configure the machine as a NFS server.
20. Do not configure the machine as a NFS client.
21. Do not customize the system console settings.
22. In the next few screens, the machines time zone is set. Carefully select Yes and No
to these questions. Some are counter intuitive and install does not give the ability
go back and correct.
23. Do not select Linux binary compatibility.
24. In the next few screens the Mouse can be configured. When finished, exit and go
back to previous screen to continue.
25. The system informs you of the availability of ready-to-run applications. Select YES
to select applications from the following:
a. Select all items under: devel - Software development utilities and libraries
b. Select preferred editors under: editors - Common text editors
c. Select: ftp - ftp client and server utilities
d. Select Perl5 scripting tool under: perl5
e. Select bash shell under: shells
Note: Numerous additional entries are selected as dependents of above choices.
26. Select Install. This will install the packages selected in the previous step.

Intel® EP80579 Software for Security Applications on Intel® QuickAssist Technology for FreeBSD*
September 2009 GSG
Order Number: 320703-003US 19
EP80579 Security Software—Installing the OS on a Development Board

27. Add a user account if required. Set the root password.


28. Install will give an opportunity to set any last options. Select and set any options
may have missed.
29. Select “Exit Install” to complete the installation.
30. At this point system will reboot. If the BIOS Boot Priority Option is set to select the
Hard Disk in the absence of CD ROM, then the installed FreeBSD image will start
and display the login prompt. Login using the root or user password.

Intel® EP80579 Software for Security Applications on Intel® QuickAssist Technology for FreeBSD*
GSG September 2009
20 Order Number: 320703-003US
Rebuilding FreeBSD Kernel—EP80579 integrated processor with QuickAssist

4.0 Rebuilding FreeBSD Kernel

4.1 Build Environment Requirements


FreeBSD 7.1 includes GCC 4.2.1. Refer to the FreeBSD 7.1 Release Notes for a list of
contributed software. The FreeBSD 7.1 Release Notes for the i386 release can be found
at the following location:

ftp://ftp-archive.freebsd.org/pub/FreeBSD-Archive/old-releases/i386/7.1-RELEASE

4.2 Unpacking EP80579 FreeBSD Security Package


The EP80579 security software package comes in the form of a tarball. See Section
1.2.1, “Where to Find Current Software and Documentation” on page 6 for the software
location. The package can be unpacked at any location on the system, but for the
purposes of this Getting Started Guide, a recommendation is provided.

# mkdir /EP805XX_release
# cd /EP805XX_release
# setenv ICP_ROOT $PWD

Transfer the gzip file to the EP80579 target system using any preferred method, for
example, a USB flash drive, CDROM or network transfer. Unpack the tarball in the
$ICP_ROOT directory using the following commands:

Tip: To mount a USB memory stick, issue the following commands:


# mkdir /mnt/usb (Skip this command if directory exists)
# mount -t msdosfs /dev/da0s1 /mnt/usb

Note: Without the option ‘m’ in the following tar command, the build might get into an infinite
loop if the Date is set incorrectly.

# cd $ICP_ROOT
# tar -xmvzf Security.B.1.0.3-xxx.tar.gz

A new directory structure is created under the $ICP_ROOT directory that contains all
EP80579 security software for FreeBSD. See Section 1.5.3, “Package Release
Structure” on page 9 for details of the directory structure of the software release.

Note: The Makefiles in FreeBSD are called BSDMakefile.

4.3 Patching the Kernel for PCI Device Recognition


Execute the following commands to patch the FreeBSD kernel:

# cd $ICP_ROOT

Intel® EP80579 Software for Security Applications on Intel® QuickAssist Technology for FreeBSD*
September 2009 GSG
Order Number: 320703-003US 21
EP80579 Security Software—Rebuilding FreeBSD Kernel

# cd ./Embedded/src/patches
# patch -p0 < Intel_EP80579_FreeBSD_71.patch

Upon patch application, review the output. The output should contain text similar to:
Hunk #1 succeeded at 64...

This indicates that this part of the patch was applied successfully.

The following patch must be applied to ensure the correct device strings are returned
by the pciconf utility. Copy the pci_vendors.patch to the /usr/share/misc directory. The
patch file can be found in the $ICP_ROOT/Embedded/src/patches directory. Apply the
patch to the pci_vendors.patch file using the following commands:

# cp pci_vendors.patch /usr/share/misc
# cd /usr/share/misc
# patch -p0 < pci_vendors.patch

Upon patch application, review the output. The output should contain text similar to:
Hunk #1 succeeded at 9268...

This indicates that the patch was applied successfully.

4.4 Rebuilding the FreeBSD Kernel


Complete instructions on building and installing the FreeBSD kernel are available at the
following location:

http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/kernelconfig-
building.html

Build and install the kernel by executing the following commands:

# cd /usr/src
# make clean
# make buildkernel KERNCONF=GENERIC
# make installkernel KERNCONF=GENERIC

4.5 Configure Loader Configuration File


In order to memory map CDRAM and NCDRAM it is necessary to set the parameter:
hw.physmem. Edit the file /boot/loader.conf and add the following line:

hw.physmem=672M
Note: The contents of this file may initially be empty.

4.6 Rebooting and Verifying


Rebooting the system will bring the system up with the newly compiled kernel.

Execute the following command to ensure that the correct kernel has been loaded;
# uname -r

Intel® EP80579 Software for Security Applications on Intel® QuickAssist Technology for FreeBSD*
GSG September 2009
22 Order Number: 320703-003US
Rebuilding FreeBSD Kernel—EP80579 integrated processor with QuickAssist

The output should look like:

7.1-RELEASE

Intel® EP80579 Software for Security Applications on Intel® QuickAssist Technology for FreeBSD*
September 2009 GSG
Order Number: 320703-003US 23
EP80579 Security Software—Building EP80579 Security Software on a Target Development
Board

5.0 Building EP80579 Security Software on a Target


Development Board

This chapter provides instructions for unpacking the EP80579 security software
package, setting up the environment and building/compilation instructions.

Note: System commands given in this chapter assume that the user is issuing commands
from a bash shell. This is the default shell. Use the “echo $0” command to verify use of
the bash shell or run “/bin/bash” to switch to the bash shell.

5.1 Environment Setup


After unpacking the release package (as described in Section 4.2), issue the following
commands to restore the environment variables:

Note: All environment variables set for kernel rebuild are lost when the system was rebooted.

Note: As per the instruction in the previous chapters, the sources are untarred at ICP_ROOT.

# setenv ICP_ROOT /EP805XX_release

Follow the instructions in the man page for the date command to set the current date.
For example, this command sets the date to November 5th, 2008, 15:23AM.

# date 200811051523

5.2 Build Options


Section 5.3, “Build Using Top Level Make” on page 24 describes the instructions for
building Security and Embedded components together.

5.3 Build Using Top Level Make


It is required to set an ICP_BUILD_OUTPUT environment variable that defines where
built objects are copied and where the sample load scripts can find the built objects.

For example, to store the resulting files in a directory called $ICP_ROOT/StagingArea,


use the following commands:

# mkdir $ICP_ROOT/StagingArea
# setenv ICP_BUILD_OUTPUT $ICP_ROOT/StagingArea

Caution: Please make sure that the current date has been set, otherwise the make process
might go into an endless loop.

The following commands build the EP80579 security software and EP80579 embedded
software drivers:

Intel® EP80579 Software for Security Applications on Intel® QuickAssist Technology for FreeBSD*
GSG September 2009
24 Order Number: 320703-003US
Building EP80579 Security Software on a Target Development Board—EP80579 integrated
processor with QuickAssist

# cd $ICP_ROOT
# make clean
# make

Table 2. Output Files Created in the $ICP_BUILD_OUTPUT Directory


File Name Description

*.ko Kernel modules or ASU microcode files

icp_asd.conf Installed in /etc and is the configuration file used by ASD

User space utility that downloads the /etc/icp_asd.conf file to ASD during
asd_ctl
initialization

Proprietary debug command to get software version information and data


debugmgr
dump

install_security_freeBSD.sh Installation scripts

qat_service_freeBSD Shell script used to Start and Stop kernel modules

5.4 Installation of Build Output


Execute the following command to install the Embedded and Accelerated kernel
modules:

# make install

Besides copying the kernel modules to a sub-directory under /boot/modules, a startup


script is added in the /etc/rc.d directory to make the accelerated kernel modules
persistent (that is, they are available for use after a system reset). The kernel modules
are loaded to enable EP80579 embedded software drivers and EP80579 security
software.

5.4.1 Statistics Collection


The Cryptographic API supports statistics retrieval and display for the individual
symmetric and asymmetric components. Statistic collection requires the use of atomic
operations which are expensive, therefore disabling this functionality results in
significant performance gains.

Configuration is performed by setting kernel environmental variables prior to loading


the icp_crypto kernel module. As such, the module must be unloaded and then re-
loaded for these changes to take effect. Before unloading the icp_crypto module, other
security modules must be unloaded. The modules can be unloaded using the following
instructions:

# kldunload icp_asd.ko
# kldunload icp_crypto.ko
# kldunload mmp_firmware.ko
# kldunload uof_firmware.ko

See Section 5.4.1.4 for instructions on loading the modules again.

5.4.1.1 Enable/Disable All Statistics Collection


By default, all statistics collection is enabled when icp_crypto module is loaded. The
parameter icp_crypto.statistics.master can be used to enable or disable all statistics
collection. Use kenv to set this value.

Intel® EP80579 Software for Security Applications on Intel® QuickAssist Technology for FreeBSD*
September 2009 GSG
Order Number: 320703-003US 25
EP80579 Security Software—Building EP80579 Security Software on a Target Development
Board

To enable statistics collection:


# kldunload icp_crypto.ko
# kenv icp_crypto.statistics.master=all
# kldload icp_crypto.ko

When these commands are issued, the module will load with all statistic collection
enabled. This is the default setting, so unless this parameter has been altered, it is not
necessary to set icp_crypto.statistics.master as shown here. The real value of this
parameter is observed when used in conjunction with disabling specific statistics
gathering as discussed in Section 5.4.1.2.

To disable all statistics collection:

# kldunload icp_crypto.ko
# kenv icp_crypto.statistics.master=none
# kldload icp_crypto.ko

When these commands are issued, the module will load with all statistics collection
disabled. All individual statistics settings discussed in Section 5.4.1.2 are ignored when
this parameter is set to none.

5.4.1.2 Disabling Individual Statistics Gathering


As mentioned previously, it is possible to control which statistics are collected. When
icp_crypto.statistics.master is set to all, all statistics are collected unless individually
disabled. The following statistics can be individually disabled:
• icp_crypto.statistics.dsa
• icp_crypto.statistics.dh
• icp_crypto.statistics.ln
• icp_crypto.statistics.prime
• icp_crypto.statistics.rsa
• icp_crypto.statistics.key
• icp_crypto.statistics.cb
• icp_crypto.statistics.alg_chain
• icp_crypto.statistics.random
• icp_crypto.statistics.msgs

To disable specific statistics, set the kernel environmental variable value to off before
loading the icp_crypto module. For example, the following commands will enable all
statistics gathering except for the dsa module:
# kldunload icp_crypto.ko
# kenv icp_crypto.statistics.master=all
# kenv icp_crypto.statistics.dsa=off
# kldload icp_crypto.ko

5.4.1.3 Verbose Output


The parameter icp_crypto.verbose can be turned on (1) to display the selected
statistics gathering options. Remember if icp_crypto.statistics.master is set to all, then
all statistics are enabled, unless otherwise noted under the individual statistics
settings. When the icp_crypto kernel module is loaded, the statistics logging options
selected will be displayed.

Intel® EP80579 Software for Security Applications on Intel® QuickAssist Technology for FreeBSD*
GSG September 2009
26 Order Number: 320703-003US
Building EP80579 Security Software on a Target Development Board—EP80579 integrated
processor with QuickAssist

# kldunload icp_crypto.ko
# kenv icp_crypto.statistics.master=all
# kenv icp_crypto.verbose=1
# kenv icp_crypto.statistics.dsa=off
# kldload icp_crypto.ko
Loading DCC Kernel Module ...
QATAL Driver Module Loaded.
Loading LAC Module ...
statistics_master = all --> All statistics ON
Collecting statistics:
statistics.master = all
statistics.dsa = off
statistics.dh = on
statistics.ln = on
statistics.prime = on
statistics.rsa = on
statistics.key = on
statistics.cb = on
statistics.alg_chain = on
statistics.random = on
statistics.msgs = on

5.4.1.4 Reloading Security Modules


After updating the statistics gathering options of the icp_crypto kernel module, it is
necessary to re-load the other security modules. This can be accomplished by
performing the following steps:

# kldload mmp_firmware.ko
# kldload uof_firmware.ko
# kldload icp_crypto
# kldload icp_asd
# /bin/asd_ctl

5.5 Uninstalling Embedded and Security Kernel Modules


The following uninstall option is available to unload the kernel modules and uninstall
the kernel modules from the relevant /lib sub-directory:

# make uninstall

The user can load and unload the kernel modules without deleting them from the /lib
sub-directory, using the command:
# /etc/rc.d/qat_service_freeBSD stop

Intel® EP80579 Software for Security Applications on Intel® QuickAssist Technology for FreeBSD*
September 2009 GSG
Order Number: 320703-003US 27
EP80579 Security Software—Building, Installing and Loading Individual EP80579 Embedded
Software Drivers

6.0 Building, Installing and Loading Individual


EP80579 Embedded Software Drivers

Before building and loading EP80579 embedded software drivers, define the following
environment variable:
# setenv ICP_ROOT /EP805XX_release

6.1 Controller Area Network (CAN) Driver

6.1.1 FreeBSD Compilation Instructions


All source files for the FreeBSD* release of the Controller Area Network (CAN) driver
are located in the following directory within the FreeBSD compatible EP80579
embedded software drivers release:

$ICP_ROOT/Embedded/src/CAN

Compilation of the FreeBSD CAN driver separately from the rest of the software
package is possible. Change to the $ICP_ROOT/Embedded/src/CAN directory and
execute the following commands:

# make clean
# make
# make install (this will install the driver for persistency)

The CAN driver compiles and the resulting can.ko file is placed in the
$ICP_ROOT/Embedded/src/CAN directory. When “make install” is invoked, can.ko is
placed in the /boot/modules directory.

6.1.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 CAN driver, execute the following command from the directory
where the compiled executable resides:

# kldload ./can.ko

To unload the FreeBSD CAN driver, execute the following command:

# kldunload can.ko

The kldstat command may be used to confirm if a module has been loaded or
unloaded.

# kldstat | grep can

The output of the kldstat command lists all modules loaded in the system. Look for an
entry titled “can”.

Intel® EP80579 Software for Security Applications on Intel® QuickAssist Technology for FreeBSD*
GSG September 2009
28 Order Number: 320703-003US
Building, Installing and Loading Individual EP80579 Embedded Software Drivers—EP80579
integrated processor with QuickAssist

6.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. Run the codelet as follows:
1. Login as root. Root permissions are required for all operations.
2. Open a terminal window, change directory to $ICP_ROOT/Embedded/codelet/CAN
and execute the script. Do not move the script to another location.

# ./install.csh

The script checks for the Controller Area Network driver and client drivers, runs all
of the makefiles in the correct order, loads the client driver, and runs the
application. The application output can be viewed in the terminal window.
3. Client driver output can be viewed in a second terminal window by printing /var/
log/messages as follows:

# tail -f /var/log/messages
4. For information about the CAN codelet, refer to the Readme document located at
$ICP_ROOT/Embedded/codelet/CAN.

6.2 Enhanced Direct Memory Access (EDMA) Driver

6.2.1 FreeBSD Compilation Instructions


All source files for the FreeBSD release of the Enhanced Direct Memory Access (EDMA)
driver are located in the following directory within the FreeBSD compatible EP80579
embedded software drivers release:

$ICP_ROOT/Embedded/src/EDMA

Compilation of the FreeBSD EDMA driver separately from the rest of the software
package is possible. Change to the $ICP_ROOT/Embedded/src/EDMA directory and
execute the following commands:

# make clean
# make
# make install (this will install the driver for persistency)

The EDMA driver compiles and the resulting dma.ko file is placed in the
$ICP_ROOT/Embedded/src/EDMA directory. When “make install” is invoked, dma.ko is
placed in the /boot/modules directory.

6.2.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 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

Intel® EP80579 Software for Security Applications on Intel® QuickAssist Technology for FreeBSD*
September 2009 GSG
Order Number: 320703-003US 29
EP80579 Security Software—Building, Installing and Loading Individual EP80579 Embedded
Software Drivers

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”.

6.2.3 FreeBSD Sample Codelet


A codelet is provided to demonstrate how a sample application interfaces with the
EDMA 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. Run the codelet as follows:
1. Log in as root. Root privileges are required for some of the operations.
2. Open a terminal window, change directory to $ICP_ROOT/Embedded/codelet/EDMA
and execute the following script. Do not move the script to another location.

# ./install.csh

The script checks for the EDMA and client drivers, runs all of the makefiles in the
correct order, loads the client driver, and runs the application. The application and
client driver output can be viewed in the terminal window.
3. For information about the EDMA codelet, refer to the Readme document located at
$ICP_ROOT/Embedded/codelet/EDMA.

6.3 Watchdog Timer (WDT) Driver

6.3.1 FreeBSD Compilation Instructions


All source files for the FreeBSD release of the Watchdog Timer (WDT) driver are located
in the following directory within the FreeBSD compatible EP80579 embedded software
drivers release:

$ICP_ROOT/Embedded/src/WDT

Compilation of the FreeBSD WDT driver separately from the rest of the software
package is possible. Enter the $ICP_ROOT/Embedded/src/WDT directory and execute
the following commands:

# make clean
# make
# make install (this will install the driver for persistency)

The WDT driver compiles and the resulting iwdt.ko file is placed in the
$ICP_ROOT/Embedded/src/WDT directory. When “make install” is invoked, iwdt.ko is
placed in the /boot/modules directory.

6.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

Intel® EP80579 Software for Security Applications on Intel® QuickAssist Technology for FreeBSD*
GSG September 2009
30 Order Number: 320703-003US
Building, Installing and Loading Individual EP80579 Embedded Software Drivers—EP80579
integrated processor with QuickAssist

To unload the FreeBSD Watchdog Timer driver, execute the following command:

# kldunload iwdt.ko

The kldstat command may be used to confirm if a module has been loaded or
unloaded:

# kldstat | grep iwdt

The output of the kldstat command lists all modules loaded in the system. Look for an
entry titled “iwdt”.

6.3.3 FreeBSD Sample Codelet


A codelet is provided to demonstrate how a sample application interfaces with the
Watchdog Timer 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. Run the codelet as follows:
1. Login as root. Root permissions are required for all operations.
2. Open a terminal window, change directory to $ICP_ROOT/Embedded/codelet/WDT
and execute the script. Do not move the script to another location.

# ./install.csh

The script checks that the Watchdog Timer driver is loaded, runs all of the
makefiles in the correct order, and runs the application. The application output can
be viewed in the terminal window.
3. For information about the WDT codelet, refer to the Readme document located at
$ICP_ROOT/Embedded/codelet/WDT.

6.4 General Purpose I/O (GPIO) Driver

6.4.1 FreeBSD Compilation Instructions


All source files for the FreeBSD release of General Purpose I/O (GPIO) driver are
located in the following directory within the FreeBSD compatible EP80579 embedded
software drivers release:

$ICP_ROOT/Embedded/src/GPIO

Compilation of the FreeBSD GPIO driver separately from the rest of the software
package is possible. Enter the $ICP_ROOT/Embedded/src/GPIO directory and execute
the following commands:

# make clean
# make
# make install (this will install the driver for persistency)

The GPIO driver compiles and the resulting gpio.ko file is placed in the
$ICP_ROOT/Embedded/src/GPIO directory. When “make install” is invoked, gpio.ko is
placed in the /boot/modules directory.

6.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.

Intel® EP80579 Software for Security Applications on Intel® QuickAssist Technology for FreeBSD*
September 2009 GSG
Order Number: 320703-003US 31
EP80579 Security Software—Building, Installing and Loading Individual EP80579 Embedded
Software Drivers

To load the FreeBSD General Purpose I/O driver, execute the following command from
the directory where the compiled executable resides:

# kldload ./gpio.ko

To unload the FreeBSD General Purpose I/O driver, execute the following command:

# kldunload gpio.ko

The kldstat command may be used to confirm if a module has been loaded or
unloaded:

# kldstat | grep gpio

The output of the kldstat command lists all modules loaded in the system. Look for an
entry titled “gpio”.

6.5 IEEE 1588 Hardware Assist Driver

6.5.1 FreeBSD Compilation Instructions


All source files for the FreeBSD release of IEEE 1588 Hardware Assist driver are located
in the following directory within the FreeBSD compatible EP80579 embedded software
drivers release:

$ICP_ROOT/Embedded/src/1588

Compilation of the FreeBSD IEEE 1588 driver separately from the rest of the software
package is possible. Enter the $ICP_ROOT/Embedded/src/1588 directory and execute
the following commands:

# make clean
# make
# make install (this will install the driver for persistency)

The IEEE 1588 Hardware Assist driver compiles and the resulting timesync.ko file is
placed in the $ICP_ROOT/Embedded/src/1588 directory. When “make install” is
invoked, timesync.ko is placed in the /boot/modules directory.

6.5.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 IEEE 1588 Hardware Assist driver, execute the following command
from the directory where the compiled executable resides:

# kldload ./timesync.ko

To unload the FreeBSD IEEE 1588 Hardware Assist driver, execute the following
command:

# 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”.

Intel® EP80579 Software for Security Applications on Intel® QuickAssist Technology for FreeBSD*
GSG September 2009
32 Order Number: 320703-003US
Building, Installing and Loading Individual EP80579 Embedded Software Drivers—EP80579
integrated processor with QuickAssist

6.5.3 FreeBSD Sample Codelet


A codelet is provided to demonstrate how a sample application interfaces with the IEEE
1588 Hardware Assist 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. Run the codelet as follows:
1. Login as root. Root permissions are required for all operations.
2. Open a terminal window, change directory to $ICP_ROOT/Embedded/codelet/1588
and execute the script. Do not move the script to another location.

# ./install.csh

The script checks for the IEEE 1588 Hardware Assist driver and client drivers, runs
all of the makefiles in the correct order, loads the client driver, and runs the
application. The application output can be viewed in the terminal window.
3. Client driver output can be viewed in a second terminal window by printing /var/
log/messages as follows:

# tail -f /var/log/messages
4. For information about the 1588 codelet, refer to the Readme document located at
$ICP_ROOT/Embedded/codelet/1588.

6.6 Global Configuration Unit and Gigabit Ethernet Drivers


Two drivers are required for enabling network connectivity on the Gigabit Ethernet
controllers in the EP80579: the Global Configuration Unit (GCU) driver and the Gigabit
Ethernet (GbE) driver. The GCU driver controls the MAC and administrative activities.
The GbE driver controls the network connectivity. The GbE driver is dependent on the
GCU driver.

Note: The Global Configuration Unit driver must be installed prior to installation of the Gigabit
Ethernet driver.

6.6.1 FreeBSD Compilation Instructions


All source files for the FreeBSD release of the EP80579 Global Configuration Unit driver
and Gigabit Ethernet driver are located in the following directories within the FreeBSD
compatible EP80579 embedded software drivers release:

$ICP_ROOT/Embedded/src/GCU
$ICP_ROOT/Embedded/src/GbE

Compilation of the FreeBSD GCU and GbE drivers separately from the rest of the
software package is possible. Enter the $ICP_ROOT/Embedded/src/GbE and
$ICP_ROOT/Embedded/src/GCU directory and execute the following commands:

# cd $ICP_ROOT/Embedded/src/GCU
# make clean
# make
# make install (this will install the GCU driver for persistency)
# cd $ICP_ROOT/Embedded/src/GbE
# make clean
# make
# make install (this will install the GbE driver for persistency)

Intel® EP80579 Software for Security Applications on Intel® QuickAssist Technology for FreeBSD*
September 2009 GSG
Order Number: 320703-003US 33
EP80579 Security Software—Building, Installing and Loading Individual EP80579 Embedded
Software Drivers

The Gigabit Ethernet driver compiles and the resulting iegbe.ko file is placed in the
$ICP_ROOT/Embedded/src/GbE directory. The GCU driver compiles and the resulting
gcu.ko file is placed in the $ICP_ROOT/Embedded/src/GCU directory. When “make
install” is invoked, iegbe.ko and gcu.ko are placed in the /boot/modules directory.

6.6.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 Gigabit Ethernet driver, execute the following commands from the
directory where the compiled executable resides:

# kldload ./gcu.ko
# kldload ./iegbe.ko

To unload the FreeBSD Gigabit Ethernet driver, execute the following commands (iegbe
driver must be unloaded before gcu driver can be unloaded):

# kldunload iegbe.ko
# kldunload gcu.ko

The kldstat command may be used to confirm if a module has been loaded or
unloaded:

# kldstat | grep iegbe


# kldstat | grep gcu

The output of the kldstat command lists all modules loaded in the system. Look for an
entry titled “iegbe” and “gcu”.

Configuration of the Gigabit Ethernet ports provided by the EP80579 integrated


processor is through the traditional FreeBSD network command, ifconfig. Please
consult the man pages for ifconfig for details.

6.7 System Management Bus (SMBus) Driver

6.7.1 FreeBSD Compilation Instructions


All source files for the SMBus FreeBSD support are available in the FreeBSD kernel’s
open source.

6.7.2 FreeBSD Module Load/Unload Instructions


Three drivers must be loaded to support SMBus:
• smb.ko
• smbus.ko
• ichsmb.ko

The smb.ko and smbus.ko drivers are installed using one command:

# kldload smb

The ichsmb.ko driver is installed using the following command:

# kldload ichsmb

These drivers can be unloaded using the following commands:

Intel® EP80579 Software for Security Applications on Intel® QuickAssist Technology for FreeBSD*
GSG September 2009
34 Order Number: 320703-003US
Building, Installing and Loading Individual EP80579 Embedded Software Drivers—EP80579
integrated processor with QuickAssist

# 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”.

Intel® EP80579 Software for Security Applications on Intel® QuickAssist Technology for FreeBSD*
September 2009 GSG
Order Number: 320703-003US 35
EP80579 Security Software—Sample Applications

7.0 Sample Applications

Sample applications are included with this software release that present examples of
how to use to cryptographic APIs. They can be found in the directory:
./Acceleration/library/icp_crypto/look_aside_crypto/src/sample_code

The directory structure is as follows:

./Acceleration/library/icp_crypto/look_aside_crypto/src/sample_code

.../functional

.../functional/asym

.../functional/asym/diffie_hellman_sample

.../functional/asym/prime_sample

.../functional/common (This folder is FreeBSD-specific. Others occur in both OSes.)

.../functional/include

.../functional/sym

.../functional/sym/alg_chaining_sample

.../functional/sym/cipher_sample

.../functional/sym/hash_sample

.../performance

For instructions on using the sample applications, refer to README.txt located in:
./Acceleration/library/icp_crypto/look_aside_crypto/src/sample_code

Intel® EP80579 Software for Security Applications on Intel® QuickAssist Technology for FreeBSD*
GSG September 2009
36 Order Number: 320703-003US
Pre-Boot Firmware (BIOS)—EP80579 integrated processor with QuickAssist

8.0 Pre-Boot Firmware (BIOS)

The pre-boot firmware is executed when the system is powered up or reset. It


initializes and configures system memory, devices and interfaces.

The pre-boot firmware is based on the AMI Aptio* 4.5 core and compliant to EFI v1.1.
The firmware is stored in the Firmware Hub (FWH) or Serial Peripheral Interface (SPI)
Flash; the FWH or SPI Flash can be updated using a flash utility tool that is provided.

The pre-boot firmware setup menu can be used to view and modify the system settings
for the development board. The setup menu is accessed by pressing the <Del> key
during pre-boot firmware boot up (before the operating system begins). The setup
menu bar is shown in Table 3.

8.1 Pre-Boot Firmware Setup Menu


Table 3 shows the pre-boot firmware setup main menu and provides a brief description
of each menu option. Table 4 shows the action keys that can be used when navigating
and selecting options from pre-boot firmware menus.

Table 3. Pre-Boot Firmware Setup Main Menu


Main Advanced Chipset Security Boot Exit

Displays
processor and
memory Saves or
Configures Setup
configuration Configures Selects boot discards
advanced passwords and
different major options and changes to
features and security
components configurations setup program
Setup for CMOS settings features
options
system date
and time

Table 4. Pre-Boot Firmware Setup Program Action Keys


Function Key Description

< or > Moves cursor left or right in the main menu

^ or v Moves cursor up or down to select sub-menu items

Enter Executes command or selects the submenu

F7 Discard changes

F8 Load the fail-safe default

F9 Load the optimal default configuration value for the current menu

F10 Save the current configuration and exit the setup menu

ESC Exit the setup menu

Intel® EP80579 Software for Security Applications on Intel® QuickAssist Technology for FreeBSD*
September 2009 GSG
Order Number: 320703-003US 37
EP80579 Security Software—Pre-Boot Firmware (BIOS)

8.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 development board pre-boot firmware, and the pre-boot firmware
redirects the video to the console terminal.

As an option, the development board can be operated without keyboard or video and
can run entirely via the remote serial console. This includes accessing the pre-boot
firmware setup menu.

Console redirection ends when operating system boot up begins. After boot up begins,
the operating system is responsible for continuing the redirection.

Note: The pre-boot firmware console redirection is text only. Graphical data, such as logos,
are not redirected.

Table 5 shows the default settings of the serial console redirection.

Table 5. Serial Console Redirection Default Settings


Parameter Default

Port Number COM 1

Baud Rate 115200

Data Bits 8

Parity None

Stop bits 1

Flow Control None

8.1.2 Changing the Boot Device


Use the following procedure to change the boot device:
1. Press the <Del> key during POST to enter the pre-boot firmware setup menu.
2. Use the arrow keys to navigate to the <BOOT> menu.
3. Move the cursor to <Boot Device Priority>.
4. Select the desired booting sequence list.

Note: Follow the instructions on the right side of the pre-boot firmware screen to navigate
and change pre-boot firmware settings.

8.1.3 Maximum Memory Speed Setup


The maximum memory speed supported on the development board can be selected
using the Maximum Memory Speed Setup option available in the BIOS Setup Menu on
the Chipset tab.

Enter the BIOS Setup Menu and select the Chipset tab. Select the North Bridge sub tab.
Navigate down to the bottom option, titled Max Memory Speed Support, and select this
option using the Enter button. A selection box appears providing the following options:
• 400 MHz
• 533 MHz
• 667 MHz
• 800 MHz

Intel® EP80579 Software for Security Applications on Intel® QuickAssist Technology for FreeBSD*
GSG September 2009
38 Order Number: 320703-003US
Pre-Boot Firmware (BIOS)—EP80579 integrated processor with QuickAssist

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.

8.1.4 Coherent and Non-Coherent Memory Allocation


The development board supports allocation of memory regions for coherent and non-
coherent use. For more information on these regions, refer to the Intel® EP80579
Integrated Processor Product Line Datasheet, Section 3.0.

Coherent and non-coherent memory use features are for development boards that use
the Intel® EP80579 Integrated Processor with Intel® QuickAssist Technology. EP80579
integrated processors without Intel® QuickAssist Technology do not make use of the
memory set aside for these features.

This software package requires the pre-boot firmware (BIOS) for your hardware to
allocate the values for each region.

To allocate memory regions, perform the following steps:


1. Enter the BIOS Setup Menu and select the Chipset tab.
2. Select North bridge, and navigate down towards the bottom to the Coherent Mem
Size option and press Enter to select this option. A dialog box is displayed
prompting the user to enter a value.
Type the numerical value “2000” and press Enter.
3. Navigate to the next option, Non-Coherent Mem Size, and press Enter to select this
option. A dialog box is displayed prompting the user to enter a value.
Type the numerical value “2000” and press Enter.

8.1.5 Legacy and AHCI SATA Mode


The development board supports hard drives in legacy SATA mode and in Advanced
Host Controller Interface (AHCI) mode. AHCI mode provides advanced capabilities and
improved performance, provided the hard drive supports the following features:
• Hot Plug
• Native Command Queuing
• Speeds up to 3 Gb/s

Refer to the Serial ATA Organization web site for more information:

http://www.serialata.org/

The development board pre-boot firmware (BIOS) can be configured in either Legacy or
AHCI mode as desired. The BIOS defaults to Legacy mode because not all hard drives
support AHCI. To toggle the BIOS to either Legacy or AHCI mode, proceed as follows:
1. Press the <Del> key during POST to enter the pre-boot firmware setup menu.
2. Use the arrow keys to navigate to the Advanced menu.
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.

Intel® EP80579 Software for Security Applications on Intel® QuickAssist Technology for FreeBSD*
September 2009 GSG
Order Number: 320703-003US 39
EP80579 Security Software—Pre-Boot Firmware (BIOS)

8. Press F4 to save.
9. Choose Yes. The system continues the boot process.

8.2 Pre-Boot Firmware Image Reflashing Instructions


One method is available for updating the pre-boot firmware flash images located on the
development board FWH or SPI Flash:
• AFUEFI Flash Recovery

It is possible that updated pre-boot firmware images will become available from Intel
for the Intel® EP80579 Integrated Processor with Intel® QuickAssist Technology
Development Board. The latest pre-boot firmware image is available from Intel’s public
web site, http://www.intel.com/go/soc located with all other collateral related to the
EP80579 integrated processor.

If the pre-boot firmware image should become corrupted on the board, also utilize
these instructions to reflash the image.

8.2.1 Aptio Flash Update Utility (AFUEFI)


Use the following instructions to update the development board pre-boot firmware
image using a USB flash drive and the Aptio Flash Update Utility from AMI.

Necessary hardware:
• development board
• Socketed Firmware Hub or SPI Flash
• USB flash drive

Necessary software:
• development board pre-boot firmware image
• Aptio Flash Update Utility from AMI - AFUEFI

Steps to reflash the image:


1. Execute the AFUEFI utility onto the USB flash drive.
2. Load the pre-boot firmware image onto the USB flash drive.
3. Change the boot setting in the BIOS Setup Selection to boot from the EFI shell.
Boot the development board to the EFI shell.
4. Insert the USB flash drive into the USB port.
5. Once the USB flash drive is recognized on the system (activity can be seen on the
USB flash drive LED if present), several commands are available as follows:
— Type “map -r” to list all devices available.
— Type “fs0:” to enter USB device.
— Type “ls” to list all files.
6. Once the “fs0:” command has been initiated, execute the AFUEFI utility. Enter:

AFUEFI <pre-boot firmware image name> /X /P /B /N

where the <pre-boot firmware image name> will be TRXTG063.ROM or similar


7. Reboot the development board when reflashing has completed.
8. Confirm that the image has been updated to the reflashed image by checking the
Flash Image identity in the BIOS Setup.

Intel® EP80579 Software for Security Applications on Intel® QuickAssist Technology for FreeBSD*
GSG September 2009
40 Order Number: 320703-003US
Uninstalling the Software—EP80579 integrated processor with QuickAssist

9.0 Uninstalling the Software

Please refer to instructions on loading and unloading individual modules in Chapter 6.0.

9.1 FreeBSD Modules/Driver Dependencies


Table 6 lists the dependencies for the driver modules or patch within the EP80579
Software package. OS installation is assumed.

Table 6. FreeBSD Module/Driver Dependencies


Module/Driver/Patch Dependency 1 Dependency 2

EP80579 FreeBSD Patch OS Source None

Controller Area Network (CAN) None -

Enhanced DMA (EDMA) None -

IEEE 1588 Hardware Assist (1588) None -

General Purpose IO (GPIO) None -

Gigabit Ethernet (GbE) GCU None

Global Configuration Unit (GCU) None -

SMBus (ichsmb) smb smbus

Watchdog Timer (WDT) None -

mmp_firmware.ko /boot/firmware.ko

uof_firmware.ko /boot/firmware.ko

icp_hal mmp_firmware.ko uof_firmware.ko

icp_debug icp_hal

icp_crypto icp_debug

icp_asd icp_crypto

Intel® EP80579 Software for Security Applications on Intel® QuickAssist Technology for FreeBSD*
September 2009 GSG
Order Number: 320703-003US 41
EP80579 Security Software—Troubleshooting

10.0 Troubleshooting

Refer to the Release Notes for your software package for a list of known errata,
implications, and workarounds.

Installing FreeBSD 7.1 on a hard drive which has been used before can cause an issue
during boot. The installation of the operating system will seem to succeed, however,
upon reboot after installation, the OS may hang at the boot loader. If using a hard drive
previously used, it is recommended you first reformat the hard drive.

Upon installation of FreeBSD 7.1, a warning message will be displayed about the
geometry of the disk drive. It is OK to accept the disk geometry that FreeBSD is
displaying.

10.1 Using a Graphics Card


Some LCD monitors do not function properly with the development board. In one case,
an “Input Not Supported” message was reported upon boot completion. Try an
alternative LCD monitor if video is not displayed.

10.2 Using the Serial Port


The user can bring up the system without using the Graphics card. In this case, the IO
takes place over the serial port. The serial port is configured as follows:
1. Enable communication over all serial ports in the BIOS setup. Configure ports to
115200, No Parity, 8 bit, 1 stop bit and No Flow Control.
2. Use a female-female 9-pin RS232 cable to connect the development board to a
terminal emulator application such as HyperTerminal* in Windows. Configure the
terminal emulator to 115200, No Parity, 8 bit, 1 stop bit and No Flow Control.
3. Edit the file /etc/ttys as follows:
— Locate entries: ttyd[0123] “/usr/libexec/getty std.9600” dialup off secure
— Change the above to: ttyd[0123] “/usr/libexec/getty std.115200” vt100 on
secure
4. Edit the file /boot/loader.conf and ensure it contains the following entries:
— comconsole_speed=”115200”
— boot_serial=”YES”
— boot_multicons=”YES”
— console=”comconsole”
5. Ensure that the file /boot/loader.rc contains the following entries:
— include /boot/loader.4th
— start

Intel® EP80579 Software for Security Applications on Intel® QuickAssist Technology for FreeBSD*
GSG September 2009
42 Order Number: 320703-003US
Troubleshooting—EP80579 integrated processor with QuickAssist

6. To enable communication over the serial port, use the command:

echo "-Dh" > /boot.config

7. Reboot for changes in /boot/loader.conf to take effect


8. Kill -HUP 1 to reread /etc/ttys by getty
Note: Changing from the default sio0 COM device (the one on the left when you
face the platform) is complex and requires editing of /etc/make.conf file
and rebuilding of bootloader and kernel.

Intel® EP80579 Software for Security Applications on Intel® QuickAssist Technology for FreeBSD*
September 2009 GSG
Order Number: 320703-003US 43
EP80579 Security Software—Glossary

11.0 Glossary

AHCI Advanced Host Controller Interface


ASD Acceleration System Driver
ASU Acceleration Services Unit
CAN Controller Area Network
CDRAM Coherent DRAM
DIMM Dual Inline Memory Module
EDMA Enhanced Direct Memory Access
EFI Extensible Firmware Interface
FWH Firmware Hub
GbE Gigabit Ethernet
GCU Global Configuration Unit
GPIO General Purpose Input Output
IEEE Institute of Electrical and Electronics Engineers
IHS Integrated Heat Spreader
NCDRAM Non-Coherent DRAM
POST Power On Self Test
RNG Random Number Generator
SATA Serial Advanced Technology Attachment
SKU Stock Keeping Unit
SMBus System Management Bus
TIM Thermal Interface Material
WDT Watchdog Timer

§§

Intel® EP80579 Software for Security Applications on Intel® QuickAssist Technology for FreeBSD*
GSG September 2009
44 Order Number: 320703-003US

You might also like