summaryrefslogtreecommitdiff
path: root/sys/arch/amd64/isa
AgeCommit message (Collapse)Author
27 hourskernel/amd64: Deprecate reboot keyIan Moffett
Remove logic to reboot machine by simply pressing a key. Signed-off-by: Ian Moffett <ian@osmora.org>
28 hourskernel/amd64: mc1468xx: Implement date settingIan Moffett
Implement logic to update the date returned by the MC1468XX/RTC chip. This can be used to later implement some sort of time synchronization protocol or manual setting of the date. Signed-off-by: Ian Moffett <ian@osmora.org>
28 hourskernel/amd64: mc1468xx: Add 2000 to the yearIan Moffett
The year register of the RTC does not keep track of the century so default to 2000 until we figure out the non-standard century register. Signed-off-by: Ian Moffett <ian@osmora.org>
32 hourskernel/amd64: i8042: Use DMI for quirk checkingIan Moffett
On certain embedded controllers (ECs) like the EC present on the Thinkpad T420s, writes to the i8042 controller configuration byte are not very liked by the EC internal logic and thus result in them asserting an NMI as a certain host bus error. To workaround this, Hyra falls back to polling on these specific devices. Previously, Hyra did not have DMI/SMBIOS capabilities and therefore had to rely on assuming *all* Lenovo devices were "hostile". As of now since we are capable grabbing the product version from DMI, we can target specific devices like the T420s and this commit provides that logic. This commit additionally implements logic to enable interrupts on PS/2 port 0 (aka the keyboard). Signed-off-by: Ian Moffett <ian@osmora.org>
5 dayskernel/amd64: mc1468xx: Add year, month and dayIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-06-07kernel/amd64: isa: Add AT PC MC1468XX driverIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-06-06kernel/amd64: isa: Add /dev/beep for pcspkrIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-05-22kernel/amd64: i8042: Remove conf r/w for nowIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-05-21kernel/amd64: i8042: Simplify init + handlingIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-05-21kernel/amd64: Unset CPU_IRQ(1) at kbd handler endIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-05-19kernel/amd64: Deprecate intr_alloc_vector()Ian Moffett
Replace intr_alloc_vector() with a cleaner and more machine independent intr_register() Signed-off-by: Ian Moffett <ian@osmora.org>
2025-05-19kernel/amd64: i8042: Reduce logging verbosityIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-05-16kernel: spawn: Add proper spawn impl + SYS_spawnIan Moffett
This commit introduces a more complete spawn implementation as well as the SYS_spawn syscall and a libc interface. Signed-off-by: Ian Moffett <ian@osmora.org>
2025-05-15kernel: proc: Do not introduce fork()Ian Moffett
Simplicity is divine, fork() may be powerful but is no longer simple. It became a thing in the late 70s during the early days of UNIX when computing was simple, when CPUs were only 16-bits, MMUs were not prevalent and RAM was only 512 KB. However it isn't 1971 anymore, process management, CPUs and memory architecture has advanced significantly since. This commit ceases work on the fork() syscall as implementing it would only introduce unnecessary complexity, security issues, hefty processing overhead and would perpetuate what should now be considered legacy. The current best alternative would be providing a form of process spawning as well as a mechanism to wait for the child process to complete. Signed-off-by: Ian Moffett <ian@osmora.org>
2025-05-13kernel/amd64: i8042: Flush console for reset logsIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-04-18kernel/amd64: isa: Improve polling and bufferingIan Moffett
- Remove OBUF_WAIT() and IBUF_WAIT() macros - Buffer to console input Signed-off-by: Ian Moffett <ian@osmora.org>
2025-04-18kernel/amd64: isa: Attempt to wake up PS/2 linesIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-04-17kernel/amd64: isa: Add i8042 keyboard supportIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-04-17kernel/amd64: isa: Add support for pcspkrIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-02-20kernel/amd64: i8237: Use word register for modeIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-02-20kernel/amd64: i8237: Optimize set channel selectIan Moffett
There is no need for an intermediary register before setting %AL. This commit removes redundant instructions to reduce the amount of cycles used for this operation. Signed-off-by: Ian Moffett <ian@osmora.org>
2025-02-20kernel/amd64: isa: Add initial i8237 driver implIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-02-16project: Update copyright date to 2025Ian Moffett
Was supposed to happen on Jan 1, sorry! Happy late new year! Signed-off-by: Ian Moffett <ian@osmora.org>
2025-02-15kernel/amd64: i8254: freq_hz -> divisorIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-06-06kernel/amd64: isa: Add i8254 driverIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>