![Freescale Semiconductor i.MX 6DualLite Reference Manual Download Page 326](http://html1.mh-extra.com/html/freescale-semiconductor/i-mx-6duallite/i-mx-6duallite_reference-manual_2330523326.webp)
• SECVIO_CAUSE_WATCHDOG - Watchdog expiration
• SECVIO_CAUSE_EXTERNAL_BOOT - External bootload activity
• SECVIO_CAUSE_TAMPER_DETECT - Tamper detection logic triggered
Each of these causes can be associated with an application-defined handler through the
API provided with this driver. If no handler is specified, then a default handler will be
called. This handler does no more than to identify the interrupt cause to the system
console.
45.21 Configuration Interface
The following interface can be used to define or remove application-defined violation
handlers from the driver's dispatch table.
45.22 Install a Handler
int caam_secvio_install_handler(struct device *dev, enum secvio_cause
cause, void (*handler)(struct device *dev, u32 cause, void *ext), u8
*cause_description, void *ext);
Arguments:
dev
Points to SNVS-owning device.
cause
Interrupt source cause from the above list of enumerated causes.
handler
Application-defined handler, gets called with dev, source cause, and locally-
defined handler argument
cause_description
Points to a string to override the default cause name, this can be used as
an alternate for error messages and such. If left NULL, the default description string is
used. ext pointer to any extra data needed by the handler.
Returns:
• Zero on success.
• -EINVAL if an argument was invalid or unusable.
45.23 Remove an Installed Driver
int caam_secvio_remove_handler(struct device *dev, enum secvio_cause
cause);
Configuration Interface
i.MX 6Solo/6DualLite Linux Reference Manual, Rev. L3.0.35_4.1.0, 09/2013
326
Freescale Semiconductor, Inc.