1 * Software Delegated Exception Interface (SDEI) 2 3 Firmware implementing the SDEI functions described in ARM document number 4 ARM DEN 0054A ("Software Delegated Exception Interface") can be used by 5 Linux to receive notification of events such as those generated by 6 firmware-first error handling, or from an IRQ that has been promoted to 7 a firmware-assisted NMI. 8 9 The interface provides a number of API functions for registering callbacks 10 and enabling/disabling events. Functions are invoked by trapping to the 11 privilege level of the SDEI firmware (specified as part of the binding 12 below) and passing arguments in a manner specified by the "SMC Calling 13 Convention (ARM DEN 0028B): 14 15 r0 => 32-bit Function ID / return value 16 {r1 - r3} => Parameters 17 18 Note that the immediate field of the trapping instruction must be set 19 to #0. 20 21 The SDEI_EVENT_REGISTER function registers a callback in the kernel 22 text to handle the specified event number. 23 24 The sdei node should be a child node of '/firmware' and have required 25 properties: 26 27 - compatible : should contain: 28 * "arm,sdei-1.0" : For implementations complying to SDEI version 1.x. 29 30 - method : The method of calling the SDEI firmware. Permitted 31 values are: 32 * "smc" : SMC #0, with the register assignments specified in this 33 binding. 34 * "hvc" : HVC #0, with the register assignments specified in this 35 binding. 36 Example: 37 firmware { 38 sdei { 39 compatible = "arm,sdei-1.0"; 40 method = "smc"; 41 }; 42 };
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.