git://scm.lunaixsky.com
/
lunaix-os.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Unifying External Interrupt System (#51)
[lunaix-os.git]
/
lunaix-os
/
hal
/
ahci
/
io_event.c
diff --git
a/lunaix-os/hal/ahci/io_event.c
b/lunaix-os/hal/ahci/io_event.c
index d37f8e6f7663f2c6255c4ae9ea9548395cb0770b..b751cdcbfff3f7e2ad6cf2c85257ed2929346623 100644
(file)
--- a/
lunaix-os/hal/ahci/io_event.c
+++ b/
lunaix-os/hal/ahci/io_event.c
@@
-1,18
+1,18
@@
#include <hal/ahci/ahci.h>
#include <hal/ahci/sata.h>
#include <hal/ahci/ahci.h>
#include <hal/ahci/sata.h>
-#include <lunaix/generic/isrm.h>
#include <lunaix/mm/valloc.h>
#include <lunaix/syslog.h>
LOG_MODULE("io_evt")
void
#include <lunaix/mm/valloc.h>
#include <lunaix/syslog.h>
LOG_MODULE("io_evt")
void
-ahci_hba_isr(const struct hart_state* hstate)
+ahci_hba_isr(
irq_t irq,
const struct hart_state* hstate)
{
struct ahci_hba* hba;
struct ahci_driver *pos, *n;
{
struct ahci_hba* hba;
struct ahci_driver *pos, *n;
- struct llist_header* ahcis
= (struct llist_header*)isrm_get_payload(hstate)
;
+ struct llist_header* ahcis;
+ ahcis = irq_payload(irq, struct llist_header);
llist_for_each(pos, n, ahcis, ahci_drvs)
{
if (pos->id == hart_vector_stamp(hstate)) {
llist_for_each(pos, n, ahcis, ahci_drvs)
{
if (pos->id == hart_vector_stamp(hstate)) {