diff options
author | David S. Miller <davem@sunset.davemloft.net> | 2006-02-13 03:23:32 -0500 |
---|---|---|
committer | David S. Miller <davem@sunset.davemloft.net> | 2006-03-20 04:12:37 -0500 |
commit | 6c0f402f6cc62314ef83b975f3430350dcb6055f (patch) | |
tree | 394a2e981ee8fff3e6eda7aec2d20be8542ecae1 /arch/sparc64 | |
parent | 85dfa19ba92f88fa1c1482f655c7247119dfdcd5 (diff) |
[SPARC64]: Implement rest of generic interrupt hypervisor calls.
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'arch/sparc64')
-rw-r--r-- | arch/sparc64/kernel/entry.S | 66 |
1 files changed, 65 insertions, 1 deletions
diff --git a/arch/sparc64/kernel/entry.S b/arch/sparc64/kernel/entry.S index fa185f227055..a2842a72f8e6 100644 --- a/arch/sparc64/kernel/entry.S +++ b/arch/sparc64/kernel/entry.S | |||
@@ -1701,9 +1701,73 @@ hard_smp_processor_id: | |||
1701 | * | 1701 | * |
1702 | * returns %o0: sysino | 1702 | * returns %o0: sysino |
1703 | */ | 1703 | */ |
1704 | .globl pci_sun4v_devino_to_sysino | 1704 | .globl sun4v_devino_to_sysino |
1705 | sun4v_devino_to_sysino: | 1705 | sun4v_devino_to_sysino: |
1706 | mov HV_FAST_INTR_DEVINO2SYSINO, %o5 | 1706 | mov HV_FAST_INTR_DEVINO2SYSINO, %o5 |
1707 | ta HV_FAST_TRAP | 1707 | ta HV_FAST_TRAP |
1708 | retl | 1708 | retl |
1709 | mov %o1, %o0 | 1709 | mov %o1, %o0 |
1710 | |||
1711 | /* %o0: sysino | ||
1712 | * | ||
1713 | * returns %o0: intr_enabled (HV_INTR_{DISABLED,ENABLED}) | ||
1714 | */ | ||
1715 | .globl sun4v_intr_getenabled | ||
1716 | sun4v_intr_getenabled: | ||
1717 | mov HV_FAST_INTR_GETENABLED, %o5 | ||
1718 | ta HV_FAST_TRAP | ||
1719 | retl | ||
1720 | mov %o1, %o0 | ||
1721 | |||
1722 | /* %o0: sysino | ||
1723 | * %o1: intr_enabled (HV_INTR_{DISABLED,ENABLED}) | ||
1724 | */ | ||
1725 | .globl sun4v_intr_setenabled | ||
1726 | sun4v_intr_setenabled: | ||
1727 | mov HV_FAST_INTR_SETENABLED, %o5 | ||
1728 | ta HV_FAST_TRAP | ||
1729 | retl | ||
1730 | nop | ||
1731 | |||
1732 | /* %o0: sysino | ||
1733 | * | ||
1734 | * returns %o0: intr_state (HV_INTR_STATE_*) | ||
1735 | */ | ||
1736 | .globl sun4v_intr_getstate | ||
1737 | sun4v_intr_getstate: | ||
1738 | mov HV_FAST_INTR_GETSTATE, %o5 | ||
1739 | ta HV_FAST_TRAP | ||
1740 | retl | ||
1741 | mov %o1, %o0 | ||
1742 | |||
1743 | /* %o0: sysino | ||
1744 | * %o1: intr_state (HV_INTR_STATE_*) | ||
1745 | */ | ||
1746 | .globl sun4v_intr_setstate | ||
1747 | sun4v_intr_setstate: | ||
1748 | mov HV_FAST_INTR_SETSTATE, %o5 | ||
1749 | ta HV_FAST_TRAP | ||
1750 | retl | ||
1751 | nop | ||
1752 | |||
1753 | /* %o0: sysino | ||
1754 | * | ||
1755 | * returns %o0: cpuid | ||
1756 | */ | ||
1757 | .globl sun4v_intr_gettarget | ||
1758 | sun4v_intr_gettarget: | ||
1759 | mov HV_FAST_INTR_GETTARGET, %o5 | ||
1760 | ta HV_FAST_TRAP | ||
1761 | retl | ||
1762 | mov %o1, %o0 | ||
1763 | |||
1764 | /* %o0: sysino | ||
1765 | * %o1: cpuid | ||
1766 | */ | ||
1767 | .globl sun4v_intr_settarget | ||
1768 | sun4v_intr_settarget: | ||
1769 | mov HV_FAST_INTR_SETTARGET, %o5 | ||
1770 | ta HV_FAST_TRAP | ||
1771 | retl | ||
1772 | nop | ||
1773 | |||