	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function aml8726_sdxc_attach
_aml8726_sdxc_attach:                   ## @aml8726_sdxc_attach
	.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	$168, %rsp
	.cfi_offset %rbx, -56
	.cfi_offset %r12, -48
	.cfi_offset %r13, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	movl	%edi, %ebx
	movq	___stack_chk_guard@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	%rax, -48(%rbp)
	callq	_device_get_softc
	movq	%rax, %r12
	movl	%ebx, -84(%rbp)                 ## 4-byte Spill
	movl	%ebx, 152(%rax)
	movl	$0, (%rax)
	movq	_AML_SDXC_PDMA_TX_THOLD_SHIFT@GOTPCREL(%rip), %rax
	movb	(%rax), %cl
	movl	$49, %r14d
	shll	%cl, %r14d
	movq	_AML_SDXC_PDMA_RX_THOLD_SHIFT@GOTPCREL(%rip), %rax
	movb	(%rax), %cl
	movl	$7, %r15d
	shll	%cl, %r15d
	movq	_AML_SDXC_PDMA_RD_BURST_SHIFT@GOTPCREL(%rip), %rax
	movb	(%rax), %cl
	movl	$15, %r8d
	shll	%cl, %r8d
	movq	_AML_SDXC_PDMA_WR_BURST_SHIFT@GOTPCREL(%rip), %rax
	movb	(%rax), %cl
	movl	$7, %esi
	shll	%cl, %esi
	movq	_AML_SDXC_MISC_WCRC_OK_PAT_SHIFT@GOTPCREL(%rip), %rax
	movb	(%rax), %cl
	movl	$2, %edi
	shll	%cl, %edi
	movq	_AML_SDXC_PDMA_DMA_URGENT@GOTPCREL(%rip), %rax
	movq	_AML_SDXC_MISC_WCRC_ERR_PAT_SHIFT@GOTPCREL(%rip), %rcx
	movb	(%rcx), %cl
	movl	$5, %r13d
	shll	%cl, %r13d
	orl	(%rax), %r14d
	movq	_AML_SDXC_ENH_CNTRL_SDIO_IRQ_PERIOD_SHIFT@GOTPCREL(%rip), %rax
	movb	(%rax), %cl
	movl	$12, %ebx
	shll	%cl, %ebx
	movl	$7, %edx
	movq	_aml8726_soc_hw_rev@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	cmpl	$129, %eax
	je	LBB0_4
## %bb.1:
	cmpl	$130, %eax
	jne	LBB0_5
## %bb.2:
	movq	_aml8726_soc_metal_rev@GOTPCREL(%rip), %rax
	cmpl	$128, (%rax)
	movl	%r8d, -124(%rbp)                ## 4-byte Spill
	movl	%esi, -120(%rbp)                ## 4-byte Spill
	movl	%edi, -116(%rbp)                ## 4-byte Spill
	movl	%ebx, -112(%rbp)                ## 4-byte Spill
	jne	LBB0_7
## %bb.3:
	movl	$1, (%r12)
	movq	_AML_SDXC_MISC_TXSTART_THOLD_SHIFT@GOTPCREL(%rip), %rax
	movb	(%rax), %cl
	movl	$6, %eax
	shll	%cl, %eax
	movl	%eax, -108(%rbp)                ## 4-byte Spill
	movq	_AML_SDXC_ENH_CNTRL_RX_FULL_THOLD_SHIFT@GOTPCREL(%rip), %rax
	movb	(%rax), %cl
	movl	$64, %edx
	shll	%cl, %edx
	movq	_AML_SDXC_ENH_CNTRL_WR_RESP_MODE_SKIP_M8M2@GOTPCREL(%rip), %rax
	orl	(%rax), %edx
	jmp	LBB0_9
LBB0_4:
	movl	%ebx, -112(%rbp)                ## 4-byte Spill
	movl	%edi, -116(%rbp)                ## 4-byte Spill
	movl	%esi, -120(%rbp)                ## 4-byte Spill
	movl	%r8d, -124(%rbp)                ## 4-byte Spill
	movq	_AML_SDXC_MISC_TXSTART_THOLD_SHIFT@GOTPCREL(%rip), %rax
	movb	(%rax), %cl
	shll	%cl, %edx
	movl	%edx, -108(%rbp)                ## 4-byte Spill
	jmp	LBB0_8
LBB0_5:
	leaq	L_.str(%rip), %rsi
LBB0_6:
	movl	-84(%rbp), %edi                 ## 4-byte Reload
	jmp	LBB0_19
LBB0_7:
	movq	_AML_SDXC_MISC_TXSTART_THOLD_SHIFT@GOTPCREL(%rip), %rax
	movb	(%rax), %cl
	movl	$7, %eax
	shll	%cl, %eax
	movl	%eax, -108(%rbp)                ## 4-byte Spill
LBB0_8:
	movq	_AML_SDXC_ENH_CNTRL_RX_FULL_THOLD_SHIFT@GOTPCREL(%rip), %rax
	movb	(%rax), %cl
	movl	$63, %eax
	shll	%cl, %eax
	movq	_AML_SDXC_ENH_CNTRL_DMA_NO_WR_RESP_CHECK_M8@GOTPCREL(%rip), %rcx
	orl	(%rcx), %eax
	movq	_AML_SDXC_ENH_CNTRL_RX_TIMEOUT_SHIFT_M8@GOTPCREL(%rip), %rcx
	movb	(%rcx), %cl
	movl	$255, %edx
	shll	%cl, %edx
	orl	%eax, %edx
LBB0_9:
	movl	%edx, -88(%rbp)                 ## 4-byte Spill
	movl	-84(%rbp), %ebx                 ## 4-byte Reload
	movl	%ebx, %edi
	callq	_ofw_bus_get_node
	leaq	L_.str.1(%rip), %rsi
	leaq	-80(%rbp), %rdx
	movl	%eax, -92(%rbp)                 ## 4-byte Spill
	movl	%eax, %edi
	movl	$24, %ecx
	callq	_OF_getencprop
	andl	$-8, %eax
	cmpl	$8, %eax
	jne	LBB0_17
## %bb.10:
	movq	-80(%rbp), %rax
	testq	%rax, %rax
	je	LBB0_17
## %bb.11:
	movq	%rax, 144(%r12)
	movq	$0, 128(%r12)
	leaq	L_.str.3(%rip), %rsi
	leaq	-80(%rbp), %rdx
	movl	-92(%rbp), %edi                 ## 4-byte Reload
	movl	$24, %ecx
	callq	_OF_getencprop
	testl	%eax, %eax
	jle	LBB0_23
## %bb.12:
	andl	$-8, %eax
	cmpl	$24, %eax
	jne	LBB0_38
## %bb.13:
	movq	-80(%rbp), %rdi
	callq	_OF_device_from_xref
	movq	%rax, 128(%r12)
	movq	-72(%rbp), %rcx
	movq	%rcx, 120(%r12)
	movq	-64(%rbp), %rcx
	movq	%rcx, 136(%r12)
	testq	%rax, %rax
	je	LBB0_39
LBB0_14:
	movq	%r12, %rdi
	callq	_aml8726_sdxc_power_off
	testq	%rax, %rax
	jne	LBB0_16
## %bb.15:
	movq	120(%r12), %rsi
	movq	128(%r12), %rdi
	movq	_GPIO_PIN_OUTPUT@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	callq	_GPIO_PIN_SETFLAGS
	testq	%rax, %rax
	je	LBB0_23
LBB0_16:
	leaq	L_.str.5(%rip), %rsi
	jmp	LBB0_18
LBB0_17:
	leaq	L_.str.2(%rip), %rsi
LBB0_18:
	movl	%ebx, %edi
LBB0_19:
	xorl	%eax, %eax
	callq	_device_printf
LBB0_20:
	movq	_ENXIO@GOTPCREL(%rip), %rax
	movl	(%rax), %ebx
LBB0_21:
	movq	___stack_chk_guard@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	cmpq	-48(%rbp), %rax
	jne	LBB0_86
## %bb.22:
	movl	%ebx, %eax
	addq	$168, %rsp
	popq	%rbx
	popq	%r12
	popq	%r13
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
LBB0_23:
	movl	%r15d, -144(%rbp)               ## 4-byte Spill
	leaq	L_.str.6(%rip), %rsi
	leaq	-136(%rbp), %rdx
	movl	-92(%rbp), %edi                 ## 4-byte Reload
	callq	_OF_getprop_alloc
	testl	%eax, %eax
	js	LBB0_40
## %bb.24:
	movl	%eax, %ebx
	movl	%r13d, -140(%rbp)               ## 4-byte Spill
	movq	%r12, -104(%rbp)                ## 8-byte Spill
	movq	8(%r12), %rax
	movq	$0, (%rax)
	movq	-136(%rbp), %r12
	je	LBB0_41
## %bb.25:
	movb	$1, %r15b
	xorl	%eax, %eax
	jmp	LBB0_28
	.p2align	4, 0x90
LBB0_26:                                ##   in Loop: Header=BB0_28 Depth=1
	decl	%ebx
LBB0_27:                                ##   in Loop: Header=BB0_28 Depth=1
	incq	%r12
	testl	%ebx, %ebx
	setne	%cl
	movl	$1, %eax
	testb	%r15b, %cl
	movl	$0, %r15d
	je	LBB0_37
LBB0_28:                                ## =>This Loop Header: Depth=1
                                        ##     Child Loop BB0_34 Depth 2
	movq	%rax, %r13
	leaq	L_.str.8(%rip), %rdi
	movq	%r12, %rsi
	movl	%ebx, %edx
	callq	_strncmp
	testq	%rax, %rax
	je	LBB0_31
## %bb.29:                              ##   in Loop: Header=BB0_28 Depth=1
	leaq	L_.str.9(%rip), %rdi
	movq	%r12, %rsi
	movl	%ebx, %edx
	callq	_strncmp
	testq	%rax, %rax
	jne	LBB0_55
## %bb.30:                              ##   in Loop: Header=BB0_28 Depth=1
	movq	_MMC_OCR_330_340@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movq	_MMC_OCR_320_330@GOTPCREL(%rip), %rcx
	orl	(%rcx), %eax
	jmp	LBB0_32
	.p2align	4, 0x90
LBB0_31:                                ##   in Loop: Header=BB0_28 Depth=1
	movq	_MMC_OCR_LOW_VOLTAGE@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
LBB0_32:                                ##   in Loop: Header=BB0_28 Depth=1
	movq	-104(%rbp), %rcx                ## 8-byte Reload
	movq	8(%rcx), %rcx
	movl	%eax, (%rcx,%r13,4)
	cmpb	$0, (%r12)
	je	LBB0_26
## %bb.33:                              ##   in Loop: Header=BB0_28 Depth=1
	decl	%ebx
	.p2align	4, 0x90
LBB0_34:                                ##   Parent Loop BB0_28 Depth=1
                                        ## =>  This Inner Loop Header: Depth=2
	movl	%ebx, %eax
	addl	$-1, %ebx
	setb	%cl
	cmpb	$0, 1(%r12)
	leaq	1(%r12), %r12
	je	LBB0_36
## %bb.35:                              ##   in Loop: Header=BB0_34 Depth=2
	testb	%cl, %cl
	jne	LBB0_34
LBB0_36:                                ##   in Loop: Header=BB0_28 Depth=1
	testl	%eax, %eax
	jne	LBB0_27
LBB0_37:
	incl	%r13d
	movq	-136(%rbp), %r12
	jmp	LBB0_42
LBB0_38:
	movq	128(%r12), %rax
	testq	%rax, %rax
	jne	LBB0_14
LBB0_39:
	leaq	L_.str.4(%rip), %rsi
	jmp	LBB0_18
LBB0_40:
	leaq	L_.str.7(%rip), %rsi
	jmp	LBB0_6
LBB0_41:
	xorl	%r13d, %r13d
LBB0_42:
	movq	%r12, %rdi
	callq	_OF_prop_free
	movq	-104(%rbp), %rbx                ## 8-byte Reload
	movq	$0, 104(%rbx)
	leaq	L_.str.11(%rip), %rsi
	leaq	-80(%rbp), %rdx
	movl	-92(%rbp), %edi                 ## 4-byte Reload
	movl	$24, %ecx
	callq	_OF_getencprop
	testl	%eax, %eax
	jle	LBB0_50
## %bb.43:
	andl	$-8, %eax
	cmpl	$16, %eax
	jne	LBB0_45
## %bb.44:
	movq	-80(%rbp), %rdi
	callq	_OF_device_from_xref
	movq	%rax, %rdi
	movq	%rax, 104(%rbx)
	movq	-72(%rbp), %rax
	movq	%rax, 112(%rbx)
	movl	$1, 96(%rbx)
	jmp	LBB0_46
LBB0_45:
	movq	104(%rbx), %rdi
LBB0_46:
	testq	%rdi, %rdi
	je	LBB0_54
## %bb.47:
	movq	112(%rbx), %rsi
	xorl	%edx, %edx
	callq	_GPIO_PIN_SET
	testq	%rax, %rax
	jne	LBB0_49
## %bb.48:
	movq	104(%rbx), %rdi
	movq	112(%rbx), %rsi
	movq	_GPIO_PIN_OUTPUT@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	callq	_GPIO_PIN_SETFLAGS
	testq	%rax, %rax
	je	LBB0_50
LBB0_49:
	leaq	L_.str.13(%rip), %rsi
	jmp	LBB0_6
LBB0_50:
	cmpl	$2, %r13d
	je	LBB0_56
## %bb.51:
	cmpl	$1, %r13d
	je	LBB0_58
## %bb.52:
	testl	%r13d, %r13d
	jne	LBB0_60
## %bb.53:
	leaq	L_.str.14(%rip), %rsi
	jmp	LBB0_6
LBB0_54:
	leaq	L_.str.12(%rip), %rsi
	jmp	LBB0_6
LBB0_55:
	leaq	L_.str.10(%rip), %rsi
	movl	-84(%rbp), %edi                 ## 4-byte Reload
	movl	%ebx, %edx
	movq	%r12, %rcx
	xorl	%eax, %eax
	callq	_device_printf
	movq	-136(%rbp), %rdi
	callq	_OF_prop_free
	jmp	LBB0_20
LBB0_56:
	cmpq	$0, 104(%rbx)
	jne	LBB0_60
## %bb.57:
	leaq	L_.str.16(%rip), %rsi
	jmp	LBB0_6
LBB0_58:
	cmpq	$0, 104(%rbx)
	je	LBB0_60
## %bb.59:
	leaq	L_.str.15(%rip), %rsi
	jmp	LBB0_6
LBB0_60:
	movq	$0, 72(%rbx)
	leaq	L_.str.17(%rip), %rsi
	leaq	-80(%rbp), %rdx
	movl	-92(%rbp), %edi                 ## 4-byte Reload
	movl	$24, %ecx
	callq	_OF_getencprop
	testl	%eax, %eax
	jle	LBB0_65
## %bb.61:
	andl	$-8, %eax
	cmpl	$24, %eax
	jne	LBB0_63
## %bb.62:
	movq	-80(%rbp), %rdi
	callq	_OF_device_from_xref
	movq	%rax, 72(%rbx)
	movdqu	-72(%rbp), %xmm0
	pshufd	$78, %xmm0, %xmm0               ## xmm0 = xmm0[2,3,0,1]
	movdqu	%xmm0, 80(%rbx)
	jmp	LBB0_64
LBB0_63:
	movq	72(%rbx), %rax
LBB0_64:
	testq	%rax, %rax
	je	LBB0_80
LBB0_65:
	movq	_aml8726_sdxc_spec@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	16(%rbx), %rdx
	movl	-84(%rbp), %r15d                ## 4-byte Reload
	movl	%r15d, %edi
	callq	_bus_alloc_resources
	testq	%rax, %rax
	je	LBB0_67
## %bb.66:
	leaq	L_.str.19(%rip), %rsi
	movl	%r15d, %edi
	jmp	LBB0_19
LBB0_67:
	movq	%rbx, %rdi
	callq	_AML_SDXC_LOCK_INIT
	movl	%r15d, %edi
	callq	_bus_get_dma_tag
	movq	_AML_SDXC_ALIGN_DMA@GOTPCREL(%rip), %rcx
	movl	(%rcx), %esi
	movq	_BUS_SPACE_MAXADDR_32BIT@GOTPCREL(%rip), %rcx
	movl	(%rcx), %ecx
	movq	_BUS_SPACE_MAXADDR@GOTPCREL(%rip), %rdx
	movl	(%rdx), %r8d
	movq	_AML_SDXC_MAX_DMA@GOTPCREL(%rip), %rdx
	movl	(%rdx), %edx
	movq	%rbx, %r13
	leaq	24(%rbx), %r12
	movq	%r12, 56(%rsp)
	pxor	%xmm0, %xmm0
	movdqu	%xmm0, 40(%rsp)
	movl	%edx, 24(%rsp)
	movl	%edx, 8(%rsp)
	movl	$0, 32(%rsp)
	movl	$1, 16(%rsp)
	movq	$0, (%rsp)
	movl	%eax, %edi
	xorl	%edx, %edx
	xorl	%r9d, %r9d
	callq	_bus_dma_tag_create
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	LBB0_73
## %bb.68:
	movq	24(%r13), %rdi
	leaq	32(%r13), %rdx
	xorl	%esi, %esi
	callq	_bus_dmamap_create
	movl	%eax, %ebx
	testl	%eax, %eax
	jne	LBB0_73
## %bb.69:
	movq	16(%r13), %rax
	movq	_INTR_TYPE_MISC@GOTPCREL(%rip), %rcx
	movq	_INTR_MPSAFE@GOTPCREL(%rip), %rdx
	movl	(%rdx), %edx
	orl	(%rcx), %edx
	movl	4(%rax), %esi
	movq	_aml8726_sdxc_intr@GOTPCREL(%rip), %rax
	movl	(%rax), %r8d
	leaq	40(%r13), %rax
	movq	%rax, (%rsp)
	movl	-84(%rbp), %r15d                ## 4-byte Reload
	movl	%r15d, %edi
	xorl	%ecx, %ecx
	movq	%r13, %r9
	callq	_bus_setup_intr
	testl	%eax, %eax
	je	LBB0_81
## %bb.70:
	movl	%eax, %ebx
	leaq	L_.str.20(%rip), %rsi
	movl	%r15d, %edi
LBB0_71:
	xorl	%eax, %eax
	callq	_device_printf
LBB0_72:
	movq	-104(%rbp), %r13                ## 8-byte Reload
LBB0_73:
	movq	40(%r13), %rdx
	testq	%rdx, %rdx
	je	LBB0_75
## %bb.74:
	movq	16(%r13), %rax
	movl	4(%rax), %esi
	movl	-84(%rbp), %edi                 ## 4-byte Reload
	callq	_bus_teardown_intr
LBB0_75:
	movq	32(%r13), %rsi
	testq	%rsi, %rsi
	je	LBB0_77
## %bb.76:
	movq	(%r12), %rdi
	callq	_bus_dmamap_destroy
LBB0_77:
	movq	(%r12), %rdi
	testq	%rdi, %rdi
	je	LBB0_79
## %bb.78:
	callq	_bus_dma_tag_destroy
LBB0_79:
	movq	-104(%rbp), %r14                ## 8-byte Reload
	movq	%r14, %rdi
	callq	_AML_SDXC_LOCK_DESTROY
	movq	%r14, %rdi
	callq	_aml8726_sdxc_power_off
	movq	_aml8726_sdxc_spec@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	16(%r14), %rdx
	movl	-84(%rbp), %edi                 ## 4-byte Reload
	callq	_bus_release_resources
	jmp	LBB0_21
LBB0_80:
	leaq	L_.str.18(%rip), %rsi
	jmp	LBB0_6
LBB0_81:
	movl	-144(%rbp), %eax                ## 4-byte Reload
	orl	-124(%rbp), %eax                ## 4-byte Folded Reload
	orl	-120(%rbp), %eax                ## 4-byte Folded Reload
	orl	%eax, %r14d
	movl	-140(%rbp), %r13d               ## 4-byte Reload
	orl	-116(%rbp), %r13d               ## 4-byte Folded Reload
	orl	-108(%rbp), %r13d               ## 4-byte Folded Reload
	movl	-88(%rbp), %eax                 ## 4-byte Reload
	orl	-112(%rbp), %eax                ## 4-byte Folded Reload
	movl	%eax, -88(%rbp)                 ## 4-byte Spill
	movq	-104(%rbp), %rbx                ## 8-byte Reload
	leaq	68(%rbx), %rdi
	movq	%rbx, %rsi
	addq	$64, %rsi
	movq	_CALLOUT_RETURNUNLOCKED@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	callq	_callout_init_mtx
	movabsq	$429496729600200000, %rax       ## imm = 0x5F5E10000030D40
	movq	%rax, 48(%rbx)
	movq	8(%rbx), %rax
	movl	4(%rax), %ecx
	orl	(%rax), %ecx
	movl	%ecx, 56(%rbx)
	movq	_MMC_CAP_8_BIT_DATA@GOTPCREL(%rip), %rax
	movq	_MMC_CAP_4_BIT_DATA@GOTPCREL(%rip), %rcx
	movl	(%rcx), %ecx
	orl	(%rax), %ecx
	movq	_MMC_CAP_HSPEED@GOTPCREL(%rip), %rax
	orl	(%rax), %ecx
	movl	%ecx, 60(%rbx)
	movq	%rbx, %rdi
	callq	_aml8726_sdxc_soft_reset
	movq	_AML_SDXC_PDMA_REG@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	%rbx, %rdi
	movl	%r14d, %edx
	callq	_CSR_WRITE_4
	movq	_AML_SDXC_MISC_REG@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	%rbx, %rdi
	movl	%r13d, %edx
	callq	_CSR_WRITE_4
	movq	_AML_SDXC_ENH_CNTRL_REG@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	%rbx, %rdi
	movl	-88(%rbp), %edx                 ## 4-byte Reload
	callq	_CSR_WRITE_4
	leaq	L_.str.21(%rip), %rsi
	movl	%r15d, %edi
	movl	$-1, %edx
	callq	_device_add_child
	testl	%eax, %eax
	je	LBB0_84
## %bb.82:
	movl	%eax, %edi
	callq	_device_probe_and_attach
	testl	%eax, %eax
	je	LBB0_85
## %bb.83:
	movl	%eax, %ebx
	leaq	L_.str.23(%rip), %rsi
	movl	-84(%rbp), %edi                 ## 4-byte Reload
	jmp	LBB0_71
LBB0_84:
	leaq	L_.str.22(%rip), %rsi
	movl	%r15d, %edi
	xorl	%eax, %eax
	callq	_device_printf
	movq	_ENXIO@GOTPCREL(%rip), %rax
	movl	(%rax), %ebx
	jmp	LBB0_72
LBB0_85:
	xorl	%ebx, %ebx
	jmp	LBB0_21
LBB0_86:
	callq	___stack_chk_fail
	.cfi_endproc
                                        ## -- End function
	.comm	_AML_SDXC_PDMA_DMA_URGENT,4,2   ## @AML_SDXC_PDMA_DMA_URGENT
	.comm	_AML_SDXC_PDMA_TX_THOLD_SHIFT,4,2 ## @AML_SDXC_PDMA_TX_THOLD_SHIFT
	.comm	_AML_SDXC_PDMA_RX_THOLD_SHIFT,4,2 ## @AML_SDXC_PDMA_RX_THOLD_SHIFT
	.comm	_AML_SDXC_PDMA_RD_BURST_SHIFT,4,2 ## @AML_SDXC_PDMA_RD_BURST_SHIFT
	.comm	_AML_SDXC_PDMA_WR_BURST_SHIFT,4,2 ## @AML_SDXC_PDMA_WR_BURST_SHIFT
	.comm	_AML_SDXC_MISC_WCRC_OK_PAT_SHIFT,4,2 ## @AML_SDXC_MISC_WCRC_OK_PAT_SHIFT
	.comm	_AML_SDXC_MISC_WCRC_ERR_PAT_SHIFT,4,2 ## @AML_SDXC_MISC_WCRC_ERR_PAT_SHIFT
	.comm	_AML_SDXC_ENH_CNTRL_SDIO_IRQ_PERIOD_SHIFT,4,2 ## @AML_SDXC_ENH_CNTRL_SDIO_IRQ_PERIOD_SHIFT
	.comm	_aml8726_soc_hw_rev,4,2         ## @aml8726_soc_hw_rev
	.comm	_aml8726_soc_metal_rev,4,2      ## @aml8726_soc_metal_rev
	.comm	_AML_SDXC_MISC_TXSTART_THOLD_SHIFT,4,2 ## @AML_SDXC_MISC_TXSTART_THOLD_SHIFT
	.comm	_AML_SDXC_ENH_CNTRL_RX_FULL_THOLD_SHIFT,4,2 ## @AML_SDXC_ENH_CNTRL_RX_FULL_THOLD_SHIFT
	.comm	_AML_SDXC_ENH_CNTRL_WR_RESP_MODE_SKIP_M8M2,4,2 ## @AML_SDXC_ENH_CNTRL_WR_RESP_MODE_SKIP_M8M2
	.comm	_AML_SDXC_ENH_CNTRL_DMA_NO_WR_RESP_CHECK_M8,4,2 ## @AML_SDXC_ENH_CNTRL_DMA_NO_WR_RESP_CHECK_M8
	.comm	_AML_SDXC_ENH_CNTRL_RX_TIMEOUT_SHIFT_M8,4,2 ## @AML_SDXC_ENH_CNTRL_RX_TIMEOUT_SHIFT_M8
	.section	__TEXT,__cstring,cstring_literals
L_.str:                                 ## @.str
	.asciz	"unsupported SoC\n"

	.comm	_ENXIO,4,2                      ## @ENXIO
L_.str.1:                               ## @.str.1
	.asciz	"clock-frequency"

L_.str.2:                               ## @.str.2
	.asciz	"missing clock-frequency attribute in FDT\n"

L_.str.3:                               ## @.str.3
	.asciz	"mmc-pwr-en"

L_.str.4:                               ## @.str.4
	.asciz	"unable to process mmc-pwr-en attribute in FDT\n"

	.comm	_GPIO_PIN_OUTPUT,4,2            ## @GPIO_PIN_OUTPUT
L_.str.5:                               ## @.str.5
	.asciz	"could not use gpio to control power\n"

L_.str.6:                               ## @.str.6
	.asciz	"mmc-voltages"

L_.str.7:                               ## @.str.7
	.asciz	"missing mmc-voltages attribute in FDT\n"

L_.str.8:                               ## @.str.8
	.asciz	"1.8"

	.comm	_MMC_OCR_LOW_VOLTAGE,4,2        ## @MMC_OCR_LOW_VOLTAGE
L_.str.9:                               ## @.str.9
	.asciz	"3.3"

	.comm	_MMC_OCR_320_330,4,2            ## @MMC_OCR_320_330
	.comm	_MMC_OCR_330_340,4,2            ## @MMC_OCR_330_340
L_.str.10:                              ## @.str.10
	.asciz	"unknown voltage attribute %.*s in FDT\n"

L_.str.11:                              ## @.str.11
	.asciz	"mmc-vselect"

L_.str.12:                              ## @.str.12
	.asciz	"unable to process mmc-vselect attribute in FDT\n"

L_.str.13:                              ## @.str.13
	.asciz	"could not use gpio to set voltage\n"

L_.str.14:                              ## @.str.14
	.asciz	"no voltages in FDT\n"

L_.str.15:                              ## @.str.15
	.asciz	"only one voltage in FDT\n"

L_.str.16:                              ## @.str.16
	.asciz	"too many voltages in FDT\n"

L_.str.17:                              ## @.str.17
	.asciz	"mmc-rst"

L_.str.18:                              ## @.str.18
	.asciz	"unable to process mmc-rst attribute in FDT\n"

	.comm	_aml8726_sdxc_spec,4,2          ## @aml8726_sdxc_spec
L_.str.19:                              ## @.str.19
	.asciz	"could not allocate resources for device\n"

	.comm	_AML_SDXC_ALIGN_DMA,4,2         ## @AML_SDXC_ALIGN_DMA
	.comm	_BUS_SPACE_MAXADDR_32BIT,4,2    ## @BUS_SPACE_MAXADDR_32BIT
	.comm	_BUS_SPACE_MAXADDR,4,2          ## @BUS_SPACE_MAXADDR
	.comm	_AML_SDXC_MAX_DMA,4,2           ## @AML_SDXC_MAX_DMA
	.comm	_INTR_TYPE_MISC,4,2             ## @INTR_TYPE_MISC
	.comm	_INTR_MPSAFE,4,2                ## @INTR_MPSAFE
	.comm	_aml8726_sdxc_intr,4,2          ## @aml8726_sdxc_intr
L_.str.20:                              ## @.str.20
	.asciz	"could not setup interrupt handler\n"

	.comm	_CALLOUT_RETURNUNLOCKED,4,2     ## @CALLOUT_RETURNUNLOCKED
	.comm	_MMC_CAP_8_BIT_DATA,4,2         ## @MMC_CAP_8_BIT_DATA
	.comm	_MMC_CAP_4_BIT_DATA,4,2         ## @MMC_CAP_4_BIT_DATA
	.comm	_MMC_CAP_HSPEED,4,2             ## @MMC_CAP_HSPEED
	.comm	_AML_SDXC_PDMA_REG,4,2          ## @AML_SDXC_PDMA_REG
	.comm	_AML_SDXC_MISC_REG,4,2          ## @AML_SDXC_MISC_REG
	.comm	_AML_SDXC_ENH_CNTRL_REG,4,2     ## @AML_SDXC_ENH_CNTRL_REG
L_.str.21:                              ## @.str.21
	.asciz	"mmc"

L_.str.22:                              ## @.str.22
	.asciz	"could not add mmc\n"

L_.str.23:                              ## @.str.23
	.asciz	"could not attach mmc\n"

	.no_dead_strip	_aml8726_sdxc_attach
.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 aml8726_sdxc_attach
lCPI0_0:
	.long	200000                          ; 0x30d40
	.long	100000000                       ; 0x5f5e100
	.section	__TEXT,__text,regular,pure_instructions
	.p2align	2
_aml8726_sdxc_attach:                   ; @aml8726_sdxc_attach
	.cfi_startproc
; %bb.0:
	sub	sp, sp, #224
	.cfi_def_cfa_offset 224
	stp	x28, x27, [sp, #128]            ; 16-byte Folded Spill
	stp	x26, x25, [sp, #144]            ; 16-byte Folded Spill
	stp	x24, x23, [sp, #160]            ; 16-byte Folded Spill
	stp	x22, x21, [sp, #176]            ; 16-byte Folded Spill
	stp	x20, x19, [sp, #192]            ; 16-byte Folded Spill
	stp	x29, x30, [sp, #208]            ; 16-byte Folded Spill
	add	x29, sp, #208
	.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	x19, x0
Lloh0:
	adrp	x8, ___stack_chk_guard@GOTPAGE
Lloh1:
	ldr	x8, [x8, ___stack_chk_guard@GOTPAGEOFF]
Lloh2:
	ldr	x8, [x8]
	stur	x8, [x29, #-88]
	bl	_device_get_softc
	mov	x20, x0
	str	w19, [x0, #152]
	str	wzr, [x0]
Lloh3:
	adrp	x8, _AML_SDXC_PDMA_DMA_URGENT@GOTPAGE
Lloh4:
	ldr	x8, [x8, _AML_SDXC_PDMA_DMA_URGENT@GOTPAGEOFF]
Lloh5:
	ldr	w25, [x8]
Lloh6:
	adrp	x8, _AML_SDXC_PDMA_TX_THOLD_SHIFT@GOTPAGE
Lloh7:
	ldr	x8, [x8, _AML_SDXC_PDMA_TX_THOLD_SHIFT@GOTPAGEOFF]
Lloh8:
	ldr	w27, [x8]
Lloh9:
	adrp	x8, _AML_SDXC_PDMA_RX_THOLD_SHIFT@GOTPAGE
Lloh10:
	ldr	x8, [x8, _AML_SDXC_PDMA_RX_THOLD_SHIFT@GOTPAGEOFF]
Lloh11:
	ldr	w26, [x8]
Lloh12:
	adrp	x8, _AML_SDXC_PDMA_RD_BURST_SHIFT@GOTPAGE
Lloh13:
	ldr	x8, [x8, _AML_SDXC_PDMA_RD_BURST_SHIFT@GOTPAGEOFF]
	mov	w11, #7
Lloh14:
	ldr	w28, [x8]
Lloh15:
	adrp	x8, _AML_SDXC_PDMA_WR_BURST_SHIFT@GOTPAGE
Lloh16:
	ldr	x8, [x8, _AML_SDXC_PDMA_WR_BURST_SHIFT@GOTPAGEOFF]
Lloh17:
	adrp	x9, _AML_SDXC_MISC_WCRC_OK_PAT_SHIFT@GOTPAGE
Lloh18:
	ldr	x9, [x9, _AML_SDXC_MISC_WCRC_OK_PAT_SHIFT@GOTPAGEOFF]
Lloh19:
	ldr	w24, [x8]
Lloh20:
	ldr	w10, [x9]
Lloh21:
	adrp	x8, _AML_SDXC_MISC_WCRC_ERR_PAT_SHIFT@GOTPAGE
Lloh22:
	ldr	x8, [x8, _AML_SDXC_MISC_WCRC_ERR_PAT_SHIFT@GOTPAGEOFF]
Lloh23:
	adrp	x9, _AML_SDXC_ENH_CNTRL_SDIO_IRQ_PERIOD_SHIFT@GOTPAGE
Lloh24:
	ldr	x9, [x9, _AML_SDXC_ENH_CNTRL_SDIO_IRQ_PERIOD_SHIFT@GOTPAGEOFF]
Lloh25:
	ldr	w23, [x8]
Lloh26:
	ldr	w22, [x9]
Lloh27:
	adrp	x8, _aml8726_soc_hw_rev@GOTPAGE
Lloh28:
	ldr	x8, [x8, _aml8726_soc_hw_rev@GOTPAGEOFF]
Lloh29:
	ldr	w8, [x8]
	cmp	w8, #129
	b.eq	LBB0_4
; %bb.1:
	cmp	w8, #130
	b.ne	LBB0_5
; %bb.2:
	str	x10, [sp, #80]                  ; 8-byte Folded Spill
Lloh30:
	adrp	x8, _aml8726_soc_metal_rev@GOTPAGE
Lloh31:
	ldr	x8, [x8, _aml8726_soc_metal_rev@GOTPAGEOFF]
Lloh32:
	ldr	w10, [x8]
Lloh33:
	adrp	x9, _AML_SDXC_MISC_TXSTART_THOLD_SHIFT@GOTPAGE
Lloh34:
	ldr	x9, [x9, _AML_SDXC_MISC_TXSTART_THOLD_SHIFT@GOTPAGEOFF]
Lloh35:
	adrp	x8, _AML_SDXC_ENH_CNTRL_RX_FULL_THOLD_SHIFT@GOTPAGE
Lloh36:
	ldr	x8, [x8, _AML_SDXC_ENH_CNTRL_RX_FULL_THOLD_SHIFT@GOTPAGEOFF]
	cmp	w10, #128
	b.ne	LBB0_6
; %bb.3:
	mov	w10, #1
	str	w10, [x20]
	ldr	w9, [x9]
	mov	w10, #6
	lsl	w9, w10, w9
	str	w9, [sp, #76]                   ; 4-byte Folded Spill
	ldr	w8, [x8]
	mov	w9, #64
	lsl	w8, w9, w8
Lloh37:
	adrp	x9, _AML_SDXC_ENH_CNTRL_WR_RESP_MODE_SKIP_M8M2@GOTPAGE
Lloh38:
	ldr	x9, [x9, _AML_SDXC_ENH_CNTRL_WR_RESP_MODE_SKIP_M8M2@GOTPAGEOFF]
Lloh39:
	ldr	w9, [x9]
	b	LBB0_8
LBB0_4:
	str	x10, [sp, #80]                  ; 8-byte Folded Spill
Lloh40:
	adrp	x8, _AML_SDXC_MISC_TXSTART_THOLD_SHIFT@GOTPAGE
Lloh41:
	ldr	x8, [x8, _AML_SDXC_MISC_TXSTART_THOLD_SHIFT@GOTPAGEOFF]
Lloh42:
	ldr	w8, [x8]
	lsl	w8, w11, w8
	str	w8, [sp, #76]                   ; 4-byte Folded Spill
Lloh43:
	adrp	x8, _AML_SDXC_ENH_CNTRL_RX_FULL_THOLD_SHIFT@GOTPAGE
Lloh44:
	ldr	x8, [x8, _AML_SDXC_ENH_CNTRL_RX_FULL_THOLD_SHIFT@GOTPAGEOFF]
	b	LBB0_7
LBB0_5:
Lloh45:
	adrp	x1, l_.str@PAGE
Lloh46:
	add	x1, x1, l_.str@PAGEOFF
	b	LBB0_17
LBB0_6:
	ldr	w9, [x9]
	mov	w10, #7
	lsl	w9, w10, w9
	str	w9, [sp, #76]                   ; 4-byte Folded Spill
LBB0_7:
	ldr	w8, [x8]
	mov	w9, #63
	lsl	w8, w9, w8
Lloh47:
	adrp	x9, _AML_SDXC_ENH_CNTRL_DMA_NO_WR_RESP_CHECK_M8@GOTPAGE
Lloh48:
	ldr	x9, [x9, _AML_SDXC_ENH_CNTRL_DMA_NO_WR_RESP_CHECK_M8@GOTPAGEOFF]
Lloh49:
	ldr	w9, [x9]
	orr	w8, w8, w9
Lloh50:
	adrp	x9, _AML_SDXC_ENH_CNTRL_RX_TIMEOUT_SHIFT_M8@GOTPAGE
Lloh51:
	ldr	x9, [x9, _AML_SDXC_ENH_CNTRL_RX_TIMEOUT_SHIFT_M8@GOTPAGEOFF]
Lloh52:
	ldr	w9, [x9]
	mov	w10, #255
	lsl	w9, w10, w9
LBB0_8:
	orr	w8, w8, w9
	str	w8, [sp, #72]                   ; 4-byte Folded Spill
	mov	x0, x19
	bl	_ofw_bus_get_node
	mov	x21, x0
Lloh53:
	adrp	x1, l_.str.1@PAGE
Lloh54:
	add	x1, x1, l_.str.1@PAGEOFF
	add	x2, sp, #96
	mov	w3, #24
	bl	_OF_getencprop
	and	w8, w0, #0xfffffff8
	cmp	w8, #8
	b.ne	LBB0_16
; %bb.9:
	ldr	x8, [sp, #96]
	cbz	x8, LBB0_16
; %bb.10:
	str	x8, [x20, #144]
	str	xzr, [x20, #128]
Lloh55:
	adrp	x1, l_.str.3@PAGE
Lloh56:
	add	x1, x1, l_.str.3@PAGEOFF
	add	x2, sp, #96
	mov	x0, x21
	mov	w3, #24
	bl	_OF_getencprop
	cmp	w0, #1
	b.lt	LBB0_21
; %bb.11:
	and	w8, w0, #0xfffffff8
	cmp	w8, #24
	b.ne	LBB0_26
; %bb.12:
	ldr	x0, [sp, #96]
	bl	_OF_device_from_xref
	ldp	x8, x9, [sp, #104]
	stp	x8, x0, [x20, #120]
	str	x9, [x20, #136]
	cbz	x0, LBB0_27
LBB0_13:
	mov	x0, x20
	bl	_aml8726_sdxc_power_off
	cbnz	x0, LBB0_15
; %bb.14:
	ldp	x1, x0, [x20, #120]
Lloh57:
	adrp	x8, _GPIO_PIN_OUTPUT@GOTPAGE
Lloh58:
	ldr	x8, [x8, _GPIO_PIN_OUTPUT@GOTPAGEOFF]
Lloh59:
	ldr	w2, [x8]
	bl	_GPIO_PIN_SETFLAGS
	cbz	x0, LBB0_21
LBB0_15:
Lloh60:
	adrp	x1, l_.str.5@PAGE
Lloh61:
	add	x1, x1, l_.str.5@PAGEOFF
	b	LBB0_17
LBB0_16:
Lloh62:
	adrp	x1, l_.str.2@PAGE
Lloh63:
	add	x1, x1, l_.str.2@PAGEOFF
LBB0_17:
	mov	x0, x19
	bl	_device_printf
LBB0_18:
Lloh64:
	adrp	x8, _ENXIO@GOTPAGE
Lloh65:
	ldr	x8, [x8, _ENXIO@GOTPAGEOFF]
Lloh66:
	ldr	w21, [x8]
LBB0_19:
	ldur	x8, [x29, #-88]
Lloh67:
	adrp	x9, ___stack_chk_guard@GOTPAGE
Lloh68:
	ldr	x9, [x9, ___stack_chk_guard@GOTPAGEOFF]
Lloh69:
	ldr	x9, [x9]
	cmp	x9, x8
	b.ne	LBB0_91
; %bb.20:
	mov	x0, x21
	ldp	x29, x30, [sp, #208]            ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #192]            ; 16-byte Folded Reload
	ldp	x22, x21, [sp, #176]            ; 16-byte Folded Reload
	ldp	x24, x23, [sp, #160]            ; 16-byte Folded Reload
	ldp	x26, x25, [sp, #144]            ; 16-byte Folded Reload
	ldp	x28, x27, [sp, #128]            ; 16-byte Folded Reload
	add	sp, sp, #224
	ret
LBB0_21:
	str	x23, [sp, #64]                  ; 8-byte Folded Spill
Lloh70:
	adrp	x1, l_.str.6@PAGE
Lloh71:
	add	x1, x1, l_.str.6@PAGEOFF
	add	x2, sp, #88
	mov	x0, x21
	bl	_OF_getprop_alloc
	tbnz	w0, #31, LBB0_28
; %bb.22:
	mov	x23, x0
	str	x22, [sp, #56]                  ; 8-byte Folded Spill
	ldr	x8, [x20, #8]
	str	xzr, [x8]
	ldr	x22, [sp, #88]
	cbz	w0, LBB0_43
; %bb.23:
Lloh72:
	adrp	x0, l_.str.8@PAGE
Lloh73:
	add	x0, x0, l_.str.8@PAGEOFF
	mov	x1, x22
	mov	x2, x23
	bl	_strncmp
	cbz	x0, LBB0_29
; %bb.24:
Lloh74:
	adrp	x0, l_.str.9@PAGE
Lloh75:
	add	x0, x0, l_.str.9@PAGEOFF
	mov	x1, x22
	mov	x2, x23
	bl	_strncmp
	cbnz	x0, LBB0_40
; %bb.25:
Lloh76:
	adrp	x8, _MMC_OCR_320_330@GOTPAGE
Lloh77:
	ldr	x8, [x8, _MMC_OCR_320_330@GOTPAGEOFF]
Lloh78:
	ldr	w8, [x8]
Lloh79:
	adrp	x9, _MMC_OCR_330_340@GOTPAGE
Lloh80:
	ldr	x9, [x9, _MMC_OCR_330_340@GOTPAGEOFF]
Lloh81:
	ldr	w9, [x9]
	orr	w8, w9, w8
	b	LBB0_30
LBB0_26:
	ldr	x0, [x20, #128]
	cbnz	x0, LBB0_13
LBB0_27:
Lloh82:
	adrp	x1, l_.str.4@PAGE
Lloh83:
	add	x1, x1, l_.str.4@PAGEOFF
	b	LBB0_17
LBB0_28:
Lloh84:
	adrp	x1, l_.str.7@PAGE
Lloh85:
	add	x1, x1, l_.str.7@PAGEOFF
	b	LBB0_17
LBB0_29:
Lloh86:
	adrp	x8, _MMC_OCR_LOW_VOLTAGE@GOTPAGE
Lloh87:
	ldr	x8, [x8, _MMC_OCR_LOW_VOLTAGE@GOTPAGEOFF]
Lloh88:
	ldr	w8, [x8]
LBB0_30:
	ldr	x9, [x20, #8]
	str	w8, [x9]
	ldrb	w8, [x22]
	cbz	w8, LBB0_35
; %bb.31:
	sub	w23, w23, #1
LBB0_32:                                ; =>This Inner Loop Header: Depth=1
	mov	x8, x23
	ldrb	w10, [x22, #1]!
	subs	w23, w23, #1
	cset	w9, hs
	cbz	w10, LBB0_34
; %bb.33:                               ;   in Loop: Header=BB0_32 Depth=1
	tbnz	w9, #0, LBB0_32
LBB0_34:
	cbnz	w8, LBB0_36
	b	LBB0_41
LBB0_35:
	sub	w23, w23, #1
LBB0_36:
	cbz	w23, LBB0_41
; %bb.37:
	add	x1, x22, #1
Lloh89:
	adrp	x0, l_.str.8@PAGE
Lloh90:
	add	x0, x0, l_.str.8@PAGEOFF
	str	x1, [sp, #48]                   ; 8-byte Folded Spill
	mov	x2, x23
	bl	_strncmp
	cbz	x0, LBB0_63
; %bb.38:
Lloh91:
	adrp	x0, l_.str.9@PAGE
Lloh92:
	add	x0, x0, l_.str.9@PAGEOFF
	ldr	x1, [sp, #48]                   ; 8-byte Folded Reload
	mov	x2, x23
	bl	_strncmp
	cbz	x0, LBB0_68
; %bb.39:
	ldr	x22, [sp, #48]                  ; 8-byte Folded Reload
LBB0_40:
	stp	x23, x22, [sp]
Lloh93:
	adrp	x1, l_.str.10@PAGE
Lloh94:
	add	x1, x1, l_.str.10@PAGEOFF
	mov	x0, x19
	bl	_device_printf
	ldr	x0, [sp, #88]
	bl	_OF_prop_free
	b	LBB0_18
LBB0_41:
	mov	w23, #1
LBB0_42:
	ldr	x22, [sp, #88]
LBB0_43:
	mov	x0, x22
	bl	_OF_prop_free
	str	xzr, [x20, #104]
Lloh95:
	adrp	x1, l_.str.11@PAGE
Lloh96:
	add	x1, x1, l_.str.11@PAGEOFF
	add	x2, sp, #96
	mov	x0, x21
	mov	w3, #24
	bl	_OF_getencprop
	cmp	w0, #1
	b.lt	LBB0_51
; %bb.44:
	and	w8, w0, #0xfffffff8
	cmp	w8, #16
	b.ne	LBB0_46
; %bb.45:
	ldr	x0, [sp, #96]
	bl	_OF_device_from_xref
	ldr	x8, [sp, #104]
	stp	x0, x8, [x20, #104]
	mov	w8, #1
	str	w8, [x20, #96]
	b	LBB0_47
LBB0_46:
	ldr	x0, [x20, #104]
LBB0_47:
	cbz	x0, LBB0_55
; %bb.48:
	ldr	x1, [x20, #112]
	mov	w2, #0
	bl	_GPIO_PIN_SET
	cbnz	x0, LBB0_50
; %bb.49:
	ldp	x0, x1, [x20, #104]
Lloh97:
	adrp	x8, _GPIO_PIN_OUTPUT@GOTPAGE
Lloh98:
	ldr	x8, [x8, _GPIO_PIN_OUTPUT@GOTPAGEOFF]
Lloh99:
	ldr	w2, [x8]
	bl	_GPIO_PIN_SETFLAGS
	cbz	x0, LBB0_51
LBB0_50:
Lloh100:
	adrp	x1, l_.str.13@PAGE
Lloh101:
	add	x1, x1, l_.str.13@PAGEOFF
	b	LBB0_17
LBB0_51:
	cmp	w23, #2
	b.eq	LBB0_56
; %bb.52:
	cmp	w23, #1
	b.eq	LBB0_58
; %bb.53:
	cbnz	w23, LBB0_60
; %bb.54:
Lloh102:
	adrp	x1, l_.str.14@PAGE
Lloh103:
	add	x1, x1, l_.str.14@PAGEOFF
	b	LBB0_17
LBB0_55:
Lloh104:
	adrp	x1, l_.str.12@PAGE
Lloh105:
	add	x1, x1, l_.str.12@PAGEOFF
	b	LBB0_17
LBB0_56:
	ldr	x8, [x20, #104]
	cbnz	x8, LBB0_60
; %bb.57:
Lloh106:
	adrp	x1, l_.str.16@PAGE
Lloh107:
	add	x1, x1, l_.str.16@PAGEOFF
	b	LBB0_17
LBB0_58:
	ldr	x8, [x20, #104]
	cbz	x8, LBB0_60
; %bb.59:
Lloh108:
	adrp	x1, l_.str.15@PAGE
Lloh109:
	add	x1, x1, l_.str.15@PAGEOFF
	b	LBB0_17
LBB0_60:
	str	xzr, [x20, #72]
Lloh110:
	adrp	x1, l_.str.17@PAGE
Lloh111:
	add	x1, x1, l_.str.17@PAGEOFF
	add	x2, sp, #96
	mov	x0, x21
	mov	w3, #24
	bl	_OF_getencprop
	cmp	w0, #1
	b.lt	LBB0_66
; %bb.61:
	and	w8, w0, #0xfffffff8
	cmp	w8, #24
	b.ne	LBB0_64
; %bb.62:
	ldr	x0, [sp, #96]
	bl	_OF_device_from_xref
	str	x0, [x20, #72]
	ldur	q0, [sp, #104]
	ext.16b	v0, v0, v0, #8
	str	q0, [x20, #80]
	b	LBB0_65
LBB0_63:
	ldr	x10, [sp, #48]                  ; 8-byte Folded Reload
Lloh112:
	adrp	x8, _MMC_OCR_LOW_VOLTAGE@GOTPAGE
Lloh113:
	ldr	x8, [x8, _MMC_OCR_LOW_VOLTAGE@GOTPAGEOFF]
Lloh114:
	ldr	w8, [x8]
	b	LBB0_69
LBB0_64:
	ldr	x0, [x20, #72]
LBB0_65:
	cbz	x0, LBB0_86
LBB0_66:
Lloh115:
	adrp	x23, _aml8726_sdxc_spec@GOTPAGE
Lloh116:
	ldr	x23, [x23, _aml8726_sdxc_spec@GOTPAGEOFF]
	ldr	w1, [x23]
	ldr	x2, [x20, #16]
	mov	x0, x19
	bl	_bus_alloc_resources
	cbz	x0, LBB0_73
; %bb.67:
Lloh117:
	adrp	x1, l_.str.19@PAGE
Lloh118:
	add	x1, x1, l_.str.19@PAGEOFF
	b	LBB0_17
LBB0_68:
	ldr	x10, [sp, #48]                  ; 8-byte Folded Reload
Lloh119:
	adrp	x8, _MMC_OCR_320_330@GOTPAGE
Lloh120:
	ldr	x8, [x8, _MMC_OCR_320_330@GOTPAGEOFF]
Lloh121:
	ldr	w8, [x8]
Lloh122:
	adrp	x9, _MMC_OCR_330_340@GOTPAGE
Lloh123:
	ldr	x9, [x9, _MMC_OCR_330_340@GOTPAGEOFF]
Lloh124:
	ldr	w9, [x9]
	orr	w8, w9, w8
LBB0_69:
	ldr	x9, [x20, #8]
	str	w8, [x9, #4]
	ldrb	w8, [x10]
	cbz	w8, LBB0_85
; %bb.70:
	add	x8, x22, #2
	sub	w9, w23, #1
	mov	w23, #2
LBB0_71:                                ; =>This Inner Loop Header: Depth=1
	ldrb	w11, [x8], #1
	subs	w9, w9, #1
	cset	w10, hs
	cbz	w11, LBB0_42
; %bb.72:                               ;   in Loop: Header=BB0_71 Depth=1
	tbnz	w10, #0, LBB0_71
	b	LBB0_42
LBB0_73:
	mov	x0, x20
	bl	_AML_SDXC_LOCK_INIT
	mov	x0, x19
	bl	_bus_get_dma_tag
Lloh125:
	adrp	x8, _AML_SDXC_ALIGN_DMA@GOTPAGE
Lloh126:
	ldr	x8, [x8, _AML_SDXC_ALIGN_DMA@GOTPAGEOFF]
Lloh127:
	ldr	w1, [x8]
Lloh128:
	adrp	x8, _BUS_SPACE_MAXADDR_32BIT@GOTPAGE
Lloh129:
	ldr	x8, [x8, _BUS_SPACE_MAXADDR_32BIT@GOTPAGEOFF]
Lloh130:
	adrp	x9, _BUS_SPACE_MAXADDR@GOTPAGE
Lloh131:
	ldr	x9, [x9, _BUS_SPACE_MAXADDR@GOTPAGEOFF]
Lloh132:
	ldr	w3, [x8]
Lloh133:
	ldr	w4, [x9]
Lloh134:
	adrp	x8, _AML_SDXC_MAX_DMA@GOTPAGE
Lloh135:
	ldr	x8, [x8, _AML_SDXC_MAX_DMA@GOTPAGEOFF]
Lloh136:
	ldr	w7, [x8]
	add	x22, x20, #24
	stp	xzr, xzr, [sp, #16]
	str	x22, [sp, #32]
	stp	w7, wzr, [sp, #4]
	mov	w8, #1
	str	w8, [sp]
	mov	w2, #0
	mov	x5, #0
	mov	x6, #0
	bl	_bus_dma_tag_create
	mov	x21, x0
	cbnz	w0, LBB0_78
; %bb.74:
	ldr	x0, [x20, #24]
	add	x2, x20, #32
	mov	w1, #0
	bl	_bus_dmamap_create
	mov	x21, x0
	cbnz	w0, LBB0_78
; %bb.75:
	ldr	x8, [x20, #16]
	ldr	w1, [x8, #4]
Lloh137:
	adrp	x8, _INTR_TYPE_MISC@GOTPAGE
Lloh138:
	ldr	x8, [x8, _INTR_TYPE_MISC@GOTPAGEOFF]
Lloh139:
	ldr	w8, [x8]
Lloh140:
	adrp	x9, _INTR_MPSAFE@GOTPAGE
Lloh141:
	ldr	x9, [x9, _INTR_MPSAFE@GOTPAGEOFF]
Lloh142:
	ldr	w9, [x9]
	orr	w2, w9, w8
Lloh143:
	adrp	x8, _aml8726_sdxc_intr@GOTPAGE
Lloh144:
	ldr	x8, [x8, _aml8726_sdxc_intr@GOTPAGEOFF]
Lloh145:
	ldr	w4, [x8]
	add	x6, x20, #40
	mov	x0, x19
	mov	x3, #0
	mov	x5, x20
	bl	_bus_setup_intr
	cbz	w0, LBB0_87
; %bb.76:
	mov	x21, x0
Lloh146:
	adrp	x1, l_.str.20@PAGE
Lloh147:
	add	x1, x1, l_.str.20@PAGEOFF
LBB0_77:
	mov	x0, x19
	bl	_device_printf
LBB0_78:
	ldr	x2, [x20, #40]
	cbz	x2, LBB0_80
LBB0_79:
	ldr	x8, [x20, #16]
	ldr	w1, [x8, #4]
	mov	x0, x19
	bl	_bus_teardown_intr
LBB0_80:
	ldr	x1, [x20, #32]
	cbz	x1, LBB0_82
; %bb.81:
	ldr	x0, [x22]
	bl	_bus_dmamap_destroy
LBB0_82:
	ldr	x0, [x22]
	cbz	x0, LBB0_84
; %bb.83:
	bl	_bus_dma_tag_destroy
LBB0_84:
	mov	x0, x20
	bl	_AML_SDXC_LOCK_DESTROY
	mov	x0, x20
	bl	_aml8726_sdxc_power_off
	ldr	w1, [x23]
	ldr	x2, [x20, #16]
	mov	x0, x19
	bl	_bus_release_resources
	b	LBB0_19
LBB0_85:
	mov	w23, #2
	b	LBB0_42
LBB0_86:
Lloh148:
	adrp	x1, l_.str.18@PAGE
Lloh149:
	add	x1, x1, l_.str.18@PAGEOFF
	b	LBB0_17
LBB0_87:
	mov	w8, #49
	lsl	w8, w8, w27
	orr	w8, w8, w25
	mov	w10, #7
	lsl	w9, w10, w26
	orr	w8, w8, w9
	mov	w9, #15
	lsl	w9, w9, w28
	orr	w8, w8, w9
	lsl	w9, w10, w24
	orr	w21, w8, w9
	mov	w8, #2
	ldr	x9, [sp, #80]                   ; 8-byte Folded Reload
	lsl	w8, w8, w9
	mov	w9, #5
	ldr	x10, [sp, #64]                  ; 8-byte Folded Reload
	lsl	w9, w9, w10
	orr	w8, w9, w8
	mov	w9, #12
	ldr	x10, [sp, #56]                  ; 8-byte Folded Reload
	lsl	w9, w9, w10
	ldr	w10, [sp, #76]                  ; 4-byte Folded Reload
	orr	w25, w8, w10
	ldr	w8, [sp, #72]                   ; 4-byte Folded Reload
	orr	w24, w8, w9
	add	x0, x20, #68
	add	x1, x20, #64
Lloh150:
	adrp	x8, _CALLOUT_RETURNUNLOCKED@GOTPAGE
Lloh151:
	ldr	x8, [x8, _CALLOUT_RETURNUNLOCKED@GOTPAGEOFF]
Lloh152:
	ldr	w2, [x8]
	bl	_callout_init_mtx
Lloh153:
	adrp	x8, lCPI0_0@PAGE
Lloh154:
	ldr	d0, [x8, lCPI0_0@PAGEOFF]
	str	d0, [x20, #48]
	ldr	x8, [x20, #8]
	ldp	w9, w8, [x8]
Lloh155:
	adrp	x10, _MMC_CAP_8_BIT_DATA@GOTPAGE
Lloh156:
	ldr	x10, [x10, _MMC_CAP_8_BIT_DATA@GOTPAGEOFF]
	orr	w8, w8, w9
Lloh157:
	ldr	w9, [x10]
Lloh158:
	adrp	x10, _MMC_CAP_4_BIT_DATA@GOTPAGE
Lloh159:
	ldr	x10, [x10, _MMC_CAP_4_BIT_DATA@GOTPAGEOFF]
Lloh160:
	ldr	w10, [x10]
	orr	w9, w10, w9
Lloh161:
	adrp	x10, _MMC_CAP_HSPEED@GOTPAGE
Lloh162:
	ldr	x10, [x10, _MMC_CAP_HSPEED@GOTPAGEOFF]
Lloh163:
	ldr	w10, [x10]
	orr	w9, w9, w10
	stp	w8, w9, [x20, #56]
	mov	x0, x20
	bl	_aml8726_sdxc_soft_reset
Lloh164:
	adrp	x8, _AML_SDXC_PDMA_REG@GOTPAGE
Lloh165:
	ldr	x8, [x8, _AML_SDXC_PDMA_REG@GOTPAGEOFF]
Lloh166:
	ldr	w1, [x8]
	mov	x0, x20
	mov	x2, x21
	bl	_CSR_WRITE_4
Lloh167:
	adrp	x8, _AML_SDXC_MISC_REG@GOTPAGE
Lloh168:
	ldr	x8, [x8, _AML_SDXC_MISC_REG@GOTPAGEOFF]
Lloh169:
	ldr	w1, [x8]
	mov	x0, x20
	mov	x2, x25
	bl	_CSR_WRITE_4
Lloh170:
	adrp	x8, _AML_SDXC_ENH_CNTRL_REG@GOTPAGE
Lloh171:
	ldr	x8, [x8, _AML_SDXC_ENH_CNTRL_REG@GOTPAGEOFF]
Lloh172:
	ldr	w1, [x8]
	mov	x0, x20
	mov	x2, x24
	bl	_CSR_WRITE_4
Lloh173:
	adrp	x1, l_.str.21@PAGE
Lloh174:
	add	x1, x1, l_.str.21@PAGEOFF
	mov	x0, x19
	mov	w2, #-1
	bl	_device_add_child
	cbz	w0, LBB0_90
; %bb.88:
	bl	_device_probe_and_attach
	mov	x21, x0
	cbz	w0, LBB0_19
; %bb.89:
Lloh175:
	adrp	x1, l_.str.23@PAGE
Lloh176:
	add	x1, x1, l_.str.23@PAGEOFF
	b	LBB0_77
LBB0_90:
Lloh177:
	adrp	x1, l_.str.22@PAGE
Lloh178:
	add	x1, x1, l_.str.22@PAGEOFF
	mov	x0, x19
	bl	_device_printf
Lloh179:
	adrp	x8, _ENXIO@GOTPAGE
Lloh180:
	ldr	x8, [x8, _ENXIO@GOTPAGEOFF]
Lloh181:
	ldr	w21, [x8]
	ldr	x2, [x20, #40]
	cbnz	x2, LBB0_79
	b	LBB0_80
LBB0_91:
	bl	___stack_chk_fail
	.loh AdrpLdrGotLdr	Lloh27, Lloh28, Lloh29
	.loh AdrpLdrGotLdr	Lloh23, Lloh24, Lloh26
	.loh AdrpLdrGotLdr	Lloh21, Lloh22, Lloh25
	.loh AdrpLdrGotLdr	Lloh17, Lloh18, Lloh20
	.loh AdrpLdrGotLdr	Lloh15, Lloh16, Lloh19
	.loh AdrpLdrGotLdr	Lloh12, Lloh13, Lloh14
	.loh AdrpLdrGotLdr	Lloh9, Lloh10, Lloh11
	.loh AdrpLdrGotLdr	Lloh6, Lloh7, Lloh8
	.loh AdrpLdrGotLdr	Lloh3, Lloh4, Lloh5
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.loh AdrpLdrGot	Lloh35, Lloh36
	.loh AdrpLdrGot	Lloh33, Lloh34
	.loh AdrpLdrGotLdr	Lloh30, Lloh31, Lloh32
	.loh AdrpLdrGotLdr	Lloh37, Lloh38, Lloh39
	.loh AdrpLdrGot	Lloh43, Lloh44
	.loh AdrpLdrGotLdr	Lloh40, Lloh41, Lloh42
	.loh AdrpAdd	Lloh45, Lloh46
	.loh AdrpLdrGotLdr	Lloh50, Lloh51, Lloh52
	.loh AdrpLdrGotLdr	Lloh47, Lloh48, Lloh49
	.loh AdrpAdd	Lloh53, Lloh54
	.loh AdrpAdd	Lloh55, Lloh56
	.loh AdrpLdrGotLdr	Lloh57, Lloh58, Lloh59
	.loh AdrpAdd	Lloh60, Lloh61
	.loh AdrpAdd	Lloh62, Lloh63
	.loh AdrpLdrGotLdr	Lloh64, Lloh65, Lloh66
	.loh AdrpLdrGotLdr	Lloh67, Lloh68, Lloh69
	.loh AdrpAdd	Lloh70, Lloh71
	.loh AdrpAdd	Lloh72, Lloh73
	.loh AdrpAdd	Lloh74, Lloh75
	.loh AdrpLdrGotLdr	Lloh79, Lloh80, Lloh81
	.loh AdrpLdrGotLdr	Lloh76, Lloh77, Lloh78
	.loh AdrpAdd	Lloh82, Lloh83
	.loh AdrpAdd	Lloh84, Lloh85
	.loh AdrpLdrGotLdr	Lloh86, Lloh87, Lloh88
	.loh AdrpAdd	Lloh89, Lloh90
	.loh AdrpAdd	Lloh91, Lloh92
	.loh AdrpAdd	Lloh93, Lloh94
	.loh AdrpAdd	Lloh95, Lloh96
	.loh AdrpLdrGotLdr	Lloh97, Lloh98, Lloh99
	.loh AdrpAdd	Lloh100, Lloh101
	.loh AdrpAdd	Lloh102, Lloh103
	.loh AdrpAdd	Lloh104, Lloh105
	.loh AdrpAdd	Lloh106, Lloh107
	.loh AdrpAdd	Lloh108, Lloh109
	.loh AdrpAdd	Lloh110, Lloh111
	.loh AdrpLdrGotLdr	Lloh112, Lloh113, Lloh114
	.loh AdrpLdrGot	Lloh115, Lloh116
	.loh AdrpAdd	Lloh117, Lloh118
	.loh AdrpLdrGotLdr	Lloh122, Lloh123, Lloh124
	.loh AdrpLdrGotLdr	Lloh119, Lloh120, Lloh121
	.loh AdrpLdrGotLdr	Lloh134, Lloh135, Lloh136
	.loh AdrpLdrGotLdr	Lloh130, Lloh131, Lloh133
	.loh AdrpLdrGotLdr	Lloh128, Lloh129, Lloh132
	.loh AdrpLdrGotLdr	Lloh125, Lloh126, Lloh127
	.loh AdrpLdrGotLdr	Lloh143, Lloh144, Lloh145
	.loh AdrpLdrGotLdr	Lloh140, Lloh141, Lloh142
	.loh AdrpLdrGotLdr	Lloh137, Lloh138, Lloh139
	.loh AdrpAdd	Lloh146, Lloh147
	.loh AdrpAdd	Lloh148, Lloh149
	.loh AdrpAdd	Lloh173, Lloh174
	.loh AdrpLdrGotLdr	Lloh170, Lloh171, Lloh172
	.loh AdrpLdrGotLdr	Lloh167, Lloh168, Lloh169
	.loh AdrpLdrGotLdr	Lloh164, Lloh165, Lloh166
	.loh AdrpLdrGotLdr	Lloh161, Lloh162, Lloh163
	.loh AdrpLdrGotLdr	Lloh158, Lloh159, Lloh160
	.loh AdrpLdrGotLdr	Lloh155, Lloh156, Lloh157
	.loh AdrpLdr	Lloh153, Lloh154
	.loh AdrpLdrGotLdr	Lloh150, Lloh151, Lloh152
	.loh AdrpAdd	Lloh175, Lloh176
	.loh AdrpLdrGotLdr	Lloh179, Lloh180, Lloh181
	.loh AdrpAdd	Lloh177, Lloh178
	.cfi_endproc
                                        ; -- End function
	.comm	_AML_SDXC_PDMA_DMA_URGENT,4,2   ; @AML_SDXC_PDMA_DMA_URGENT
	.comm	_AML_SDXC_PDMA_TX_THOLD_SHIFT,4,2 ; @AML_SDXC_PDMA_TX_THOLD_SHIFT
	.comm	_AML_SDXC_PDMA_RX_THOLD_SHIFT,4,2 ; @AML_SDXC_PDMA_RX_THOLD_SHIFT
	.comm	_AML_SDXC_PDMA_RD_BURST_SHIFT,4,2 ; @AML_SDXC_PDMA_RD_BURST_SHIFT
	.comm	_AML_SDXC_PDMA_WR_BURST_SHIFT,4,2 ; @AML_SDXC_PDMA_WR_BURST_SHIFT
	.comm	_AML_SDXC_MISC_WCRC_OK_PAT_SHIFT,4,2 ; @AML_SDXC_MISC_WCRC_OK_PAT_SHIFT
	.comm	_AML_SDXC_MISC_WCRC_ERR_PAT_SHIFT,4,2 ; @AML_SDXC_MISC_WCRC_ERR_PAT_SHIFT
	.comm	_AML_SDXC_ENH_CNTRL_SDIO_IRQ_PERIOD_SHIFT,4,2 ; @AML_SDXC_ENH_CNTRL_SDIO_IRQ_PERIOD_SHIFT
	.comm	_aml8726_soc_hw_rev,4,2         ; @aml8726_soc_hw_rev
	.comm	_aml8726_soc_metal_rev,4,2      ; @aml8726_soc_metal_rev
	.comm	_AML_SDXC_MISC_TXSTART_THOLD_SHIFT,4,2 ; @AML_SDXC_MISC_TXSTART_THOLD_SHIFT
	.comm	_AML_SDXC_ENH_CNTRL_RX_FULL_THOLD_SHIFT,4,2 ; @AML_SDXC_ENH_CNTRL_RX_FULL_THOLD_SHIFT
	.comm	_AML_SDXC_ENH_CNTRL_WR_RESP_MODE_SKIP_M8M2,4,2 ; @AML_SDXC_ENH_CNTRL_WR_RESP_MODE_SKIP_M8M2
	.comm	_AML_SDXC_ENH_CNTRL_DMA_NO_WR_RESP_CHECK_M8,4,2 ; @AML_SDXC_ENH_CNTRL_DMA_NO_WR_RESP_CHECK_M8
	.comm	_AML_SDXC_ENH_CNTRL_RX_TIMEOUT_SHIFT_M8,4,2 ; @AML_SDXC_ENH_CNTRL_RX_TIMEOUT_SHIFT_M8
	.section	__TEXT,__cstring,cstring_literals
l_.str:                                 ; @.str
	.asciz	"unsupported SoC\n"

	.comm	_ENXIO,4,2                      ; @ENXIO
l_.str.1:                               ; @.str.1
	.asciz	"clock-frequency"

l_.str.2:                               ; @.str.2
	.asciz	"missing clock-frequency attribute in FDT\n"

l_.str.3:                               ; @.str.3
	.asciz	"mmc-pwr-en"

l_.str.4:                               ; @.str.4
	.asciz	"unable to process mmc-pwr-en attribute in FDT\n"

	.comm	_GPIO_PIN_OUTPUT,4,2            ; @GPIO_PIN_OUTPUT
l_.str.5:                               ; @.str.5
	.asciz	"could not use gpio to control power\n"

l_.str.6:                               ; @.str.6
	.asciz	"mmc-voltages"

l_.str.7:                               ; @.str.7
	.asciz	"missing mmc-voltages attribute in FDT\n"

l_.str.8:                               ; @.str.8
	.asciz	"1.8"

	.comm	_MMC_OCR_LOW_VOLTAGE,4,2        ; @MMC_OCR_LOW_VOLTAGE
l_.str.9:                               ; @.str.9
	.asciz	"3.3"

	.comm	_MMC_OCR_320_330,4,2            ; @MMC_OCR_320_330
	.comm	_MMC_OCR_330_340,4,2            ; @MMC_OCR_330_340
l_.str.10:                              ; @.str.10
	.asciz	"unknown voltage attribute %.*s in FDT\n"

l_.str.11:                              ; @.str.11
	.asciz	"mmc-vselect"

l_.str.12:                              ; @.str.12
	.asciz	"unable to process mmc-vselect attribute in FDT\n"

l_.str.13:                              ; @.str.13
	.asciz	"could not use gpio to set voltage\n"

l_.str.14:                              ; @.str.14
	.asciz	"no voltages in FDT\n"

l_.str.15:                              ; @.str.15
	.asciz	"only one voltage in FDT\n"

l_.str.16:                              ; @.str.16
	.asciz	"too many voltages in FDT\n"

l_.str.17:                              ; @.str.17
	.asciz	"mmc-rst"

l_.str.18:                              ; @.str.18
	.asciz	"unable to process mmc-rst attribute in FDT\n"

	.comm	_aml8726_sdxc_spec,4,2          ; @aml8726_sdxc_spec
l_.str.19:                              ; @.str.19
	.asciz	"could not allocate resources for device\n"

	.comm	_AML_SDXC_ALIGN_DMA,4,2         ; @AML_SDXC_ALIGN_DMA
	.comm	_BUS_SPACE_MAXADDR_32BIT,4,2    ; @BUS_SPACE_MAXADDR_32BIT
	.comm	_BUS_SPACE_MAXADDR,4,2          ; @BUS_SPACE_MAXADDR
	.comm	_AML_SDXC_MAX_DMA,4,2           ; @AML_SDXC_MAX_DMA
	.comm	_INTR_TYPE_MISC,4,2             ; @INTR_TYPE_MISC
	.comm	_INTR_MPSAFE,4,2                ; @INTR_MPSAFE
	.comm	_aml8726_sdxc_intr,4,2          ; @aml8726_sdxc_intr
l_.str.20:                              ; @.str.20
	.asciz	"could not setup interrupt handler\n"

	.comm	_CALLOUT_RETURNUNLOCKED,4,2     ; @CALLOUT_RETURNUNLOCKED
	.comm	_MMC_CAP_8_BIT_DATA,4,2         ; @MMC_CAP_8_BIT_DATA
	.comm	_MMC_CAP_4_BIT_DATA,4,2         ; @MMC_CAP_4_BIT_DATA
	.comm	_MMC_CAP_HSPEED,4,2             ; @MMC_CAP_HSPEED
	.comm	_AML_SDXC_PDMA_REG,4,2          ; @AML_SDXC_PDMA_REG
	.comm	_AML_SDXC_MISC_REG,4,2          ; @AML_SDXC_MISC_REG
	.comm	_AML_SDXC_ENH_CNTRL_REG,4,2     ; @AML_SDXC_ENH_CNTRL_REG
l_.str.21:                              ; @.str.21
	.asciz	"mmc"

l_.str.22:                              ; @.str.22
	.asciz	"could not add mmc\n"

l_.str.23:                              ; @.str.23
	.asciz	"could not attach mmc\n"

	.no_dead_strip	_aml8726_sdxc_attach
.subsections_via_symbols
