/* At exit, the @ha's flags.enable_64bit_addressing set to indicated supported addressing method.  */
static void qla2x00_config_dma_addressing(struct qla_hw_data *ha)
/* At exit, the @ha's flags.enable_64bit_addressing set to indicated supported addressing method.  */
static void qla2x00_config_dma_addressing(struct qla_hw_data *ha)
{
	ha->flags.enable_64bit_addressing = 0;
	if (!dma_set_mask(&ha->pdev->dev, DMA_BIT_MASK(64))) {
		if (MSD(dma_get_required_mask(&ha->pdev->dev)) &&
		    !pci_set_consistent_dma_mask(ha->pdev, DMA_BIT_MASK(64))) {
			ha->flags.enable_64bit_addressing = 1;
			ha->isp_ops->calc_req_entries = qla2x00_calc_iocbs_64;
			ha->isp_ops->build_iocbs = qla2x00_build_scsi_iocbs_64;
			return;
		}
	}
	dma_set_mask(&ha->pdev->dev, DMA_BIT_MASK(32));
	pci_set_consistent_dma_mask(ha->pdev, DMA_BIT_MASK(32));
}