aboutsummaryrefslogtreecommitdiff
path: root/sys/dev/ipmi/ipmi_opal.c
Commit message (Collapse)AuthorAgeFilesLines
* ipmi: fix runtime on powerpc64lePiotr Kubaj2025-03-271-0/+1
| | | | | | | | | | | | | | | Summary: OPAL runs in big-endian mode, so we need to byteswap msg_len on little-endian. MFC after: 1 week Test Plan: ipmitool lan print Reviewers: #powerpc Subscribers: imp Differential Revision: https://reviews.freebsd.org/D49530
* ipmi: fix powerpc buildGleb Smirnoff2024-10-181-3/+4
| | | | Fixes: 366d6a424e1faad9c151c5794978e218a79fbed8
* ipmi: remove timeout from the ipmi_driver_request methodGleb Smirnoff2024-10-181-6/+4
| | | | | | | | | | | | | Driver requests are done with stack allocated request. The request is put on the tailq and then we msleep(9) until kernel process processes it. If we timeout from this sleep, the kernel process may still read the request from our stack, which may already be reused by some other code. Make this sleep unbound and rely on the kernel process that does all its I/O with timouts and will eventually wake us up. Reviewed by: jhb Differential Revision: https://reviews.freebsd.org/D47179
* sys: Automated cleanup of cdefs and other formattingWarner Losh2023-11-271-1/+0
| | | | | | | | | | | | | | | | Apply the following automated changes to try to eliminate no-longer-needed sys/cdefs.h includes as well as now-empty blank lines in a row. Remove /^#if.*\n#endif.*\n#include\s+<sys/cdefs.h>.*\n/ Remove /\n+#include\s+<sys/cdefs.h>.*\n+#if.*\n#endif.*\n+/ Remove /\n+#if.*\n#endif.*\n+/ Remove /^#if.*\n#endif.*\n/ Remove /\n+#include\s+<sys/cdefs.h>\n#include\s+<sys/types.h>/ Remove /\n+#include\s+<sys/cdefs.h>\n#include\s+<sys/param.h>/ Remove /\n+#include\s+<sys/cdefs.h>\n#include\s+<sys/capsicum.h>/ Sponsored by: Netflix
* sys: Remove $FreeBSD$: one-line .c patternWarner Losh2023-08-161-2/+0
| | | | Remove /^[\s*]*__FBSDID\("\$FreeBSD\$"\);?\s*\n/
* ipmi: Remove unused devclass arguments to DRIVER_MODULE.John Baldwin2022-05-091-1/+1
|
* [PowerPC64] Fix OPAL IPMI driverLeandro Lupori2020-03-261-40/+115
| | | | | | | | | | | | | | This change fixes a couple of issues with OPAL IPMI driver and implements a mechanism to detect timeouts and discard old messages left in receive queue, to avoid old messages from being confused with the reply of new ones. Reviewed by: jhibbits Sponsored by: Eldorado Research Institute (eldorado.org.br) Differential Revision: https://reviews.freebsd.org/D24185 Notes: svn path=/head/; revision=359329
* Extract eventfilter declarations to sys/_eventfilter.hConrad Meyer2019-05-201-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | This allows replacing "sys/eventfilter.h" includes with "sys/_eventfilter.h" in other header files (e.g., sys/{bus,conf,cpu}.h) and reduces header pollution substantially. EVENTHANDLER_DECLARE and EVENTHANDLER_LIST_DECLAREs were moved out of .c files into appropriate headers (e.g., sys/proc.h, powernv/opal.h). As a side effect of reduced header pollution, many .c files and headers no longer contain needed definitions. The remainder of the patch addresses adding appropriate includes to fix those files. LOCK_DEBUG and LOCK_FILE_LINE_ARG are moved to sys/_lock.h, as required by sys/mutex.h since r326106 (but silently protected by header pollution prior to this change). No functional change (intended). Of course, any out of tree modules that relied on header pollution for sys/eventhandler.h, sys/lock.h, or sys/mutex.h inclusion need to be fixed. __FreeBSD_version has been bumped. Notes: svn path=/head/; revision=347984
* ipmi: Fixes for ipmi_opal(powernv)Justin Hibbits2019-04-021-1/+12
| | | | | | | | | | | | | | | * Crank the OPAL state machine during the receive loop, to make sure the pollers are executed * Add a proper detach function, so the module can be unloaded and reloaded at runtime. It still doesn't reliably work 100% of the time on POWER9, and it appears timing and/or cache related. It may work on POWER8 now. MFC after: 2 weeks Notes: svn path=/head/; revision=345791
* ipmi/opal: Enable polled mode and proper callbackJustin Hibbits2018-08-121-0/+2
| | | | | | | | | | | Fix a NULL dereference that would occur any time an ioctl() was done, due to a missing ipmi_enqueue_request callback. Just use the default for now, until we decide to properly enable IPMI interrupts. Reported by: kbowling Notes: svn path=/head/; revision=337689
* Support building IPMI as a module on powerpc64Justin Hibbits2018-07-251-0/+241
This still only supports IPMI via OPAL on powerpc64, but now it can be tested with a GENERIC kernel. Notes: svn path=/head/; revision=336724