2 building the interface modules, Table 31. vxworks interface module variables, 3 bsp integration – Freescale Semiconductor SEC2SWUG User Manual

Page 41: 8 porting, Section 8, “porting, Porting, 8porting

Advertising
background image

SEC 2.0 Reference Device Driver User’s Guide, Rev. 0

Freescale Semiconductor

PRELIMINARY—SUBJECT TO CHANGE WITHOUT NOTICE

41

Porting

Once the modules are installed, the driver image may be built per the following instructions.

7.2 Building the Interface Modules

Throughout the remainder of the installation instructions, the variables provided below are used:

The following steps are used to build drivers and/or the driver test and exercise code:

1.

Go to the command prompt or shell

2.

Execute

torVars

to set up the Tornado command line build environment.

3.

Run make in the driver or test installation directory by use of the following command:

make CPU=cpuFamily TOOL=toolChain SP=securityProcessor

example: make CPU=PPC85XX TOOL=gnu SP=SEC2)

7.3 BSP Integration

Once the modules are built, they should be linked directly with the user's board support package, to become integral
part of the board image.

In VxWorks, the file

sysLib.c

contains the initialization functions, the memory/address space functions, and the

bus interrupt functions. It is recommended to call the function

SEC2DriverInit

directly from

sysLib.c

.

In the process of initialization, the driver calls a specialized function name

sysGetPeripheralBase()

, which

returns a pointer to the base location of the peripheral device block in the processor (often defined by the CCSBAR
register in some PowerQUICC III processors). The driver uses this address and an offset to locate the SEC2 core on
the system bus. This is not a standard BSP function, the integrator will need to provide it, or a substitute method for
locating CCSBAR.

The security processor will be initialized at board start-up, with all the other devices present on the board.

8

Porting

This section describes probable areas of developer concern with respect to porting the driver to other operating
systems or environments.

At this time, this driver has been ported to function on both VxWorks and Linux operating systems. Most of the
internal functionality is independent of the constructs of a specific operating system, but there necessarily are
interface boundaries between them where things must be addressed.

Driver:

$(WIND_BASE)/target/src/drv/crypto

Tests:

$(WIND_BASE)/target/src/drv/crypto/test

Table 31. VxWorks Interface Module Variables

Variable

Definition

CpuFamily

Specifies the target CPU family, such as PPC85XX

ToolChain

Specifies the tools, such as

gnu

SecurityProcessor

Specifies the target security processor, should be

SEC2

for this driver

Advertising