1 /**********************************************************************************
2 * FILE PURPOSE: Define the device interface
3 **********************************************************************************
4 * FILE NAME: device.h
5 *
6 * DESCRIPTION: This file defines the device wrapper used by IBL modules
7 *
8 * @file device.h
9 *
10 * @brief
11 * The device wrapper API is defined
12 *
13 ***********************************************************************************/
14 #ifndef DEVICE_H
15 #define DEVICE_H
17 #include "types.h"
20 /* The target specific file is pointed to via make control. There will be a different
21 target.h file for each platform */
22 #include "target.h"
26 /**
27 * @brief
28 * Fill in the ibl structure with default values
29 *
30 * @details
31 * If the ibl table is not pre-loaded during the initial boot, then
32 * each device will load a default table.
33 */
34 void deviceLoadDefaultIblTable(void);
37 /**
38 * @brief
39 * Convert a local address to a global address
40 *
41 * @details
42 * a local memory address (l1d, l1p, l2) is converted to a global address
43 */
44 Uint32 deviceLocalAddrToGlobal (Uint32 local);
47 /**
48 * @brief Configure the PLLs
49 *
50 * @details
51 * The three PLLs are enabled. Only the main PLL has the ability to configure
52 * the multiplier and dividers.
53 */
54 void devicePllConfig (void);
57 /**
58 * @brief
59 * Power up a peripheral
60 *
61 * @details
62 * The specified module (and domain if required) is power up
63 */
64 int32 devicePowerPeriph (int32 modNum);
67 /**
68 * @brief Enable the DDR controller
69 *
70 * @details
71 * The DDR controller is enabled (optionally)
72 */
73 void deviceDdrConfig (void);
76 /**
77 * @brief
78 * Perform device level configuration for nand boot
79 *
80 * @detials
81 * Board/chip specific initializations
82 */
83 int32 deviceConfigureForNand(void);
85 /**
86 * @brief
87 * Load the default ethernet address
88 *
89 * @details
90 * The mac address from e-fuse is loaded
91 */
92 void deviceLoadDefaultEthAddress (uint8 *maddr);
94 #endif