summaryrefslogtreecommitdiff
path: root/sys/dev/acpi
AgeCommit message (Collapse)Author
2016-07-27after system resume, re-write backlight levelJoshua Stein
2016-07-10Pay attention to Processor Local X2APIC structures. ACPI 6.0 allows theseMark Kettenis
even for APIC ID values less than 255. Makes secondary CPUs attach on the HP DL360 gen 9. tested by jung@ ok guenther@
2016-07-10Rename apic_proc_uid field to acpi_proc_uid in the acpi_madt_x2apic struct.Mark Kettenis
It is the ACPI processor UID that is stored here. ok guenther@
2016-07-01add a simple keyboard backlight driver for some chromebooks,Joshua Stein
adjustable with wsconsctl keyboard.backlight ok bmercer, kettenis
2016-06-16enable suspend/hibernate fn keysGiovanni Bechis
ok mlarkin@
2016-06-10The power management timer has been made optional in ACPI 5.0A, so don'tMark Kettenis
attempt to attach acpitimer(4) if the timer isn't present. Pointed out by jcs@ ok jcs@
2016-06-08attach acpitoshiba(4) on more Toshiba laptopsGiovanni Bechis
ok pirofti@
2016-05-24Disabling active cooling trip points when we lack the right method to operate.Sebastien Marie
Problem reported by James Hastings. ok dcoppa@ mlarkin@
2016-05-08Add support for level, active low gpio interrupts.Mark Kettenis
2016-05-08Add support for writing gpio pins.Mark Kettenis
2016-05-08Make sure devices listed by a device's _DEP method are attached beforeMark Kettenis
we attach the device itself. The _DEP methode, introduced in ACPI 5.0, is a hint that the device in question depends on OpRegion support from the devices listed by _DEP, so we have to order them the proper way. To prevent us from attaching those devices again when we encounter them later walking down the device tree, keep track of our attempts to attach a device driver to them using aflag in the aml_node structure. ok guenther@
2016-05-08Call _REG to register GeneralPuproseIo address space support.Mark Kettenis
2016-05-08Plug some memory leaks and do proper cleanup in error paths.Mark Kettenis
2016-05-08Add macros for interrupt trigger mode as encoded in GPIO resources.Mark Kettenis
2016-05-07Add chvgpio(4), a driver for the GPIO controllers found on Intel's Cherry ViewMark Kettenis
SoC.
2016-05-07Implement ACPI 5.0 GeneralPurposeIo OpRegion support. This basically allowsMark Kettenis
AML to peek and poke at GPIO pins as if it were reading and writing registers. For now this only implements peeking at pins. It will print a message if AML attempt to poke at a pin. And it will panic if the assumptions made in the code are violated. ok mlarkin@
2016-05-07Add defines for Operation Region Address Space Identifiers and use them whenMark Kettenis
acpiec(4) calls the _REG method. ok mlarkin@
2016-05-05Return ENOTTY in acpithinkpad backlight get/set ioctls if the maximumJonathan Gray
value is 0 to match the behaviour when the callbacks are not set. Prevents a divide by zero in wsconsctl(8) reported by Caspar Schutijser. earlier version ok jung@ deraadt@ kettenis@
2016-05-04Don't mask pins configured as direct IRQ. Those are tied directly to the APICMark Kettenis
and don't generate a GPIO controller interrupt. Masking them menas devices relying on those APIC interrupts will break. Unbreaks the keyboard on the Asus x205ta, which got broken in rev 1.6.
2016-05-03Print missing newline if we bail out because of a uid mismatch.Mark Kettenis
2016-04-30Mask all gpio interrupts when we attach. Fixes interrupt storm on the LenovoMark Kettenis
Ideacentre Stick 300.
2016-04-30Implement DMA support. Bits and pieces taken from NetBSD, but we onlyMark Kettenis
support ADMA2. The older SDMA mode has too many limitations to be really usable. Gives us only moderate speed improvements, bus reduces the CPU load considerably. We will reap the full benefits once we implement wider bus widths and high speed modes. There is a remining issue with simultanious use of eMMC and external SD card on (some) Intel Bay Trail hardware. Still under investigation. ok patrick@, stsp@, deraadt@
2016-04-26Remove debug printfs, but do print "gpio" to indicate that card detection isMark Kettenis
done through a gpio pin instead of the standard register.
2016-04-26corrects acpitz problem with active cooling and hysterisisSebastien Marie
"if the temperature is below the active cooling level for a tz, turn the fan off regardless of what state it is currently in" ok mlarkin@
2016-04-25We attach acpihpet(4) and acpiec(4) without using the HID, so do notPaul Irofti
report it in the dmesg. OK deraadt@, mlarkin@.
2016-04-23Match on Cherry Trail.Mark Kettenis
2016-04-23Print a meaningful interrupt string for i2c devices.Mark Kettenis
2016-04-10Fix layer violation in the ihidev(4) code by implementing a generic mechanismMark Kettenis
that allows the i2c controller implementation to establish interrupts on behalf of i2c slave device drivers. Use this mechanism in dwiic(4) to let it configure the right acpi interrupt (global or gpio). Change the level to IPL_TTY as this is the appropriate level to use for keyboards and other input devices. ok jsg@
2016-04-02Reduce dmesg spam by knocking out some acpi hardware IDs that don't need aMark Kettenis
driver. ok mpi@
2016-04-02Add support for I2C HID devices with GPIO signalled interrupts.Jonathan Gray
Required for the keyboard and touchpad on the ideapad 100s. ok kettenis@
2016-04-02Make the gpio intr_establish callback return an int so the same functionJonathan Gray
pointer can be used with gpio and acpi intr_establish. ok kettenis@
2016-03-30Hook up the gpio interrupt on devices that use it for card detection.Mark Kettenis
Makes the SD card slot on machines based on Intel's Bay Trail SoC fully functional. ok jsg@
2016-03-30Add support for gpio-based interrupts.Mark Kettenis
ok jsg@
2016-03-29Print address and irq in the same way as sdhc(4)and bytgpio(4).Mark Kettenis
2016-03-29Check if a device is present (using _STA) in acpi_foundhid. This preventsMark Kettenis
us from reporting devices as "not configured" that aren't actually present, and allows us to remove duplicated code from several drivers. ok deraadt@, ok jsg@
2016-03-29Implement a cleaner way to prevent acpivout(4) from attaching if we haveMark Kettenis
a platform-specific method of controlling the backlight. ok millert@, mlarkin@, jung@
2016-03-28Replace 0 with NULL.Mark Kettenis
2016-03-28Adding each and every new acpi device driver to acpi_foundhid() isMark Kettenis
gettinga bit of the burden. And it really isn't how our autoconf framework is supposed to work for busses that can be enumerated. All the drivers already check for a matching _HID in their attach function. So we can just drop the checks in acpi_foundhid() and let the drivers sort themselves out. Print a "not configured" line for devices for which we don't attach adriver. This may be a bit much as there are devices for which we will not have a driver. This will be removed if it causes too much dmesg spam. ok deraadt@, mlarkin@
2016-03-28Match based on _HID instead of the driver name.Mark Kettenis
ok mlarkin@
2016-03-28Add support for card detect through a GPIO signal.Mark Kettenis
2016-03-28Add bytgpio(4) a driver for the gpio controllers found on Intel's Bay TrailMark Kettenis
SoC.
2016-03-28Add infrastructure that allows gpio drivers to register themselves withMark Kettenis
the acpi framework such that we can start adding supportfor GPIO resources.
2016-03-28Add definitions for GPIO resources.Mark Kettenis
2016-03-17Replace curcpu_is_idle() by cpu_is_idle() and use it instead of rollingMartin Pieuchot
our own. From Michal Mazurek, ok mmcc@
2016-03-14Correct the value of SRT_ENDTAG: it was documented incorrectly in earlyPhilip Guenther
ACPI specs. With the correct value, it can now be used in a few places instead of hardcoding 0x79. ok kettenis@
2016-03-02Claim to be more versions of windows for _OSI checks.Jonathan Gray
2001.1 SP1 Windows Server 2003 SP1 2006.1 Windows Server 2008 2006 SP1 Windows Vista SP1 2006 SP2 Windows Vista SP2 2015 Windows 10 ok kettenis@
2016-01-22Zero the local structs holding crs information before parsing _CRS.Jonathan Gray
This avoids reading uninitialised memory when expected value types are not present, as is currently the case with gpio signalled interrupts, and could also be the case with buggy aml. Without this change under certain conditions on the ideapad 100s (such as a ramdisk kernel or generic kernel compiled with -O0) ihidev would incorrectly attach to a bogus ioapic interrupt. ok kettenis@
2016-01-17fix an off-by-one that could result in read operations not readingJoshua Stein
the last byte, depending on the timing
2016-01-17dwiic_i2c_{read,write} -> dwiic_{read,write}Joshua Stein
2016-01-17Take acpi_foundhid() outside of #ifndef SMALL_KERNEL so the ramdiskJonathan Gray
kernel can find and attach dwiic(4) and sdhc(4).