/* Allocates the command buffer. This buffer is per AMD IOMMU. We can write commands to that buffer later and the IOMMU will execute them asynchronously  */
static u8* __init alloc_command_buffer(struct amd_iommu *iommu)
/* Allocates the command buffer. This buffer is per AMD IOMMU. We can write commands to that buffer later and the IOMMU will execute them asynchronously  */
static u8* __init alloc_command_buffer(struct amd_iommu *iommu)
{
	u8 *cmd_buf = (u8 *)__get_free_pages(GFP_KERNEL | __GFP_ZERO,
			get_order(CMD_BUFFER_SIZE));
	if (cmd_buf == NULL)
		return NULL;
	iommu->cmd_buf_size = CMD_BUFFER_SIZE;
	return cmd_buf;
}