|
|
1.1 root 1: #ifndef __LIBHVCALL_H__
2: #define __LIBHVCALL_H__
3:
4: #define H_SUCCESS 0
5:
1.1.1.2 ! root 6: #define H_GET_TCE 0x1C
! 7: #define H_PUT_TCE 0x20
! 8: #define H_LOGICAL_CI_LOAD 0x3c
! 9: #define H_LOGICAL_CI_STORE 0x40
1.1 root 10: #define H_GET_TERM_CHAR 0x54
11: #define H_PUT_TERM_CHAR 0x58
12: #define H_REG_CRQ 0xFC
13: #define H_FREE_CRQ 0x100
14: #define H_SEND_CRQ 0x108
15: #define H_REGISTER_LOGICAL_LAN 0x114
16: #define H_FREE_LOGICAL_LAN 0x118
17: #define H_ADD_LOGICAL_LAN_BUFFER 0x11C
18: #define H_SEND_LOGICAL_LAN 0x120
19:
20: #ifndef __ASSEMBLY__
21:
22: extern long hv_generic(unsigned long opcode, ...);
23:
1.1.1.2 ! root 24: extern void hv_putchar(char c, int hvtermno);
! 25: extern char hv_getchar(int hvtermno);
! 26: extern char hv_haschar(int hvtermno);
1.1 root 27:
28: extern int hv_send_crq(unsigned int unit, uint64_t *msgaddr);
29:
30: static inline long hv_reg_crq(unsigned int unit, unsigned long qaddr,
31: unsigned long qsize)
32: {
33: return hv_generic(H_REG_CRQ, unit, qaddr, qsize);
34: }
35:
36: static inline void hv_free_crq(unsigned int unit)
37: {
38: hv_generic(H_FREE_CRQ, unit);
39: }
40:
41: extern long hv_send_logical_lan(unsigned long unit_address,
42: unsigned long desc1, unsigned long desc2,
43: unsigned long desc3, unsigned long desc4,
44: unsigned long desc5, unsigned long desc6);
45:
46: static inline long h_register_logical_lan(unsigned long unit_address,
47: unsigned long buf_list,
48: unsigned long rec_q,
49: unsigned long filter_list,
50: unsigned long mac_address)
51: {
52: return hv_generic(H_REGISTER_LOGICAL_LAN, unit_address,
53: buf_list, rec_q, filter_list, mac_address);
54: }
55:
56: static inline long h_free_logical_lan(unsigned long unit_address)
57: {
58: return hv_generic(H_FREE_LOGICAL_LAN, unit_address);
59: }
60:
61: static inline long h_add_logical_lan_buffer(unsigned long unit_address,
62: unsigned long buffer)
63: {
64: return hv_generic(H_ADD_LOGICAL_LAN_BUFFER, unit_address, buffer);
65: }
66:
1.1.1.2 ! root 67: extern unsigned long hv_logical_ci_load(unsigned long size, unsigned long addr);
! 68: extern unsigned long hv_logical_ci_store(unsigned long size, unsigned long addr,
! 69: unsigned long value);
! 70:
1.1 root 71: #endif /* __ASSEMBLY__ */
72:
73: #endif /* __LIBHVCALL_H__ */
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.