X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=drivers%2Fcommon%2Fsfc_efx%2Fbase%2Fefx_mcdi.h;h=c91ea419115a9c294f214c87e96695f188593920;hb=60fb370c7bc95cdf74dd00a0ab0d779e21d71b23;hp=96f237b1b07feb2ce880abdc1f160d60d345c787;hpb=7dc01afc0e85056f73d3a14b47e16cfaf0d96192;p=dpdk.git diff --git a/drivers/common/sfc_efx/base/efx_mcdi.h b/drivers/common/sfc_efx/base/efx_mcdi.h index 96f237b1b0..c91ea41911 100644 --- a/drivers/common/sfc_efx/base/efx_mcdi.h +++ b/drivers/common/sfc_efx/base/efx_mcdi.h @@ -289,6 +289,26 @@ efx_mcdi_phy_module_get_info( __in size_t len, __out_bcount(len) uint8_t *data); +LIBEFX_INTERNAL +extern __checkReturn efx_rc_t +efx_mcdi_get_nic_addr_info( + __in efx_nic_t *enp, + __out uint32_t *mapping_typep); + +struct efx_nic_dma_region_info_s; + +LIBEFX_INTERNAL +extern __checkReturn efx_rc_t +efx_mcdi_get_nic_addr_regions( + __in efx_nic_t *enp, + __out struct efx_nic_dma_region_info_s *endrip); + +LIBEFX_INTERNAL +extern __checkReturn efx_rc_t +efx_mcdi_set_nic_addr_regions( + __in efx_nic_t *enp, + __in const struct efx_nic_dma_region_info_s *endrip); + #define MCDI_IN(_emr, _type, _ofst) \ ((_type *)((_emr).emr_in_buf + (_ofst))) @@ -315,6 +335,17 @@ efx_mcdi_phy_module_get_info( EFX_POPULATE_DWORD_1(*(MCDI_IN2(_emr, efx_dword_t, _ofst) + \ (_idx)), EFX_DWORD_0, _value) \ +#define MCDI_IN_SET_QWORD(_emr, _ofst, _value) \ + EFX_POPULATE_QWORD_2(*MCDI_IN2(_emr, efx_qword_t, _ofst), \ + EFX_DWORD_0, ((_value) & 0xffffffff), \ + EFX_DWORD_1, ((_value) >> 32)) + +#define MCDI_IN_SET_INDEXED_QWORD(_emr, _ofst, _idx, _value) \ + EFX_POPULATE_QWORD_2(*(MCDI_IN2(_emr, efx_qword_t, _ofst) + \ + (_idx)), \ + EFX_DWORD_0, ((_value) & 0xffffffff), \ + EFX_DWORD_1, ((_value) >> 32)) + #define MCDI_IN_POPULATE_DWORD_1(_emr, _ofst, _field1, _value1) \ EFX_POPULATE_DWORD_1(*MCDI_IN2(_emr, efx_dword_t, _ofst), \ MC_CMD_ ## _field1, _value1)