	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_mlx4_en_init_netdev            ## -- Begin function mlx4_en_init_netdev
	.p2align	4, 0x90
_mlx4_en_init_netdev:                   ## @mlx4_en_init_netdev
	.cfi_startproc
## %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset %rbp, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register %rbp
	pushq	%r15
	pushq	%r14
	pushq	%r13
	pushq	%r12
	pushq	%rbx
	subq	$56, %rsp
	.cfi_offset %rbx, -56
	.cfi_offset %r12, -48
	.cfi_offset %r13, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	movq	%rdx, %r12
	movl	%esi, %r13d
	movq	%rdi, %r14
	movq	_MAX_TX_RINGS@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	_MAX_RX_RINGS@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	movl	$192, %edi
	callq	_alloc_etherdev_mqs
	testq	%rax, %rax
	je	LBB0_1
## %bb.2:
	movq	%rax, %rbx
	movl	20(%r12), %esi
	movq	%rax, %rdi
	callq	_netif_set_real_num_tx_queues
	movl	16(%r12), %esi
	movq	%rbx, %rdi
	callq	_netif_set_real_num_rx_queues
	movq	8(%r14), %rax
	movq	40(%rax), %rsi
	movq	%rbx, %rdi
	callq	_SET_NETDEV_DEV
	leal	-1(%r13), %eax
	movl	%eax, (%rbx)
	movq	%rbx, %rdi
	callq	_netdev_priv
	movq	%rax, %r15
	movq	%rax, %rdi
	xorl	%esi, %esi
	movl	$192, %edx
	callq	_memset
	movq	%rbx, -48(%rbp)                 ## 8-byte Spill
	movq	%rbx, 48(%r15)
	movq	%r14, 64(%r15)
	movq	48(%r14), %rax
	movq	%rax, 184(%r15)
	movq	%r12, 176(%r15)
	movq	%r13, -88(%rbp)                 ## 8-byte Spill
	movl	%r13d, (%r15)
	movq	_MAX_TX_RINGS@GOTPCREL(%rip), %r13
	movabsq	$4294967296, %rax               ## imm = 0x100000000
	movq	%rax, 4(%r15)
	movl	24(%r12), %eax
	movl	%eax, 172(%r15)
	movq	%r14, -64(%rbp)                 ## 8-byte Spill
	movl	40(%r14), %eax
	movl	%eax, 168(%r15)
	movq	%r12, -56(%rbp)                 ## 8-byte Spill
	movl	20(%r12), %eax
	movl	%eax, 60(%r15)
	movl	(%r13), %edi
	shll	$2, %edi
	movq	_GFP_KERNEL@GOTPCREL(%rip), %rbx
	movl	(%rbx), %esi
	callq	_kzalloc
	movq	%rax, 160(%r15)
	testq	%rax, %rax
	je	LBB0_3
## %bb.4:
	movl	(%r13), %edi
	shll	$2, %edi
	movl	(%rbx), %esi
	callq	_kzalloc
	movq	%rax, 152(%r15)
	testq	%rax, %rax
	je	LBB0_3
## %bb.5:
	movq	-56(%rbp), %rax                 ## 8-byte Reload
	movl	16(%rax), %eax
	movl	%eax, 56(%r15)
	movq	-64(%rbp), %rax                 ## 8-byte Reload
	movq	8(%rax), %rax
	xorl	%ecx, %ecx
	cmpl	$64, (%rax)
	sete	%cl
	movl	%ecx, 12(%r15)
	movl	$-1, 16(%r15)
	movq	_MLX4_EN_MSG_LEVEL@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movl	%eax, 144(%r15)
	leaq	140(%r15), %rdi
	callq	_spin_lock_init
	leaq	136(%r15), %rdi
	movq	_mlx4_en_do_set_rx_mode@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	callq	_INIT_WORK
	leaq	132(%r15), %rdi
	movq	_mlx4_en_restart@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	callq	_INIT_WORK
	leaq	128(%r15), %rdi
	movq	_mlx4_en_linkstate@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	callq	_INIT_WORK
	leaq	32(%r15), %rdi
	movq	_mlx4_en_do_get_stats@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	%rdi, -80(%rbp)                 ## 8-byte Spill
	callq	_INIT_DELAYED_WORK
	leaq	28(%r15), %rdi
	movq	_mlx4_en_service_task@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	%rdi, -72(%rbp)                 ## 8-byte Spill
	callq	_INIT_DELAYED_WORK
	movq	_MLX4_EN_MAC_HASH_SIZE@GOTPCREL(%rip), %r14
	cmpl	$0, (%r14)
	jle	LBB0_8
## %bb.6:
	xorl	%r13d, %r13d
	xorl	%ebx, %ebx
	.p2align	4, 0x90
LBB0_7:                                 ## =>This Inner Loop Header: Depth=1
	movq	120(%r15), %rdi
	addq	%r13, %rdi
	callq	_INIT_HLIST_HEAD
	incq	%rbx
	movslq	(%r14), %rax
	addq	$4, %r13
	cmpq	%rax, %rbx
	jl	LBB0_7
LBB0_8:
	movq	-64(%rbp), %r12                 ## 8-byte Reload
	movq	8(%r12), %rax
	movq	32(%rax), %rcx
	movslq	(%r15), %rdx
	movl	(%rcx,%rdx,4), %ecx
	movl	%ecx, 112(%r15)
	movq	_ETH_ALEN@GOTPCREL(%rip), %rcx
	movl	(%rcx), %ecx
	movq	-48(%rbp), %rbx                 ## 8-byte Reload
	movl	%ecx, 28(%rbx)
	movl	24(%rbx), %edi
	movq	24(%rax), %rax
	movl	(%rax,%rdx,4), %esi
	callq	_mlx4_en_u64_to_mac
	movl	24(%rbx), %edi
	callq	_is_valid_ether_addr
	testl	%eax, %eax
	jne	LBB0_11
## %bb.9:
	movq	64(%r15), %rax
	movq	8(%rax), %rdi
	callq	_mlx4_is_slave
	testq	%rax, %rax
	je	LBB0_31
## %bb.10:
	movq	%rbx, %rdi
	callq	_eth_hw_addr_random
	movl	24(%rbx), %edx
	leaq	L_.str.1(%rip), %rsi
	movq	%r15, %rdi
	xorl	%eax, %eax
	callq	_en_warn
	movl	24(%rbx), %edi
	callq	_mlx4_en_mac_to_u64
	movq	8(%r12), %rcx
	movq	24(%rcx), %rcx
	movslq	(%r15), %rdx
	movl	%eax, (%rcx,%rdx,4)
LBB0_11:
	movl	108(%r15), %edi
	movl	24(%rbx), %esi
	movl	$4, %edx
	callq	_memcpy
	movq	_DS_SIZE@GOTPCREL(%rip), %rax
	movq	_MLX4_EN_MAX_RX_FRAGS@GOTPCREL(%rip), %rcx
	movl	(%rcx), %edi
	imull	(%rax), %edi
	addl	$4, %edi
	callq	_roundup_pow_of_two
	movl	%eax, 104(%r15)
	movq	%r15, %rdi
	callq	_mlx4_en_alloc_resources
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	LBB0_33
## %bb.12:
	movq	$0, 88(%r15)
	movq	_HWTSTAMP_TX_OFF@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movl	%eax, 84(%r15)
	movq	_HWTSTAMP_FILTER_NONE@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movl	%eax, 80(%r15)
	movq	8(%r12), %rdi
	movq	%r15, %rsi
	addq	$72, %rsi
	movq	_MLX4_EN_PAGE_SIZE@GOTPCREL(%rip), %rax
	movl	(%rax), %ecx
	movl	%ecx, %edx
	callq	_mlx4_alloc_hwq_res
	testl	%eax, %eax
	je	LBB0_14
## %bb.13:
	movl	%eax, %ebx
	leaq	L_.str.3(%rip), %rsi
	movq	%r15, %rdi
	xorl	%eax, %eax
	callq	_en_err
	jmp	LBB0_33
LBB0_3:
	movq	_ENOMEM@GOTPCREL(%rip), %rax
	xorl	%ebx, %ebx
LBB0_32:
	subl	(%rax), %ebx
LBB0_33:
	movq	-48(%rbp), %rdi                 ## 8-byte Reload
	callq	_mlx4_en_destroy_netdev
	jmp	LBB0_34
LBB0_1:
	leaq	L_.str(%rip), %rsi
	movq	%r14, %rdi
	callq	_mlx4_err
	movq	_ENOMEM@GOTPCREL(%rip), %rax
	xorl	%ebx, %ebx
	subl	(%rax), %ebx
LBB0_34:
	movl	%ebx, %eax
	addq	$56, %rsp
	popq	%rbx
	popq	%r12
	popq	%r13
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
LBB0_31:
	movl	(%r15), %edx
	movl	24(%rbx), %ecx
	leaq	L_.str.2(%rip), %rsi
	xorl	%ebx, %ebx
	movq	%r15, %rdi
	xorl	%eax, %eax
	callq	_en_err
	movq	_EINVAL@GOTPCREL(%rip), %rax
	jmp	LBB0_32
LBB0_14:
	movl	$1, 20(%r15)
	movq	64(%r15), %rax
	movq	8(%rax), %rdi
	callq	_mlx4_is_master
	testq	%rax, %rax
	jne	LBB0_15
## %bb.16:
	movq	_mlx4_netdev_ops@GOTPCREL(%rip), %rax
	jmp	LBB0_17
LBB0_15:
	movq	_mlx4_netdev_ops_master@GOTPCREL(%rip), %rax
LBB0_17:
	movq	-48(%rbp), %r13                 ## 8-byte Reload
	movq	%rax, 16(%r13)
	movq	_MLX4_EN_WATCHDOG_TIMEOUT@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movl	%eax, 12(%r13)
	movl	60(%r15), %esi
	movq	%r13, %rdi
	callq	_netif_set_real_num_tx_queues
	movl	56(%r15), %esi
	movq	%r13, %rdi
	callq	_netif_set_real_num_rx_queues
	cmpq	$0, 32(%r12)
	je	LBB0_19
## %bb.18:
	movq	_MLX4_EN_NUM_UP@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	%r13, %rdi
	callq	_mlx4_en_setup_tc
LBB0_19:
	movq	_mlx4_en_ethtool_ops@GOTPCREL(%rip), %rsi
	movq	%r13, %rdi
	callq	_SET_ETHTOOL_OPS
	movq	_mlx4_en_ethtool_ops_ext@GOTPCREL(%rip), %rsi
	movq	%r13, %rdi
	callq	_set_ethtool_ops_ext
	movq	_NETIF_F_SG@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	movl	4(%r13), %eax
	orl	%edx, %eax
	orl	8(%r13), %edx
	movq	_NETIF_F_IP_CSUM@GOTPCREL(%rip), %rsi
	movq	_NETIF_F_IPV6_CSUM@GOTPCREL(%rip), %rcx
	movl	(%rcx), %ecx
	orl	(%rsi), %ecx
	orl	%ecx, %eax
	orl	%edx, %ecx
	movl	%ecx, 8(%r13)
	movq	_NETIF_F_RXHASH@GOTPCREL(%rip), %rdx
	orl	(%rdx), %eax
	movq	_NETIF_F_HIGHDMA@GOTPCREL(%rip), %rdx
	orl	(%rdx), %eax
	movq	_NETIF_F_HW_VLAN_TX@GOTPCREL(%rip), %rdx
	movq	_NETIF_F_HW_VLAN_RX@GOTPCREL(%rip), %rsi
	movq	_NETIF_F_HW_VLAN_FILTER@GOTPCREL(%rip), %rdi
	orl	(%rdx), %eax
	orl	(%rsi), %eax
	orl	(%rdi), %eax
	movq	_NETIF_F_GRO@GOTPCREL(%rip), %rdx
	orl	(%rdx), %eax
	movl	%eax, 4(%r13)
	cmpq	$0, 24(%r12)
	je	LBB0_21
## %bb.20:
	movq	_NETIF_F_TSO@GOTPCREL(%rip), %rdx
	movl	(%rdx), %edx
	orl	%edx, %eax
	movq	_NETIF_F_TSO6@GOTPCREL(%rip), %rsi
	movl	(%rsi), %esi
	orl	%esi, %eax
	movl	%eax, 4(%r13)
	orl	%edx, %ecx
	orl	%esi, %ecx
	movl	%ecx, 8(%r13)
LBB0_21:
	movq	8(%r12), %rcx
	movq	8(%rcx), %rcx
	movq	_MLX4_STEERING_MODE_DEVICE_MANAGED@GOTPCREL(%rip), %rdx
	cmpq	(%rdx), %rcx
	jne	LBB0_23
## %bb.22:
	movq	_NETIF_F_NTUPLE@GOTPCREL(%rip), %rcx
	orl	(%rcx), %eax
	movl	%eax, 4(%r13)
LBB0_23:
	movq	16(%r12), %rax
	movq	-88(%rbp), %r14                 ## 8-byte Reload
	movslq	%r14d, %rcx
	movq	%r13, (%rax,%rcx,8)
	movq	%r13, %rdi
	callq	_netif_carrier_off
	movq	%r15, %rdi
	callq	_mlx4_en_set_default_moderation
	movq	%r13, %rdi
	callq	_register_netdev
	testl	%eax, %eax
	je	LBB0_25
## %bb.24:
	movl	%eax, %ebx
	leaq	L_.str.4(%rip), %rsi
	movq	%r15, %rdi
	movl	%r14d, %edx
	xorl	%eax, %eax
	callq	_en_err
	jmp	LBB0_33
LBB0_25:
	movl	$1, 24(%r15)
	movq	-56(%rbp), %r14                 ## 8-byte Reload
	movl	20(%r14), %edx
	leaq	L_.str.5(%rip), %rsi
	movq	%r15, %rdi
	xorl	%eax, %eax
	callq	_en_warn
	movl	16(%r14), %edx
	leaq	L_.str.6(%rip), %rsi
	movq	%r15, %rdi
	xorl	%eax, %eax
	callq	_en_warn
	movq	48(%r15), %rdi
	movl	4(%rdi), %esi
	callq	_mlx4_en_update_loopback_state
	movq	%r13, %rdi
	callq	_mlx4_en_calc_rx_buf
	movq	8(%r12), %rdi
	movslq	(%r15), %rsi
	movq	_ETH_FCS_LEN@GOTPCREL(%rip), %rax
	movq	(%rax), %rdx
	addq	40(%r15), %rdx
	movl	12(%r14), %ecx
	movl	8(%r14), %r8d
	movl	(%r14), %eax
	movl	4(%r14), %r9d
	movl	%eax, (%rsp)
	callq	_mlx4_SET_PORT_general
	testl	%eax, %eax
	je	LBB0_27
## %bb.26:
	movl	%eax, %ebx
	movl	(%r15), %edx
	leaq	L_.str.7(%rip), %rsi
	movq	%r15, %rdi
	movl	%eax, %ecx
	xorl	%eax, %eax
	callq	_en_err
	jmp	LBB0_33
LBB0_27:
	leaq	L_.str.8(%rip), %rsi
	xorl	%ebx, %ebx
	movq	%r15, %rdi
	xorl	%eax, %eax
	callq	_en_warn
	movq	8(%r12), %rdi
	movslq	(%r15), %rsi
	callq	_mlx4_INIT_PORT
	testl	%eax, %eax
	je	LBB0_29
## %bb.28:
	movl	%eax, %r12d
	leaq	L_.str.9(%rip), %rsi
	movq	%r15, %rdi
	xorl	%eax, %eax
	callq	_en_err
	movl	%r12d, %ebx
	jmp	LBB0_33
LBB0_29:
	movq	%r12, %r14
	movq	%r15, %rdi
	callq	_mlx4_en_set_default_moderation
	movl	(%r12), %edi
	movq	_STATS_DELAY@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	movq	-80(%rbp), %rsi                 ## 8-byte Reload
	callq	_queue_delayed_work
	movq	8(%r12), %rax
	movq	_MLX4_DEV_CAP_FLAG2_TS@GOTPCREL(%rip), %rcx
	movl	(%rcx), %ecx
	testl	%ecx, 16(%rax)
	je	LBB0_34
## %bb.30:
	movl	(%r14), %edi
	movq	_SERVICE_TASK_DELAY@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	movq	-72(%rbp), %rsi                 ## 8-byte Reload
	callq	_queue_delayed_work
	jmp	LBB0_34
	.cfi_endproc
                                        ## -- End function
	.comm	_MAX_TX_RINGS,4,2               ## @MAX_TX_RINGS
	.comm	_MAX_RX_RINGS,4,2               ## @MAX_RX_RINGS
	.section	__TEXT,__cstring,cstring_literals
L_.str:                                 ## @.str
	.asciz	"Net device allocation failed\n"

	.comm	_ENOMEM,4,2                     ## @ENOMEM
	.comm	_GFP_KERNEL,4,2                 ## @GFP_KERNEL
	.comm	_MLX4_EN_MSG_LEVEL,4,2          ## @MLX4_EN_MSG_LEVEL
	.comm	_mlx4_en_do_set_rx_mode,4,2     ## @mlx4_en_do_set_rx_mode
	.comm	_mlx4_en_restart,4,2            ## @mlx4_en_restart
	.comm	_mlx4_en_linkstate,4,2          ## @mlx4_en_linkstate
	.comm	_mlx4_en_do_get_stats,4,2       ## @mlx4_en_do_get_stats
	.comm	_mlx4_en_service_task,4,2       ## @mlx4_en_service_task
	.comm	_MLX4_EN_MAC_HASH_SIZE,4,2      ## @MLX4_EN_MAC_HASH_SIZE
	.comm	_ETH_ALEN,4,2                   ## @ETH_ALEN
L_.str.1:                               ## @.str.1
	.asciz	"Assigned random MAC address %pM\n"

L_.str.2:                               ## @.str.2
	.asciz	"Port: %d, invalid mac burned: %pM, quiting\n"

	.comm	_EINVAL,4,2                     ## @EINVAL
	.comm	_DS_SIZE,4,2                    ## @DS_SIZE
	.comm	_MLX4_EN_MAX_RX_FRAGS,4,2       ## @MLX4_EN_MAX_RX_FRAGS
	.comm	_HWTSTAMP_TX_OFF,4,2            ## @HWTSTAMP_TX_OFF
	.comm	_HWTSTAMP_FILTER_NONE,4,2       ## @HWTSTAMP_FILTER_NONE
	.comm	_MLX4_EN_PAGE_SIZE,4,2          ## @MLX4_EN_PAGE_SIZE
L_.str.3:                               ## @.str.3
	.asciz	"Failed to allocate page for rx qps\n"

	.comm	_mlx4_netdev_ops_master,4,2     ## @mlx4_netdev_ops_master
	.comm	_mlx4_netdev_ops,4,2            ## @mlx4_netdev_ops
	.comm	_MLX4_EN_WATCHDOG_TIMEOUT,4,2   ## @MLX4_EN_WATCHDOG_TIMEOUT
	.comm	_MLX4_EN_NUM_UP,4,2             ## @MLX4_EN_NUM_UP
	.comm	_mlx4_en_ethtool_ops,4,2        ## @mlx4_en_ethtool_ops
	.comm	_mlx4_en_ethtool_ops_ext,4,2    ## @mlx4_en_ethtool_ops_ext
	.comm	_NETIF_F_SG,4,2                 ## @NETIF_F_SG
	.comm	_NETIF_F_IP_CSUM,4,2            ## @NETIF_F_IP_CSUM
	.comm	_NETIF_F_IPV6_CSUM,4,2          ## @NETIF_F_IPV6_CSUM
	.comm	_NETIF_F_RXHASH,4,2             ## @NETIF_F_RXHASH
	.comm	_NETIF_F_HIGHDMA,4,2            ## @NETIF_F_HIGHDMA
	.comm	_NETIF_F_HW_VLAN_TX,4,2         ## @NETIF_F_HW_VLAN_TX
	.comm	_NETIF_F_HW_VLAN_RX,4,2         ## @NETIF_F_HW_VLAN_RX
	.comm	_NETIF_F_HW_VLAN_FILTER,4,2     ## @NETIF_F_HW_VLAN_FILTER
	.comm	_NETIF_F_GRO,4,2                ## @NETIF_F_GRO
	.comm	_NETIF_F_TSO,4,2                ## @NETIF_F_TSO
	.comm	_NETIF_F_TSO6,4,2               ## @NETIF_F_TSO6
	.comm	_MLX4_STEERING_MODE_DEVICE_MANAGED,8,3 ## @MLX4_STEERING_MODE_DEVICE_MANAGED
	.comm	_NETIF_F_NTUPLE,4,2             ## @NETIF_F_NTUPLE
L_.str.4:                               ## @.str.4
	.asciz	"Netdev registration failed for port %d\n"

L_.str.5:                               ## @.str.5
	.asciz	"Using %d TX rings\n"

L_.str.6:                               ## @.str.6
	.asciz	"Using %d RX rings\n"

	.comm	_ETH_FCS_LEN,8,3                ## @ETH_FCS_LEN
L_.str.7:                               ## @.str.7
	.asciz	"Failed setting port general configurations for port %d, with error %d\n"

L_.str.8:                               ## @.str.8
	.asciz	"Initializing port\n"

L_.str.9:                               ## @.str.9
	.asciz	"Failed Initializing port\n"

	.comm	_STATS_DELAY,4,2                ## @STATS_DELAY
	.comm	_MLX4_DEV_CAP_FLAG2_TS,4,2      ## @MLX4_DEV_CAP_FLAG2_TS
	.comm	_SERVICE_TASK_DELAY,4,2         ## @SERVICE_TASK_DELAY
	.comm	_MLX4_DEV_CAP_FLAG_SET_ETH_SCHED,4,2 ## @MLX4_DEV_CAP_FLAG_SET_ETH_SCHED
	.comm	_mlx4_en_dcbnl_ops,4,2          ## @mlx4_en_dcbnl_ops
	.comm	_mlx4_en_dcbnl_pfc_ops,4,2      ## @mlx4_en_dcbnl_pfc_ops
	.comm	_mlx4_en_filter_rfs,4,2         ## @mlx4_en_filter_rfs
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.section	__TEXT,__literal8,8byte_literals
	.p2align	3                               ; -- Begin function mlx4_en_init_netdev
lCPI0_0:
	.long	0                               ; 0x0
	.long	1                               ; 0x1
	.section	__TEXT,__text,regular,pure_instructions
	.globl	_mlx4_en_init_netdev
	.p2align	2
_mlx4_en_init_netdev:                   ; @mlx4_en_init_netdev
	.cfi_startproc
; %bb.0:
	sub	sp, sp, #112
	.cfi_def_cfa_offset 112
	stp	x28, x27, [sp, #16]             ; 16-byte Folded Spill
	stp	x26, x25, [sp, #32]             ; 16-byte Folded Spill
	stp	x24, x23, [sp, #48]             ; 16-byte Folded Spill
	stp	x22, x21, [sp, #64]             ; 16-byte Folded Spill
	stp	x20, x19, [sp, #80]             ; 16-byte Folded Spill
	stp	x29, x30, [sp, #96]             ; 16-byte Folded Spill
	add	x29, sp, #96
	.cfi_def_cfa w29, 16
	.cfi_offset w30, -8
	.cfi_offset w29, -16
	.cfi_offset w19, -24
	.cfi_offset w20, -32
	.cfi_offset w21, -40
	.cfi_offset w22, -48
	.cfi_offset w23, -56
	.cfi_offset w24, -64
	.cfi_offset w25, -72
	.cfi_offset w26, -80
	.cfi_offset w27, -88
	.cfi_offset w28, -96
	mov	x22, x2
	mov	x23, x1
	mov	x20, x0
Lloh0:
	adrp	x24, _MAX_TX_RINGS@GOTPAGE
Lloh1:
	ldr	x24, [x24, _MAX_TX_RINGS@GOTPAGEOFF]
	ldr	w1, [x24]
Lloh2:
	adrp	x8, _MAX_RX_RINGS@GOTPAGE
Lloh3:
	ldr	x8, [x8, _MAX_RX_RINGS@GOTPAGEOFF]
Lloh4:
	ldr	w2, [x8]
	mov	w0, #192
	bl	_alloc_etherdev_mqs
	cbz	x0, LBB0_15
; %bb.1:
	mov	x19, x0
	ldr	w1, [x22, #20]
	bl	_netif_set_real_num_tx_queues
	ldr	w1, [x22, #16]
	mov	x0, x19
	bl	_netif_set_real_num_rx_queues
	ldr	x8, [x20, #8]
	ldr	x1, [x8, #40]
	mov	x0, x19
	bl	_SET_NETDEV_DEV
	sub	w8, w23, #1
	str	w8, [x19]
	mov	x0, x19
	bl	_netdev_priv
	mov	x21, x0
	mov	w1, #0
	mov	w2, #192
	bl	_memset
	str	x19, [x21, #48]
	str	x20, [x21, #64]
	ldr	x8, [x20, #48]
	stp	x22, x8, [x21, #176]
	str	w23, [x21]
Lloh5:
	adrp	x8, lCPI0_0@PAGE
Lloh6:
	ldr	d0, [x8, lCPI0_0@PAGEOFF]
	stur	d0, [x21, #4]
	ldr	w8, [x20, #40]
	ldp	w10, w9, [x22, #20]
	stp	w8, w9, [x21, #168]
	str	w10, [x21, #60]
	ldr	w8, [x24]
	lsl	w0, w8, #2
Lloh7:
	adrp	x25, _GFP_KERNEL@GOTPAGE
Lloh8:
	ldr	x25, [x25, _GFP_KERNEL@GOTPAGEOFF]
	ldr	w1, [x25]
	bl	_kzalloc
	str	x0, [x21, #160]
	cbz	x0, LBB0_12
; %bb.2:
	ldr	w8, [x24]
	lsl	w0, w8, #2
	ldr	w1, [x25]
	bl	_kzalloc
	str	x0, [x21, #152]
	cbz	x0, LBB0_12
; %bb.3:
	ldr	w8, [x22, #16]
	str	w8, [x21, #56]
	ldr	x8, [x20, #8]
	ldr	w8, [x8]
	cmp	w8, #64
	cset	w8, eq
	mov	w9, #-1
	stp	w8, w9, [x21, #12]
Lloh9:
	adrp	x8, _MLX4_EN_MSG_LEVEL@GOTPAGE
Lloh10:
	ldr	x8, [x8, _MLX4_EN_MSG_LEVEL@GOTPAGEOFF]
Lloh11:
	ldr	w8, [x8]
	str	w8, [x21, #144]
	add	x0, x21, #140
	bl	_spin_lock_init
	add	x0, x21, #136
Lloh12:
	adrp	x8, _mlx4_en_do_set_rx_mode@GOTPAGE
Lloh13:
	ldr	x8, [x8, _mlx4_en_do_set_rx_mode@GOTPAGEOFF]
Lloh14:
	ldr	w1, [x8]
	bl	_INIT_WORK
	add	x0, x21, #132
Lloh15:
	adrp	x8, _mlx4_en_restart@GOTPAGE
Lloh16:
	ldr	x8, [x8, _mlx4_en_restart@GOTPAGEOFF]
Lloh17:
	ldr	w1, [x8]
	bl	_INIT_WORK
	add	x0, x21, #128
Lloh18:
	adrp	x8, _mlx4_en_linkstate@GOTPAGE
Lloh19:
	ldr	x8, [x8, _mlx4_en_linkstate@GOTPAGEOFF]
Lloh20:
	ldr	w1, [x8]
	bl	_INIT_WORK
	add	x25, x21, #32
Lloh21:
	adrp	x8, _mlx4_en_do_get_stats@GOTPAGE
Lloh22:
	ldr	x8, [x8, _mlx4_en_do_get_stats@GOTPAGEOFF]
Lloh23:
	ldr	w1, [x8]
	mov	x0, x25
	bl	_INIT_DELAYED_WORK
	add	x24, x21, #28
Lloh24:
	adrp	x8, _mlx4_en_service_task@GOTPAGE
Lloh25:
	ldr	x8, [x8, _mlx4_en_service_task@GOTPAGEOFF]
Lloh26:
	ldr	w1, [x8]
	mov	x0, x24
	bl	_INIT_DELAYED_WORK
Lloh27:
	adrp	x26, _MLX4_EN_MAC_HASH_SIZE@GOTPAGE
Lloh28:
	ldr	x26, [x26, _MLX4_EN_MAC_HASH_SIZE@GOTPAGEOFF]
	ldr	w8, [x26]
	cmp	w8, #1
	b.lt	LBB0_6
; %bb.4:
	mov	x27, #0
	mov	x28, #0
LBB0_5:                                 ; =>This Inner Loop Header: Depth=1
	ldr	x8, [x21, #120]
	add	x0, x8, x27
	bl	_INIT_HLIST_HEAD
	add	x28, x28, #1
	ldrsw	x8, [x26]
	add	x27, x27, #4
	cmp	x28, x8
	b.lt	LBB0_5
LBB0_6:
	ldr	x8, [x20, #8]
	ldrsw	x9, [x21]
	lsl	x9, x9, #2
	ldp	x8, x10, [x8, #24]
	ldr	w10, [x10, x9]
Lloh29:
	adrp	x11, _ETH_ALEN@GOTPAGE
Lloh30:
	ldr	x11, [x11, _ETH_ALEN@GOTPAGEOFF]
	str	w10, [x21, #112]
Lloh31:
	ldr	w10, [x11]
	str	w10, [x19, #28]
	ldr	w0, [x19, #24]
	ldr	w1, [x8, x9]
	bl	_mlx4_en_u64_to_mac
	ldr	w0, [x19, #24]
	bl	_is_valid_ether_addr
	cbnz	w0, LBB0_9
; %bb.7:
	ldr	x8, [x21, #64]
	ldr	x0, [x8, #8]
	bl	_mlx4_is_slave
	cbz	x0, LBB0_17
; %bb.8:
	mov	x0, x19
	bl	_eth_hw_addr_random
	ldr	w8, [x19, #24]
	str	x8, [sp]
Lloh32:
	adrp	x1, l_.str.1@PAGE
Lloh33:
	add	x1, x1, l_.str.1@PAGEOFF
	mov	x0, x21
	bl	_en_warn
	ldr	w0, [x19, #24]
	bl	_mlx4_en_mac_to_u64
	ldr	x8, [x20, #8]
	ldr	x8, [x8, #24]
	ldrsw	x9, [x21]
	str	w0, [x8, x9, lsl #2]
LBB0_9:
	ldr	w0, [x21, #108]
	ldr	w1, [x19, #24]
	mov	w2, #4
	bl	_memcpy
Lloh34:
	adrp	x8, _DS_SIZE@GOTPAGE
Lloh35:
	ldr	x8, [x8, _DS_SIZE@GOTPAGEOFF]
Lloh36:
	ldr	w8, [x8]
Lloh37:
	adrp	x9, _MLX4_EN_MAX_RX_FRAGS@GOTPAGE
Lloh38:
	ldr	x9, [x9, _MLX4_EN_MAX_RX_FRAGS@GOTPAGEOFF]
Lloh39:
	ldr	w9, [x9]
	orr	w10, wzr, #0x4
	madd	w0, w9, w8, w10
	bl	_roundup_pow_of_two
	str	w0, [x21, #104]
	mov	x0, x21
	bl	_mlx4_en_alloc_resources
	mov	x26, x0
	cbnz	w0, LBB0_14
; %bb.10:
Lloh40:
	adrp	x8, _HWTSTAMP_TX_OFF@GOTPAGE
Lloh41:
	ldr	x8, [x8, _HWTSTAMP_TX_OFF@GOTPAGEOFF]
	str	xzr, [x21, #88]
Lloh42:
	ldr	w8, [x8]
Lloh43:
	adrp	x9, _HWTSTAMP_FILTER_NONE@GOTPAGE
Lloh44:
	ldr	x9, [x9, _HWTSTAMP_FILTER_NONE@GOTPAGEOFF]
Lloh45:
	ldr	w9, [x9]
	stp	w9, w8, [x21, #80]
	ldr	x0, [x20, #8]
	add	x1, x21, #72
Lloh46:
	adrp	x8, _MLX4_EN_PAGE_SIZE@GOTPAGE
Lloh47:
	ldr	x8, [x8, _MLX4_EN_PAGE_SIZE@GOTPAGEOFF]
Lloh48:
	ldr	w2, [x8]
	mov	x3, x2
	bl	_mlx4_alloc_hwq_res
	cbz	w0, LBB0_18
; %bb.11:
	mov	x26, x0
Lloh49:
	adrp	x1, l_.str.3@PAGE
Lloh50:
	add	x1, x1, l_.str.3@PAGEOFF
	b	LBB0_30
LBB0_12:
Lloh51:
	adrp	x8, _ENOMEM@GOTPAGE
Lloh52:
	ldr	x8, [x8, _ENOMEM@GOTPAGEOFF]
LBB0_13:
	ldr	w8, [x8]
	neg	w26, w8
LBB0_14:
	mov	x0, x19
	bl	_mlx4_en_destroy_netdev
	b	LBB0_16
LBB0_15:
Lloh53:
	adrp	x1, l_.str@PAGE
Lloh54:
	add	x1, x1, l_.str@PAGEOFF
	mov	x0, x20
	bl	_mlx4_err
Lloh55:
	adrp	x8, _ENOMEM@GOTPAGE
Lloh56:
	ldr	x8, [x8, _ENOMEM@GOTPAGEOFF]
Lloh57:
	ldr	w8, [x8]
	neg	w26, w8
LBB0_16:
	mov	x0, x26
	ldp	x29, x30, [sp, #96]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #80]             ; 16-byte Folded Reload
	ldp	x22, x21, [sp, #64]             ; 16-byte Folded Reload
	ldp	x24, x23, [sp, #48]             ; 16-byte Folded Reload
	ldp	x26, x25, [sp, #32]             ; 16-byte Folded Reload
	ldp	x28, x27, [sp, #16]             ; 16-byte Folded Reload
	add	sp, sp, #112
	ret
LBB0_17:
	ldr	w8, [x21]
	ldr	w9, [x19, #24]
	stp	x8, x9, [sp]
Lloh58:
	adrp	x1, l_.str.2@PAGE
Lloh59:
	add	x1, x1, l_.str.2@PAGEOFF
	mov	x0, x21
	bl	_en_err
Lloh60:
	adrp	x8, _EINVAL@GOTPAGE
Lloh61:
	ldr	x8, [x8, _EINVAL@GOTPAGEOFF]
	b	LBB0_13
LBB0_18:
	mov	w8, #1
	str	w8, [x21, #20]
	ldr	x8, [x21, #64]
	ldr	x0, [x8, #8]
	bl	_mlx4_is_master
Lloh62:
	adrp	x8, _mlx4_netdev_ops_master@GOTPAGE
Lloh63:
	ldr	x8, [x8, _mlx4_netdev_ops_master@GOTPAGEOFF]
Lloh64:
	adrp	x9, _mlx4_netdev_ops@GOTPAGE
Lloh65:
	ldr	x9, [x9, _mlx4_netdev_ops@GOTPAGEOFF]
	cmp	x0, #0
	csel	x8, x9, x8, eq
	str	x8, [x19, #16]
Lloh66:
	adrp	x8, _MLX4_EN_WATCHDOG_TIMEOUT@GOTPAGE
Lloh67:
	ldr	x8, [x8, _MLX4_EN_WATCHDOG_TIMEOUT@GOTPAGEOFF]
Lloh68:
	ldr	w8, [x8]
	str	w8, [x19, #12]
	ldr	w1, [x21, #60]
	mov	x0, x19
	bl	_netif_set_real_num_tx_queues
	ldr	w1, [x21, #56]
	mov	x0, x19
	bl	_netif_set_real_num_rx_queues
	ldr	x8, [x20, #32]
	cbz	x8, LBB0_20
; %bb.19:
Lloh69:
	adrp	x8, _MLX4_EN_NUM_UP@GOTPAGE
Lloh70:
	ldr	x8, [x8, _MLX4_EN_NUM_UP@GOTPAGEOFF]
Lloh71:
	ldr	w1, [x8]
	mov	x0, x19
	bl	_mlx4_en_setup_tc
LBB0_20:
Lloh72:
	adrp	x1, _mlx4_en_ethtool_ops@GOTPAGE
Lloh73:
	ldr	x1, [x1, _mlx4_en_ethtool_ops@GOTPAGEOFF]
	mov	x0, x19
	bl	_SET_ETHTOOL_OPS
Lloh74:
	adrp	x1, _mlx4_en_ethtool_ops_ext@GOTPAGE
Lloh75:
	ldr	x1, [x1, _mlx4_en_ethtool_ops_ext@GOTPAGEOFF]
	mov	x0, x19
	bl	_set_ethtool_ops_ext
Lloh76:
	adrp	x8, _NETIF_F_SG@GOTPAGE
Lloh77:
	ldr	x8, [x8, _NETIF_F_SG@GOTPAGEOFF]
Lloh78:
	ldr	w8, [x8]
	ldp	w9, w10, [x19, #4]
	orr	w9, w9, w8
	orr	w8, w10, w8
Lloh79:
	adrp	x10, _NETIF_F_IP_CSUM@GOTPAGE
Lloh80:
	ldr	x10, [x10, _NETIF_F_IP_CSUM@GOTPAGEOFF]
Lloh81:
	ldr	w10, [x10]
Lloh82:
	adrp	x11, _NETIF_F_IPV6_CSUM@GOTPAGE
Lloh83:
	ldr	x11, [x11, _NETIF_F_IPV6_CSUM@GOTPAGEOFF]
Lloh84:
	ldr	w11, [x11]
	orr	w10, w11, w10
	orr	w9, w10, w9
	orr	w8, w10, w8
Lloh85:
	adrp	x10, _NETIF_F_RXHASH@GOTPAGE
Lloh86:
	ldr	x10, [x10, _NETIF_F_RXHASH@GOTPAGEOFF]
Lloh87:
	ldr	w10, [x10]
	orr	w9, w10, w9
Lloh88:
	adrp	x10, _NETIF_F_HIGHDMA@GOTPAGE
Lloh89:
	ldr	x10, [x10, _NETIF_F_HIGHDMA@GOTPAGEOFF]
Lloh90:
	ldr	w10, [x10]
Lloh91:
	adrp	x11, _NETIF_F_HW_VLAN_TX@GOTPAGE
Lloh92:
	ldr	x11, [x11, _NETIF_F_HW_VLAN_TX@GOTPAGEOFF]
	orr	w9, w10, w9
Lloh93:
	ldr	w10, [x11]
Lloh94:
	adrp	x11, _NETIF_F_HW_VLAN_RX@GOTPAGE
Lloh95:
	ldr	x11, [x11, _NETIF_F_HW_VLAN_RX@GOTPAGEOFF]
Lloh96:
	adrp	x12, _NETIF_F_HW_VLAN_FILTER@GOTPAGE
Lloh97:
	ldr	x12, [x12, _NETIF_F_HW_VLAN_FILTER@GOTPAGEOFF]
Lloh98:
	ldr	w11, [x11]
Lloh99:
	ldr	w12, [x12]
	orr	w9, w10, w9
	orr	w9, w9, w11
Lloh100:
	adrp	x10, _NETIF_F_GRO@GOTPAGE
Lloh101:
	ldr	x10, [x10, _NETIF_F_GRO@GOTPAGEOFF]
	orr	w9, w9, w12
Lloh102:
	ldr	w10, [x10]
	orr	w9, w9, w10
	stp	w9, w8, [x19, #4]
	ldr	x10, [x20, #24]
	cbz	x10, LBB0_22
; %bb.21:
Lloh103:
	adrp	x10, _NETIF_F_TSO@GOTPAGE
Lloh104:
	ldr	x10, [x10, _NETIF_F_TSO@GOTPAGEOFF]
Lloh105:
	ldr	w10, [x10]
	orr	w9, w10, w9
Lloh106:
	adrp	x11, _NETIF_F_TSO6@GOTPAGE
Lloh107:
	ldr	x11, [x11, _NETIF_F_TSO6@GOTPAGEOFF]
Lloh108:
	ldr	w11, [x11]
	orr	w9, w11, w9
	orr	w8, w10, w8
	orr	w8, w8, w11
	stp	w9, w8, [x19, #4]
LBB0_22:
	ldr	x8, [x20, #8]
	ldr	x8, [x8, #8]
Lloh109:
	adrp	x10, _MLX4_STEERING_MODE_DEVICE_MANAGED@GOTPAGE
Lloh110:
	ldr	x10, [x10, _MLX4_STEERING_MODE_DEVICE_MANAGED@GOTPAGEOFF]
Lloh111:
	ldr	x10, [x10]
	cmp	x8, x10
	b.ne	LBB0_24
; %bb.23:
Lloh112:
	adrp	x8, _NETIF_F_NTUPLE@GOTPAGE
Lloh113:
	ldr	x8, [x8, _NETIF_F_NTUPLE@GOTPAGEOFF]
Lloh114:
	ldr	w8, [x8]
	orr	w8, w9, w8
	str	w8, [x19, #4]
LBB0_24:
	ldr	x8, [x20, #16]
	str	x19, [x8, w23, sxtw #3]
	mov	x0, x19
	bl	_netif_carrier_off
	mov	x0, x21
	bl	_mlx4_en_set_default_moderation
	mov	x0, x19
	bl	_register_netdev
	cbz	w0, LBB0_26
; %bb.25:
	mov	x26, x0
	str	x23, [sp]
Lloh115:
	adrp	x1, l_.str.4@PAGE
Lloh116:
	add	x1, x1, l_.str.4@PAGEOFF
	b	LBB0_30
LBB0_26:
	mov	w8, #1
	str	w8, [x21, #24]
	ldr	w8, [x22, #20]
	str	x8, [sp]
Lloh117:
	adrp	x1, l_.str.5@PAGE
Lloh118:
	add	x1, x1, l_.str.5@PAGEOFF
	mov	x0, x21
	bl	_en_warn
	ldr	w8, [x22, #16]
	str	x8, [sp]
Lloh119:
	adrp	x1, l_.str.6@PAGE
Lloh120:
	add	x1, x1, l_.str.6@PAGEOFF
	mov	x0, x21
	bl	_en_warn
	ldr	x0, [x21, #48]
	ldr	w1, [x0, #4]
	bl	_mlx4_en_update_loopback_state
	mov	x0, x19
	bl	_mlx4_en_calc_rx_buf
	ldr	x0, [x20, #8]
	ldrsw	x1, [x21]
	ldr	x8, [x21, #40]
Lloh121:
	adrp	x9, _ETH_FCS_LEN@GOTPAGE
Lloh122:
	ldr	x9, [x9, _ETH_FCS_LEN@GOTPAGEOFF]
Lloh123:
	ldr	x9, [x9]
	add	x2, x9, x8
	ldp	w4, w3, [x22, #8]
	ldp	w6, w5, [x22]
	bl	_mlx4_SET_PORT_general
	cbz	w0, LBB0_28
; %bb.27:
	mov	x26, x0
	ldr	w8, [x21]
	stp	x8, x26, [sp]
Lloh124:
	adrp	x1, l_.str.7@PAGE
Lloh125:
	add	x1, x1, l_.str.7@PAGEOFF
	b	LBB0_30
LBB0_28:
Lloh126:
	adrp	x1, l_.str.8@PAGE
Lloh127:
	add	x1, x1, l_.str.8@PAGEOFF
	mov	x0, x21
	bl	_en_warn
	ldr	x0, [x20, #8]
	ldrsw	x1, [x21]
	bl	_mlx4_INIT_PORT
	cbz	w0, LBB0_31
; %bb.29:
	mov	x26, x0
Lloh128:
	adrp	x1, l_.str.9@PAGE
Lloh129:
	add	x1, x1, l_.str.9@PAGEOFF
LBB0_30:
	mov	x0, x21
	bl	_en_err
	b	LBB0_14
LBB0_31:
	mov	x0, x21
	bl	_mlx4_en_set_default_moderation
	ldr	w0, [x20]
Lloh130:
	adrp	x8, _STATS_DELAY@GOTPAGE
Lloh131:
	ldr	x8, [x8, _STATS_DELAY@GOTPAGEOFF]
Lloh132:
	ldr	w2, [x8]
	mov	x1, x25
	bl	_queue_delayed_work
	ldr	x8, [x20, #8]
	ldr	w8, [x8, #16]
Lloh133:
	adrp	x9, _MLX4_DEV_CAP_FLAG2_TS@GOTPAGE
Lloh134:
	ldr	x9, [x9, _MLX4_DEV_CAP_FLAG2_TS@GOTPAGEOFF]
Lloh135:
	ldr	w9, [x9]
	tst	w9, w8
	b.eq	LBB0_33
; %bb.32:
	ldr	w0, [x20]
Lloh136:
	adrp	x8, _SERVICE_TASK_DELAY@GOTPAGE
Lloh137:
	ldr	x8, [x8, _SERVICE_TASK_DELAY@GOTPAGEOFF]
Lloh138:
	ldr	w2, [x8]
	mov	x1, x24
	bl	_queue_delayed_work
LBB0_33:
	mov	w26, #0
	b	LBB0_16
	.loh AdrpLdrGotLdr	Lloh2, Lloh3, Lloh4
	.loh AdrpLdrGot	Lloh0, Lloh1
	.loh AdrpLdrGot	Lloh7, Lloh8
	.loh AdrpLdr	Lloh5, Lloh6
	.loh AdrpLdrGot	Lloh27, Lloh28
	.loh AdrpLdrGotLdr	Lloh24, Lloh25, Lloh26
	.loh AdrpLdrGotLdr	Lloh21, Lloh22, Lloh23
	.loh AdrpLdrGotLdr	Lloh18, Lloh19, Lloh20
	.loh AdrpLdrGotLdr	Lloh15, Lloh16, Lloh17
	.loh AdrpLdrGotLdr	Lloh12, Lloh13, Lloh14
	.loh AdrpLdrGotLdr	Lloh9, Lloh10, Lloh11
	.loh AdrpLdrGotLdr	Lloh29, Lloh30, Lloh31
	.loh AdrpAdd	Lloh32, Lloh33
	.loh AdrpLdrGotLdr	Lloh37, Lloh38, Lloh39
	.loh AdrpLdrGotLdr	Lloh34, Lloh35, Lloh36
	.loh AdrpLdrGotLdr	Lloh46, Lloh47, Lloh48
	.loh AdrpLdrGotLdr	Lloh43, Lloh44, Lloh45
	.loh AdrpLdrGotLdr	Lloh40, Lloh41, Lloh42
	.loh AdrpAdd	Lloh49, Lloh50
	.loh AdrpLdrGot	Lloh51, Lloh52
	.loh AdrpLdrGotLdr	Lloh55, Lloh56, Lloh57
	.loh AdrpAdd	Lloh53, Lloh54
	.loh AdrpLdrGot	Lloh60, Lloh61
	.loh AdrpAdd	Lloh58, Lloh59
	.loh AdrpLdrGotLdr	Lloh66, Lloh67, Lloh68
	.loh AdrpLdrGot	Lloh64, Lloh65
	.loh AdrpLdrGot	Lloh62, Lloh63
	.loh AdrpLdrGotLdr	Lloh69, Lloh70, Lloh71
	.loh AdrpLdrGotLdr	Lloh100, Lloh101, Lloh102
	.loh AdrpLdrGotLdr	Lloh96, Lloh97, Lloh99
	.loh AdrpLdrGotLdr	Lloh94, Lloh95, Lloh98
	.loh AdrpLdrGotLdr	Lloh91, Lloh92, Lloh93
	.loh AdrpLdrGotLdr	Lloh88, Lloh89, Lloh90
	.loh AdrpLdrGotLdr	Lloh85, Lloh86, Lloh87
	.loh AdrpLdrGotLdr	Lloh82, Lloh83, Lloh84
	.loh AdrpLdrGotLdr	Lloh79, Lloh80, Lloh81
	.loh AdrpLdrGotLdr	Lloh76, Lloh77, Lloh78
	.loh AdrpLdrGot	Lloh74, Lloh75
	.loh AdrpLdrGot	Lloh72, Lloh73
	.loh AdrpLdrGotLdr	Lloh106, Lloh107, Lloh108
	.loh AdrpLdrGotLdr	Lloh103, Lloh104, Lloh105
	.loh AdrpLdrGotLdr	Lloh109, Lloh110, Lloh111
	.loh AdrpLdrGotLdr	Lloh112, Lloh113, Lloh114
	.loh AdrpAdd	Lloh115, Lloh116
	.loh AdrpLdrGotLdr	Lloh121, Lloh122, Lloh123
	.loh AdrpAdd	Lloh119, Lloh120
	.loh AdrpAdd	Lloh117, Lloh118
	.loh AdrpAdd	Lloh124, Lloh125
	.loh AdrpAdd	Lloh126, Lloh127
	.loh AdrpAdd	Lloh128, Lloh129
	.loh AdrpLdrGotLdr	Lloh133, Lloh134, Lloh135
	.loh AdrpLdrGotLdr	Lloh130, Lloh131, Lloh132
	.loh AdrpLdrGotLdr	Lloh136, Lloh137, Lloh138
	.cfi_endproc
                                        ; -- End function
	.comm	_MAX_TX_RINGS,4,2               ; @MAX_TX_RINGS
	.comm	_MAX_RX_RINGS,4,2               ; @MAX_RX_RINGS
	.section	__TEXT,__cstring,cstring_literals
l_.str:                                 ; @.str
	.asciz	"Net device allocation failed\n"

	.comm	_ENOMEM,4,2                     ; @ENOMEM
	.comm	_GFP_KERNEL,4,2                 ; @GFP_KERNEL
	.comm	_MLX4_EN_MSG_LEVEL,4,2          ; @MLX4_EN_MSG_LEVEL
	.comm	_mlx4_en_do_set_rx_mode,4,2     ; @mlx4_en_do_set_rx_mode
	.comm	_mlx4_en_restart,4,2            ; @mlx4_en_restart
	.comm	_mlx4_en_linkstate,4,2          ; @mlx4_en_linkstate
	.comm	_mlx4_en_do_get_stats,4,2       ; @mlx4_en_do_get_stats
	.comm	_mlx4_en_service_task,4,2       ; @mlx4_en_service_task
	.comm	_MLX4_EN_MAC_HASH_SIZE,4,2      ; @MLX4_EN_MAC_HASH_SIZE
	.comm	_ETH_ALEN,4,2                   ; @ETH_ALEN
l_.str.1:                               ; @.str.1
	.asciz	"Assigned random MAC address %pM\n"

l_.str.2:                               ; @.str.2
	.asciz	"Port: %d, invalid mac burned: %pM, quiting\n"

	.comm	_EINVAL,4,2                     ; @EINVAL
	.comm	_DS_SIZE,4,2                    ; @DS_SIZE
	.comm	_MLX4_EN_MAX_RX_FRAGS,4,2       ; @MLX4_EN_MAX_RX_FRAGS
	.comm	_HWTSTAMP_TX_OFF,4,2            ; @HWTSTAMP_TX_OFF
	.comm	_HWTSTAMP_FILTER_NONE,4,2       ; @HWTSTAMP_FILTER_NONE
	.comm	_MLX4_EN_PAGE_SIZE,4,2          ; @MLX4_EN_PAGE_SIZE
l_.str.3:                               ; @.str.3
	.asciz	"Failed to allocate page for rx qps\n"

	.comm	_mlx4_netdev_ops_master,4,2     ; @mlx4_netdev_ops_master
	.comm	_mlx4_netdev_ops,4,2            ; @mlx4_netdev_ops
	.comm	_MLX4_EN_WATCHDOG_TIMEOUT,4,2   ; @MLX4_EN_WATCHDOG_TIMEOUT
	.comm	_MLX4_EN_NUM_UP,4,2             ; @MLX4_EN_NUM_UP
	.comm	_mlx4_en_ethtool_ops,4,2        ; @mlx4_en_ethtool_ops
	.comm	_mlx4_en_ethtool_ops_ext,4,2    ; @mlx4_en_ethtool_ops_ext
	.comm	_NETIF_F_SG,4,2                 ; @NETIF_F_SG
	.comm	_NETIF_F_IP_CSUM,4,2            ; @NETIF_F_IP_CSUM
	.comm	_NETIF_F_IPV6_CSUM,4,2          ; @NETIF_F_IPV6_CSUM
	.comm	_NETIF_F_RXHASH,4,2             ; @NETIF_F_RXHASH
	.comm	_NETIF_F_HIGHDMA,4,2            ; @NETIF_F_HIGHDMA
	.comm	_NETIF_F_HW_VLAN_TX,4,2         ; @NETIF_F_HW_VLAN_TX
	.comm	_NETIF_F_HW_VLAN_RX,4,2         ; @NETIF_F_HW_VLAN_RX
	.comm	_NETIF_F_HW_VLAN_FILTER,4,2     ; @NETIF_F_HW_VLAN_FILTER
	.comm	_NETIF_F_GRO,4,2                ; @NETIF_F_GRO
	.comm	_NETIF_F_TSO,4,2                ; @NETIF_F_TSO
	.comm	_NETIF_F_TSO6,4,2               ; @NETIF_F_TSO6
	.comm	_MLX4_STEERING_MODE_DEVICE_MANAGED,8,3 ; @MLX4_STEERING_MODE_DEVICE_MANAGED
	.comm	_NETIF_F_NTUPLE,4,2             ; @NETIF_F_NTUPLE
l_.str.4:                               ; @.str.4
	.asciz	"Netdev registration failed for port %d\n"

l_.str.5:                               ; @.str.5
	.asciz	"Using %d TX rings\n"

l_.str.6:                               ; @.str.6
	.asciz	"Using %d RX rings\n"

	.comm	_ETH_FCS_LEN,8,3                ; @ETH_FCS_LEN
l_.str.7:                               ; @.str.7
	.asciz	"Failed setting port general configurations for port %d, with error %d\n"

l_.str.8:                               ; @.str.8
	.asciz	"Initializing port\n"

l_.str.9:                               ; @.str.9
	.asciz	"Failed Initializing port\n"

	.comm	_STATS_DELAY,4,2                ; @STATS_DELAY
	.comm	_MLX4_DEV_CAP_FLAG2_TS,4,2      ; @MLX4_DEV_CAP_FLAG2_TS
	.comm	_SERVICE_TASK_DELAY,4,2         ; @SERVICE_TASK_DELAY
	.comm	_MLX4_DEV_CAP_FLAG_SET_ETH_SCHED,4,2 ; @MLX4_DEV_CAP_FLAG_SET_ETH_SCHED
	.comm	_mlx4_en_dcbnl_ops,4,2          ; @mlx4_en_dcbnl_ops
	.comm	_mlx4_en_dcbnl_pfc_ops,4,2      ; @mlx4_en_dcbnl_pfc_ops
	.comm	_mlx4_en_filter_rfs,4,2         ; @mlx4_en_filter_rfs
.subsections_via_symbols
