iPXE
mlx_pci.h
Go to the documentation of this file.
1 #ifndef STUB_MLXUTILS_INCLUDE_PUBLIC_PCI_H_
2 #define STUB_MLXUTILS_INCLUDE_PUBLIC_PCI_H_
3 
4 /*
5  * Copyright (C) 2015 Mellanox Technologies Ltd.
6  *
7  * This program is free software; you can redistribute it and/or
8  * modify it under the terms of the GNU General Public License as
9  * published by the Free Software Foundation; either version 2 of the
10  * License, or any later version.
11  *
12  * This program is distributed in the hope that it will be useful, but
13  * WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15  * General Public License for more details.
16  *
17  * You should have received a copy of the GNU General Public License
18  * along with this program; if not, write to the Free Software
19  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
20  * 02110-1301, USA.
21  */
22 
23 FILE_LICENCE ( GPL2_OR_LATER );
24 
25 #include "mlx_utils.h"
26 
27 typedef enum {
33 
36  IN mlx_utils *utils
37  );
38 
41  IN mlx_utils *utils
42  );
43 
46  IN mlx_utils *utils,
47  IN mlx_pci_width width,
51  );
52 
55  IN mlx_utils *utils,
56  IN mlx_pci_width width,
60  );
61 
64  IN mlx_utils *utils,
65  IN mlx_pci_width width,
66  IN mlx_uint8 bar_index,
70  );
71 
74  IN mlx_utils *utils,
75  IN mlx_pci_width width,
76  IN mlx_uint8 bar_index,
80  );
81 
82 
83 #endif /* STUB_MLXUTILS_INCLUDE_PUBLIC_PCI_H_ */
mlx_status mlx_pci_mem_write(IN mlx_utils *utils, IN mlx_pci_width width, IN mlx_uint8 bar_index, IN mlx_uint64 offset, IN mlx_uintn count, IN mlx_void *buffer)
Definition: mlx_pci.c:116
mlx_status mlx_pci_mem_read(IN mlx_utils *utils, IN mlx_pci_width width, IN mlx_uint8 bar_index, IN mlx_uint64 offset, IN mlx_uintn count, OUT mlx_void *buffer)
Definition: mlx_pci.c:96
uint32_t buffer
Buffer index (or NETVSC_RNDIS_NO_BUFFER)
Definition: netvsc.h:16
mlx_status mlx_pci_read(IN mlx_utils *utils, IN mlx_pci_width width, IN mlx_uint32 offset, IN mlx_uintn count, OUT mlx_void *buffer)
Definition: mlx_pci.c:58
mlx_status mlx_pci_write(IN mlx_utils *utils, IN mlx_pci_width width, IN mlx_uint32 offset, IN mlx_uintn count, IN mlx_void *buffer)
Definition: mlx_pci.c:77
mlx_status mlx_pci_teardown(IN mlx_utils *utils)
Definition: mlx_pci.c:43
mlx_pci_width
Definition: mlx_pci.h:27
uint32_t mlx_uint32
mlx_status mlx_pci_init(IN mlx_utils *utils)
Definition: mlx_pci.c:28
#define OUT
Definition: mlx_utils.h:29
static userptr_t size_t offset
Offset of the first segment within the content.
Definition: deflate.h:259
void mlx_void
#define IN
Definition: mlx_utils.h:28
unsigned long mlx_uintn
uint8_t mlx_uint8
uint16_t count
Number of entries.
Definition: ena.h:22
FILE_LICENCE(GPL2_OR_LATER)
int mlx_status
uint64_t mlx_uint64