src/dpdk/drivers/net/cxgbe/base/t4_hw.c
int t4_get_version_info(struct adapter *adapter)
{
	int ret = 0;

#define FIRST_RET(__getvinfo) \
	do { \
		int __ret = __getvinfo; \
		if (__ret && !ret) \
			ret = __ret; \
	} while (0)

	FIRST_RET(t4_get_fw_version(adapter, &adapter->params.fw_vers));
	FIRST_RET(t4_get_bs_version(adapter, &adapter->params.bs_vers));
	FIRST_RET(t4_get_tp_version(adapter, &adapter->params.tp_vers));
	FIRST_RET(t4_get_exprom_version(adapter, &adapter->params.er_vers));

#undef FIRST_RET

	return ret;
}
/**
 * t4_get_version_info - extract various chip/firmware version information
 * @adapter: the adapter
 *
 * Reads various chip/firmware version numbers and stores them into the
 * adapter Adapter Parameters structure.  If any of the efforts fails
 * the first failure will be returned, but all of the version numbers
 * will be read.
 */
extract various chip/firmware version information
@adapter: the adapter

Reads various chip/firmware version numbers and stores them into the
adapter Adapter Parameters structure.  If any of the efforts fails
the first failure will be returned, but all of the version numbers
will be read.
extract various chip / firmware version information @adapter : the adapter Reads various chip / firmware version numbers and stores them into the adapter Adapter Parameters structure . If any of the efforts fails the first failure will be returned but all of the version numbers will be read .
int t4_get_version_info(struct adapter *adapter)
{
	int ret = 0;
#define FIRST_RET(__getvinfo) \
	do { \
		int __ret = __getvinfo; \
		if (__ret && !ret) \
			ret = __ret; \
	} while (0)
	FIRST_RET(t4_get_fw_version(adapter, &adapter->params.fw_vers));
	FIRST_RET(t4_get_bs_version(adapter, &adapter->params.bs_vers));
	FIRST_RET(t4_get_tp_version(adapter, &adapter->params.tp_vers));
	FIRST_RET(t4_get_exprom_version(adapter, &adapter->params.er_vers));
#undef FIRST_RET
	return ret;
}
int t4_get_version_info ( struct adapter * adapter ) { int ret = 0 ; #define FIRST_RET ( __getvinfo )  \
	do { \
		int __ret = __getvinfo; \
		if (__ret && !ret) \
			ret = __ret; \
	} while (0) FIRST_RET ( t4_get_fw_version ( adapter , & adapter -> params . fw_vers ) ) ; FIRST_RET ( t4_get_bs_version ( adapter , & adapter -> params . bs_vers ) ) ; FIRST_RET ( t4_get_tp_version ( adapter , & adapter -> params . tp_vers ) ) ; FIRST_RET ( t4_get_exprom_version ( adapter , & adapter -> params . er_vers ) ) ; #undef  FIRST_RET return ret ; }
t4_get_version_info - extract various chip/firmware version information
 @adapter: the adapter
t4_get_version_info - extract various chip / firmware version information @adapter : the adapter