| .. | .. |
|---|
| 51 | 51 | CVMX_HELPER_INTERFACE_MODE_LOOP, |
|---|
| 52 | 52 | } cvmx_helper_interface_mode_t; |
|---|
| 53 | 53 | |
|---|
| 54 | | -typedef union { |
|---|
| 54 | +union cvmx_helper_link_info { |
|---|
| 55 | 55 | uint64_t u64; |
|---|
| 56 | 56 | struct { |
|---|
| 57 | 57 | uint64_t reserved_20_63:44; |
|---|
| .. | .. |
|---|
| 59 | 59 | uint64_t full_duplex:1; /**< 1 if the link is full duplex */ |
|---|
| 60 | 60 | uint64_t speed:18; /**< Speed of the link in Mbps */ |
|---|
| 61 | 61 | } s; |
|---|
| 62 | | -} cvmx_helper_link_info_t; |
|---|
| 62 | +}; |
|---|
| 63 | 63 | |
|---|
| 64 | 64 | #include <asm/octeon/cvmx-helper-errata.h> |
|---|
| 65 | 65 | #include <asm/octeon/cvmx-helper-loop.h> |
|---|
| .. | .. |
|---|
| 69 | 69 | #include <asm/octeon/cvmx-helper-spi.h> |
|---|
| 70 | 70 | #include <asm/octeon/cvmx-helper-util.h> |
|---|
| 71 | 71 | #include <asm/octeon/cvmx-helper-xaui.h> |
|---|
| 72 | | - |
|---|
| 73 | | -/** |
|---|
| 74 | | - * cvmx_override_pko_queue_priority(int ipd_port, uint64_t |
|---|
| 75 | | - * priorities[16]) is a function pointer. It is meant to allow |
|---|
| 76 | | - * customization of the PKO queue priorities based on the port |
|---|
| 77 | | - * number. Users should set this pointer to a function before |
|---|
| 78 | | - * calling any cvmx-helper operations. |
|---|
| 79 | | - */ |
|---|
| 80 | | -extern void (*cvmx_override_pko_queue_priority) (int pko_port, |
|---|
| 81 | | - uint64_t priorities[16]); |
|---|
| 82 | | - |
|---|
| 83 | | -/** |
|---|
| 84 | | - * cvmx_override_ipd_port_setup(int ipd_port) is a function |
|---|
| 85 | | - * pointer. It is meant to allow customization of the IPD port |
|---|
| 86 | | - * setup before packet input/output comes online. It is called |
|---|
| 87 | | - * after cvmx-helper does the default IPD configuration, but |
|---|
| 88 | | - * before IPD is enabled. Users should set this pointer to a |
|---|
| 89 | | - * function before calling any cvmx-helper operations. |
|---|
| 90 | | - */ |
|---|
| 91 | | -extern void (*cvmx_override_ipd_port_setup) (int ipd_port); |
|---|
| 92 | 72 | |
|---|
| 93 | 73 | /** |
|---|
| 94 | 74 | * This function enables the IPD and also enables the packet interfaces. |
|---|
| .. | .. |
|---|
| 165 | 145 | * |
|---|
| 166 | 146 | * Returns Link state |
|---|
| 167 | 147 | */ |
|---|
| 168 | | -extern cvmx_helper_link_info_t cvmx_helper_link_get(int ipd_port); |
|---|
| 148 | +extern union cvmx_helper_link_info cvmx_helper_link_get(int ipd_port); |
|---|
| 169 | 149 | |
|---|
| 170 | 150 | /** |
|---|
| 171 | 151 | * Configure an IPD/PKO port for the specified link state. This |
|---|
| .. | .. |
|---|
| 179 | 159 | * Returns Zero on success, negative on failure |
|---|
| 180 | 160 | */ |
|---|
| 181 | 161 | extern int cvmx_helper_link_set(int ipd_port, |
|---|
| 182 | | - cvmx_helper_link_info_t link_info); |
|---|
| 162 | + union cvmx_helper_link_info link_info); |
|---|
| 183 | 163 | |
|---|
| 184 | 164 | /** |
|---|
| 185 | 165 | * This function probes an interface to determine the actual |
|---|
| .. | .. |
|---|
| 194 | 174 | */ |
|---|
| 195 | 175 | extern int cvmx_helper_interface_probe(int interface); |
|---|
| 196 | 176 | extern int cvmx_helper_interface_enumerate(int interface); |
|---|
| 197 | | - |
|---|
| 198 | | -/** |
|---|
| 199 | | - * Configure a port for internal and/or external loopback. Internal loopback |
|---|
| 200 | | - * causes packets sent by the port to be received by Octeon. External loopback |
|---|
| 201 | | - * causes packets received from the wire to sent out again. |
|---|
| 202 | | - * |
|---|
| 203 | | - * @ipd_port: IPD/PKO port to loopback. |
|---|
| 204 | | - * @enable_internal: |
|---|
| 205 | | - * Non zero if you want internal loopback |
|---|
| 206 | | - * @enable_external: |
|---|
| 207 | | - * Non zero if you want external loopback |
|---|
| 208 | | - * |
|---|
| 209 | | - * Returns Zero on success, negative on failure. |
|---|
| 210 | | - */ |
|---|
| 211 | | -extern int cvmx_helper_configure_loopback(int ipd_port, int enable_internal, |
|---|
| 212 | | - int enable_external); |
|---|
| 213 | 177 | |
|---|
| 214 | 178 | #endif /* __CVMX_HELPER_H__ */ |
|---|