	.file	"extr_bxe_elink.c_elink_warpcore_set_10G_KR.c"
	.intel_syntax noprefix
	.text
	.p2align 4
	.type	elink_warpcore_set_10G_KR, @function
elink_warpcore_set_10G_KR:
.LFB0:
	.cfi_startproc
	endbr64
	push	r15
	.cfi_def_cfa_offset 16
	.cfi_offset 15, -16
	mov	r15, rsi
	push	r14
	.cfi_def_cfa_offset 24
	.cfi_offset 14, -24
	push	r13
	.cfi_def_cfa_offset 32
	.cfi_offset 13, -32
	push	r12
	.cfi_def_cfa_offset 40
	.cfi_offset 12, -40
	xor	r12d, r12d
	push	rbp
	.cfi_def_cfa_offset 48
	.cfi_offset 6, -48
	mov	rbp, rdi
	push	rbx
	.cfi_def_cfa_offset 56
	.cfi_offset 3, -56
	lea	rbx, reg_set.1980[rip+4]
	lea	r14, -4[rbx]
	sub	rsp, 24
	.cfi_def_cfa_offset 80
	mov	r13, QWORD PTR [rsi]
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR 8[rsp], rax
	xor	eax, eax
	jmp	.L2
	.p2align 4,,10
	.p2align 3
.L3:
	mov	ecx, DWORD PTR 4[rbx]
	mov	edx, DWORD PTR 8[rbx]
	mov	rsi, rbp
	mov	rdi, r13
	mov	r8d, DWORD PTR [rbx]
	add	r12, 1
	add	rbx, 24
	call	elink_cl45_write@PLT
.L2:
	mov	rdi, r14
	call	ARRAY_SIZE@PLT
	cmp	rax, r12
	ja	.L3
	mov	rsi, r15
	mov	rdi, rbp
	mov	r12, rsp
	call	elink_get_warpcore_lane@PLT
	xor	r8d, r8d
	mov	rsi, rbp
	mov	rdi, r13
	mov	ecx, DWORD PTR MDIO_AER_BLOCK_AER_REG[rip]
	mov	edx, DWORD PTR MDIO_REG_BANK_AER_BLOCK[rip]
	mov	rbx, rax
	call	CL22_WR_OVER_CL45@PLT
	mov	r8, r12
	mov	edx, 135
	mov	rsi, rbp
	mov	r14d, DWORD PTR MDIO_WC_REG_XGXSBLK1_LANECTRL0[rip]
	mov	rdi, r13
	mov	ecx, r14d
	call	elink_cl45_read@PLT
	mov	ecx, ebx
	mov	r8d, 17
	mov	rsi, rbp
	sal	r8d, cl
	mov	edx, 135
	mov	ecx, r14d
	mov	rdi, r13
	not	r8d
	movsx	r8, r8d
	and	r8, QWORD PTR [rsp]
	mov	QWORD PTR [rsp], r8
	call	elink_cl45_write@PLT
	mov	r8, r12
	mov	edx, 135
	mov	rsi, rbp
	mov	r14d, DWORD PTR MDIO_WC_REG_XGXSBLK1_LANECTRL1[rip]
	mov	rdi, r13
	mov	ecx, r14d
	call	elink_cl45_read@PLT
	lea	ecx, [rbx+rbx]
	mov	edx, 135
	mov	rsi, rbp
	mov	r8d, 771
	mov	rdi, r13
	sal	r8d, cl
	mov	ecx, r14d
	movsx	r8, r8d
	or	r8, QWORD PTR [rsp]
	mov	QWORD PTR [rsp], r8
	call	elink_cl45_write@PLT
	mov	rsi, rbp
	mov	rdi, r15
	call	elink_set_aer_mmd@PLT
	mov	ecx, 130
	mov	rsi, rbp
	mov	rdi, r13
	mov	r8d, 8256
	mov	edx, 136
	call	elink_cl45_write@PLT
	mov	edx, 136
	mov	rsi, rbp
	mov	rdi, r13
	mov	ecx, DWORD PTR MDIO_WC_REG_IEEE0BLK_AUTONEGNP[rip]
	mov	r8d, 11
	call	elink_cl45_write@PLT
	mov	edx, 135
	mov	rsi, rbp
	mov	rdi, r13
	mov	ecx, DWORD PTR MDIO_WC_REG_SERDESDIGITAL_MISC2[rip]
	mov	r8d, 48
	call	elink_cl45_write@PLT
	mov	edx, 135
	mov	rsi, rbp
	mov	rdi, r13
	mov	ecx, DWORD PTR MDIO_WC_REG_TX66_CONTROL[rip]
	mov	r8d, 9
	call	elink_cl45_write@PLT
	mov	edx, 135
	mov	rsi, rbp
	mov	rdi, r13
	mov	ecx, DWORD PTR MDIO_WC_REG_RX66_CONTROL[rip]
	mov	r8d, 249
	call	elink_cl45_read_or_write@PLT
	mov	ecx, 130
	mov	rsi, rbp
	mov	rdi, r13
	mov	r8d, 16384
	mov	edx, 135
	call	elink_cl45_write@PLT
	xor	r8d, r8d
	mov	ecx, 130
	mov	rsi, rbp
	mov	edx, 135
	mov	rdi, r13
	call	elink_cl45_write@PLT
	mov	rax, QWORD PTR 8[rsp]
	xor	rax, QWORD PTR fs:40
	jne	.L7
	add	rsp, 24
	.cfi_remember_state
	.cfi_def_cfa_offset 56
	pop	rbx
	.cfi_def_cfa_offset 48
	pop	rbp
	.cfi_def_cfa_offset 40
	pop	r12
	.cfi_def_cfa_offset 32
	pop	r13
	.cfi_def_cfa_offset 24
	pop	r14
	.cfi_def_cfa_offset 16
	pop	r15
	.cfi_def_cfa_offset 8
	ret
.L7:
	.cfi_restore_state
	call	__stack_chk_fail@PLT
	.cfi_endproc
.LFE0:
	.size	elink_warpcore_set_10G_KR, .-elink_warpcore_set_10G_KR
	.data
	.align 32
	.type	reg_set.1980, @object
	.size	reg_set.1980, 168
reg_set.1980:
	.long	135
	.long	128
	.long	7
	.zero	12
	.long	135
	.long	133
	.long	16128
	.zero	12
	.long	137
	.long	134
	.long	0
	.zero	12
	.long	137
	.long	130
	.long	0
	.zero	12
	.long	135
	.long	132
	.long	1
	.zero	12
	.long	135
	.long	131
	.long	10
	.zero	12
	.long	136
	.long	129
	.long	2
	.zero	12
	.comm	MDIO_WC_REG_XGXSBLK1_LANECTRL1,4,4
	.comm	MDIO_WC_REG_XGXSBLK1_LANECTRL0,4,4
	.comm	MDIO_WC_REG_TX66_CONTROL,4,4
	.comm	MDIO_WC_REG_SERDESDIGITAL_MISC2,4,4
	.comm	MDIO_WC_REG_RX66_CONTROL,4,4
	.comm	MDIO_WC_REG_IEEE0BLK_AUTONEGNP,4,4
	.comm	MDIO_REG_BANK_AER_BLOCK,4,4
	.comm	MDIO_AER_BLOCK_AER_REG,4,4
	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0"
	.section	.note.GNU-stack,"",@progbits
	.section	.note.gnu.property,"a"
	.align 8
	.long	 1f - 0f
	.long	 4f - 1f
	.long	 5
0:
	.string	 "GNU"
1:
	.align 8
	.long	 0xc0000002
	.long	 3f - 2f
2:
	.long	 0x3
3:
	.align 8
4:

	.arch armv5t
	.eabi_attribute 20, 1
	.eabi_attribute 21, 1
	.eabi_attribute 23, 3
	.eabi_attribute 24, 1
	.eabi_attribute 25, 1
	.eabi_attribute 26, 2
	.eabi_attribute 30, 2
	.eabi_attribute 34, 0
	.eabi_attribute 18, 4
	.file	"extr_bxe_elink.c_elink_warpcore_set_10G_KR.c"
	.text
	.section	.rodata.cst4,"aM",%progbits,4
	.align	2
.LC0:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	elink_warpcore_set_10G_KR, %function
elink_warpcore_set_10G_KR:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 0, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, r8, r9, r10, lr}
	ldr	r3, .L8
	ldr	r4, .L8+4
	sub	sp, sp, #16
	mov	r9, r1
	mov	r5, r0
	ldr	r3, [r3]
	str	r3, [sp, #12]
	mov	r3,#0
	mov	r8, r4
	mov	r6, #0
	ldr	r7, [r1]
	b	.L2
.L3:
	ldr	r2, [r4, #-20]
	ldr	r3, [r4, #-16]
	str	r2, [sp]
	mov	r1, r5
	mov	r0, r7
	ldr	r2, [r4, #-12]
	bl	elink_cl45_write
	add	r6, r6, #1
.L2:
	mov	r0, r8
	bl	ARRAY_SIZE
	cmp	r0, r6
	add	r4, r4, #24
	bhi	.L3
	mov	r1, r9
	mov	r6, #0
	mov	r0, r5
	bl	elink_get_warpcore_lane
	ldr	r3, .L8+8
	ldr	r2, .L8+12
	str	r6, [sp]
	mov	r4, r0
	mov	r1, r5
	ldr	r3, [r3]
	ldr	r2, [r2]
	mov	r0, r7
	bl	CL22_WR_OVER_CL45
	ldr	r3, .L8+16
	add	r8, sp, #8
	ldr	r10, [r3]
	mov	r2, #135
	mov	r3, r10
	mov	r1, r5
	str	r8, [sp]
	mov	r0, r7
	bl	elink_cl45_read
	mov	r2, #17
	ldr	ip, [sp, #8]
	mov	r3, r10
	bic	ip, ip, r2, lsl r4
	str	ip, [sp]
	mov	r2, #135
	mov	r1, r5
	mov	r0, r7
	str	ip, [sp, #8]
	bl	elink_cl45_write
	ldr	r3, .L8+20
	str	r8, [sp]
	ldr	r8, [r3]
	mov	r2, #135
	mov	r3, r8
	mov	r1, r5
	mov	r0, r7
	bl	elink_cl45_read
	ldr	r2, [sp, #8]
	ldr	r3, .L8+24
	lsl	r4, r4, #1
	orr	r4, r2, r3, lsl r4
	mov	r1, r5
	mov	r3, r8
	mov	r2, #135
	mov	r0, r7
	str	r4, [sp]
	str	r4, [sp, #8]
	bl	elink_cl45_write
	mov	r1, r5
	mov	r0, r9
	bl	elink_set_aer_mmd
	mov	r2, #8256
	mov	r3, #130
	mov	r1, r5
	str	r2, [sp]
	mov	r0, r7
	mov	r2, #136
	bl	elink_cl45_write
	mov	r2, #11
	ldr	r3, .L8+28
	mov	r1, r5
	ldr	r3, [r3]
	str	r2, [sp]
	mov	r0, r7
	mov	r2, #136
	bl	elink_cl45_write
	mov	r2, #48
	ldr	r3, .L8+32
	mov	r1, r5
	ldr	r3, [r3]
	str	r2, [sp]
	mov	r0, r7
	mov	r2, #135
	bl	elink_cl45_write
	mov	r2, #9
	ldr	r3, .L8+36
	mov	r1, r5
	ldr	r3, [r3]
	str	r2, [sp]
	mov	r0, r7
	mov	r2, #135
	bl	elink_cl45_write
	mov	r2, #249
	ldr	r3, .L8+40
	str	r2, [sp]
	mov	r1, r5
	mov	r2, #135
	ldr	r3, [r3]
	mov	r0, r7
	bl	elink_cl45_read_or_write
	mov	r2, #16384
	mov	r3, #130
	mov	r1, r5
	str	r2, [sp]
	mov	r0, r7
	mov	r2, #135
	bl	elink_cl45_write
	mov	r3, #130
	mov	r2, #135
	mov	r1, r5
	mov	r0, r7
	str	r6, [sp]
	bl	elink_cl45_write
	ldr	r3, .L8
	ldr	r2, [r3]
	ldr	r3, [sp, #12]
	eors	r2, r3, r2
	mov	r3, #0
	bne	.L7
	add	sp, sp, #16
	@ sp needed
	pop	{r4, r5, r6, r7, r8, r9, r10, pc}
.L7:
	bl	__stack_chk_fail
.L9:
	.align	2
.L8:
	.word	.LC0
	.word	.LANCHOR0
	.word	MDIO_AER_BLOCK_AER_REG
	.word	MDIO_REG_BANK_AER_BLOCK
	.word	MDIO_WC_REG_XGXSBLK1_LANECTRL0
	.word	MDIO_WC_REG_XGXSBLK1_LANECTRL1
	.word	771
	.word	MDIO_WC_REG_IEEE0BLK_AUTONEGNP
	.word	MDIO_WC_REG_SERDESDIGITAL_MISC2
	.word	MDIO_WC_REG_TX66_CONTROL
	.word	MDIO_WC_REG_RX66_CONTROL
	.size	elink_warpcore_set_10G_KR, .-elink_warpcore_set_10G_KR
	.comm	MDIO_WC_REG_XGXSBLK1_LANECTRL1,4,4
	.comm	MDIO_WC_REG_XGXSBLK1_LANECTRL0,4,4
	.comm	MDIO_WC_REG_TX66_CONTROL,4,4
	.comm	MDIO_WC_REG_SERDESDIGITAL_MISC2,4,4
	.comm	MDIO_WC_REG_RX66_CONTROL,4,4
	.comm	MDIO_WC_REG_IEEE0BLK_AUTONEGNP,4,4
	.comm	MDIO_REG_BANK_AER_BLOCK,4,4
	.comm	MDIO_AER_BLOCK_AER_REG,4,4
	.data
	.align	2
	.set	.LANCHOR0,. + 0
	.type	reg_set.4264, %object
	.size	reg_set.4264, 168
reg_set.4264:
	.word	135
	.word	128
	.word	7
	.space	12
	.word	135
	.word	133
	.word	16128
	.space	12
	.word	137
	.word	134
	.word	0
	.space	12
	.word	137
	.word	130
	.word	0
	.space	12
	.word	135
	.word	132
	.word	1
	.space	12
	.word	135
	.word	131
	.word	10
	.space	12
	.word	136
	.word	129
	.word	2
	.space	12
	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0"
	.section	.note.GNU-stack,"",%progbits
