Call of interfaces
The EPS is portable to different systems which can differ in their respective behavior. The architecture of EPS is modular and configurable. Each driver encapsulates a platform- or hardware-specific functionality that EPS can use by applying the requested interface functions. Thus, EPS calls only the interface, never the driver itself. There are two interfaces that EPS uses:
-
Upper IF drivers
- EPS PN Device Driver interface, see section PN Device Driver.
-
Lower IF drivers (EPS SHM IF)
- eps_pncore driver to use PN Driver with shared memory in CP1625 Host variant
Each driver has to provide an
install() and uninstall() function.
Within this "install", the driver has to:
-
Map the functions required by the interface to a real implementation
-
Call the XXX_register() function provided by EPS core
Example
-
The "eps_noshm" driver implements the "eps_shm_if". For PN Driver test console application, it is installed and registered at
EPS_APP_INIT(). -
The sources for the driver are located in:
pn_run\src\source\pnboards\eps\epssys\src\eps_noshmdrv.c -
The driver implements the install function
eps_noshmdrv_install()