Home | History | Annotate | Download | only in acpi

Lines Matching defs:einj

30  * APEI EINJ -- Error Injection Table
37 * platform's EINJ operational context. However, this also requires
79 * Symbolic names of the APEI EINJ (Error Injection) logical actions
100 * Symbolic names of the APEI EINJ (Error Injection) instructions to
139 ACPI_TABLE_EINJ *einj = sc->sc_tab.einj;
154 if (einj->Header.Length < sizeof(*einj)) {
155 aprint_error_dev(sc->sc_dev, "EINJ: truncated table:"
157 einj->Header.Length, sizeof(*einj));
160 if (einj->HeaderLength <
161 sizeof(*einj) - offsetof(ACPI_TABLE_EINJ, HeaderLength)) {
162 aprint_error_dev(sc->sc_dev, "EINJ: truncated header:"
164 einj->HeaderLength,
165 sizeof(*einj) - offsetof(ACPI_TABLE_EINJ, HeaderLength));
168 nentries = einj->Entries;
169 maxnentries = (einj->Header.Length - sizeof(*einj))/sizeof(*entry);
171 aprint_error_dev(sc->sc_dev, "EINJ: excessive entries:"
176 if (nentries*sizeof(*entry) < einj->Header.Length - sizeof(*einj)) {
177 aprint_error_dev(sc->sc_dev, "EINJ:"
179 einj->Header.Length - nentries*sizeof(*entry));
183 * Create sysctl hw.acpi.apei.einj for all EINJ-related knobs.
187 CTLTYPE_NODE, "einj",
193 " hw.acpi.apei.einj: %d\n", error);
198 * Create an interpreter for EINJ actions.
200 jsc->jsc_interp = apei_interp_create("EINJ",
206 * Compile the interpreter from the EINJ action instruction
209 entry = (ACPI_EINJ_ENTRY *)(einj + 1);
212 entry = (ACPI_EINJ_ENTRY *)(einj + 1);
218 entry = (ACPI_EINJ_ENTRY *)(einj + 1);
226 * Create sysctl hw.acpi.apei.einj.action for individual actions.
232 SYSCTL_DESCR("EINJ actions"),
237 " hw.acpi.apei.einj.action: %d\n", error);
254 entry = (ACPI_EINJ_ENTRY *)(einj + 1);
281 " sysctl hw.acpi.apei.einj.action.%s: %d\n",
299 " sysctl hw.acpi.apei.einj.trigger: %d\n",
336 aprint_normal_dev(sc->sc_dev, "EINJ: can inject:"
354 " sysctl hw.acpi.apei.einj.types: %d\n",
379 * Machine state for executing EINJ instructions.
390 * Run a single instruction in the service of performing an EINJ
391 * action. Updates the EINJ machine at cookie in place.
461 * Perform the named EINJ action with input x, by executing the
462 * instruction defined for the action by the EINJ, and return the
601 * Now iterate over the EINJ-type entries and execute the
651 * action. EINJ instructions don't change ip.
675 * Handle sysctl queries under hw.acpi.apei.einj.action.*.
707 * Fail if there's no EINJ.
709 if (sc->sc_tab.einj == NULL) {
745 * Perform the EINJ action by following the table's
769 * Handle sysctl hw.acpi.apei.einj.trigger.
800 * Fail if there's no EINJ.
802 if (sc->sc_tab.einj == NULL) {
839 * Handle sysctl hw.acpi.apei.einj.types.
865 * Fail if there's no EINJ.
867 if (sc->sc_tab.einj == NULL) {