• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright 2012 Tilera Corporation. All Rights Reserved.
3  *
4  *   This program is free software; you can redistribute it and/or
5  *   modify it under the terms of the GNU General Public License
6  *   as published by the Free Software Foundation, version 2.
7  *
8  *   This program is distributed in the hope that it will be useful, but
9  *   WITHOUT ANY WARRANTY; without even the implied warranty of
10  *   MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE, GOOD TITLE or
11  *   NON INFRINGEMENT.  See the GNU General Public License for
12  *   more details.
13  */
14 
15 /* This file is machine-generated; DO NOT EDIT! */
16 #include "gxio/iorpc_mpipe_info.h"
17 
18 struct instance_aux_param {
19 	_gxio_mpipe_link_name_t name;
20 };
21 
gxio_mpipe_info_instance_aux(gxio_mpipe_info_context_t * context,_gxio_mpipe_link_name_t name)22 int gxio_mpipe_info_instance_aux(gxio_mpipe_info_context_t *context,
23 				 _gxio_mpipe_link_name_t name)
24 {
25 	struct instance_aux_param temp;
26 	struct instance_aux_param *params = &temp;
27 
28 	params->name = name;
29 
30 	return hv_dev_pwrite(context->fd, 0, (HV_VirtAddr) params,
31 			     sizeof(*params), GXIO_MPIPE_INFO_OP_INSTANCE_AUX);
32 }
33 
34 EXPORT_SYMBOL(gxio_mpipe_info_instance_aux);
35 
36 struct enumerate_aux_param {
37 	_gxio_mpipe_link_name_t name;
38 	_gxio_mpipe_link_mac_t mac;
39 };
40 
gxio_mpipe_info_enumerate_aux(gxio_mpipe_info_context_t * context,unsigned int idx,_gxio_mpipe_link_name_t * name,_gxio_mpipe_link_mac_t * mac)41 int gxio_mpipe_info_enumerate_aux(gxio_mpipe_info_context_t *context,
42 				  unsigned int idx,
43 				  _gxio_mpipe_link_name_t *name,
44 				  _gxio_mpipe_link_mac_t *mac)
45 {
46 	int __result;
47 	struct enumerate_aux_param temp;
48 	struct enumerate_aux_param *params = &temp;
49 
50 	__result =
51 	    hv_dev_pread(context->fd, 0, (HV_VirtAddr) params, sizeof(*params),
52 			 (((uint64_t)idx << 32) |
53 			  GXIO_MPIPE_INFO_OP_ENUMERATE_AUX));
54 	*name = params->name;
55 	*mac = params->mac;
56 
57 	return __result;
58 }
59 
60 EXPORT_SYMBOL(gxio_mpipe_info_enumerate_aux);
61 
62 struct get_mmio_base_param {
63 	HV_PTE base;
64 };
65 
gxio_mpipe_info_get_mmio_base(gxio_mpipe_info_context_t * context,HV_PTE * base)66 int gxio_mpipe_info_get_mmio_base(gxio_mpipe_info_context_t *context,
67 				  HV_PTE *base)
68 {
69 	int __result;
70 	struct get_mmio_base_param temp;
71 	struct get_mmio_base_param *params = &temp;
72 
73 	__result =
74 	    hv_dev_pread(context->fd, 0, (HV_VirtAddr) params, sizeof(*params),
75 			 GXIO_MPIPE_INFO_OP_GET_MMIO_BASE);
76 	*base = params->base;
77 
78 	return __result;
79 }
80 
81 EXPORT_SYMBOL(gxio_mpipe_info_get_mmio_base);
82 
83 struct check_mmio_offset_param {
84 	unsigned long offset;
85 	unsigned long size;
86 };
87 
gxio_mpipe_info_check_mmio_offset(gxio_mpipe_info_context_t * context,unsigned long offset,unsigned long size)88 int gxio_mpipe_info_check_mmio_offset(gxio_mpipe_info_context_t *context,
89 				      unsigned long offset, unsigned long size)
90 {
91 	struct check_mmio_offset_param temp;
92 	struct check_mmio_offset_param *params = &temp;
93 
94 	params->offset = offset;
95 	params->size = size;
96 
97 	return hv_dev_pwrite(context->fd, 0, (HV_VirtAddr) params,
98 			     sizeof(*params),
99 			     GXIO_MPIPE_INFO_OP_CHECK_MMIO_OFFSET);
100 }
101 
102 EXPORT_SYMBOL(gxio_mpipe_info_check_mmio_offset);
103