Rev 1910 | Rev 2071 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 1910 | Rev 1946 | ||
---|---|---|---|
Line 38... | Line 38... | ||
38 | * is due to the fact that the FHC documentation is not |
38 | * is due to the fact that the FHC documentation is not |
39 | * publicly available. |
39 | * publicly available. |
40 | */ |
40 | */ |
41 | 41 | ||
42 | #include <arch/drivers/fhc.h> |
42 | #include <arch/drivers/fhc.h> |
- | 43 | #include <arch/trap/interrupt.h> |
|
43 | #include <arch/mm/page.h> |
44 | #include <arch/mm/page.h> |
44 | #include <mm/slab.h> |
45 | #include <mm/slab.h> |
45 | #include <arch/types.h> |
46 | #include <arch/types.h> |
46 | #include <typedefs.h> |
47 | #include <typedefs.h> |
47 | #include <genarch/ofw/ofw_tree.h> |
48 | #include <genarch/ofw/ofw_tree.h> |
48 | #include <genarch/kbd/z8530.h> |
- | |
49 | 49 | ||
50 | fhc_t *central_fhc = NULL; |
50 | fhc_t *central_fhc = NULL; |
51 | 51 | ||
52 | /** |
52 | /** |
53 | * I suspect this must be hardcoded in the FHC. |
53 | * I suspect this must be hardcoded in the FHC. |
Line 92... | Line 92... | ||
92 | 92 | ||
93 | void fhc_enable_interrupt(fhc_t *fhc, int inr) |
93 | void fhc_enable_interrupt(fhc_t *fhc, int inr) |
94 | { |
94 | { |
95 | switch (inr) { |
95 | switch (inr) { |
96 | case FHC_UART_INR: |
96 | case FHC_UART_INR: |
97 | fhc->uart_imap[FHC_UART_ICLR] = 0x0; |
- | |
98 | fhc->uart_imap[FHC_UART_IMAP] = 0x80000000; |
97 | fhc->uart_imap[FHC_UART_IMAP] |= IMAP_V_MASK; |
99 | break; |
98 | break; |
100 | default: |
99 | default: |
101 | panic("Unexpected INR (%d)\n", inr); |
100 | panic("Unexpected INR (%d)\n", inr); |
102 | break; |
101 | break; |
103 | } |
102 | } |