	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_ishtp_hbm_dispatch             ## -- Begin function ishtp_hbm_dispatch
	.p2align	4, 0x90
_ishtp_hbm_dispatch:                    ## @ishtp_hbm_dispatch
	.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	%rbx
	subq	$24, %rsp
	.cfi_offset %rbx, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	movq	%rdi, %rbx
	movl	(%rsi), %edx
	leal	-128(%rdx), %eax
	cmpl	$10, %eax
	ja	LBB0_38
## %bb.1:
	leaq	LJTI0_0(%rip), %rcx
	movslq	(%rcx,%rax,4), %rax
	addq	%rcx, %rax
	jmpq	*%rax
LBB0_25:
	movq	(%rbx), %rax
	movq	_ISHTP_HBM_STOPPED@GOTPCREL(%rip), %rcx
	cmpq	(%rcx), %rax
	je	LBB0_27
## %bb.26:
	movl	20(%rbx), %edi
	leaq	L_.str.6(%rip), %rsi
	xorl	%eax, %eax
	callq	_dev_err
LBB0_27:
	movq	_ISHTP_DEV_DISABLED@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movl	%eax, 28(%rbx)
	movl	20(%rbx), %edi
	leaq	L_.str.7(%rip), %rsi
	callq	_dev_info
	jmp	LBB0_7
LBB0_38:
	movl	20(%rbx), %edi
	leaq	L_.str.10(%rip), %rsi
                                        ## kill: def $edx killed $edx killed $rdx
	xorl	%eax, %eax
	addq	$24, %rsp
	popq	%rbx
	popq	%r14
	popq	%r15
	popq	%rbp
	jmp	_dev_err                        ## TAILCALL
LBB0_2:
	cmpl	$0, 8(%rsi)
	je	LBB0_41
## %bb.3:
	movq	_HBM_MAJOR_VERSION@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movl	%eax, 72(%rbx)
	movq	_HBM_MINOR_VERSION@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movl	%eax, 68(%rbx)
	movl	28(%rbx), %eax
	movq	_ISHTP_DEV_INIT_CLIENTS@GOTPCREL(%rip), %rcx
	cmpl	(%rcx), %eax
	jne	LBB0_5
## %bb.4:
	movq	(%rbx), %rax
	movq	_ISHTP_HBM_START@GOTPCREL(%rip), %rcx
	cmpq	(%rcx), %rax
	je	LBB0_42
LBB0_5:
	movl	20(%rbx), %edi
	leaq	L_.str(%rip), %rsi
	jmp	LBB0_6
LBB0_22:
	movl	36(%rbx), %edi
	movl	$130, %esi
	movl	$32, %edx
	callq	_memcpy
	movl	28(%rbx), %eax
	movq	_ISHTP_DEV_INIT_CLIENTS@GOTPCREL(%rip), %rcx
	cmpl	(%rcx), %eax
	jne	LBB0_24
## %bb.23:
	movq	(%rbx), %rax
	movq	_ISHTP_HBM_ENUM_CLIENTS@GOTPCREL(%rip), %rcx
	cmpq	(%rcx), %rax
	je	LBB0_43
LBB0_24:
	movl	20(%rbx), %edi
	leaq	L_.str.5(%rip), %rsi
	jmp	LBB0_6
LBB0_10:
	cmpl	$0, 8(%rsi)
	jne	LBB0_12
## %bb.11:
	movq	56(%rbx), %rax
	testq	%rax, %rax
	je	LBB0_12
## %bb.13:
	movq	8(%rbx), %rdi
	movl	4(%rax,%rdi,8), %edx
	movl	4(%rsi), %ecx
	cmpl	%ecx, %edx
	jne	LBB0_14
## %bb.15:
	movl	28(%rbx), %ecx
	movq	_ISHTP_DEV_INIT_CLIENTS@GOTPCREL(%rip), %rdx
	cmpl	(%rdx), %ecx
	jne	LBB0_17
## %bb.16:
	movq	(%rbx), %rcx
	movq	_ISHTP_HBM_CLIENT_PROPERTIES@GOTPCREL(%rip), %rdx
	cmpq	(%rdx), %rcx
	je	LBB0_18
LBB0_17:
	movl	20(%rbx), %edi
	leaq	L_.str.3(%rip), %rsi
	jmp	LBB0_6
LBB0_39:
	movq	_ISHTP_HBM_STOPPED@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	%rax, (%rbx)
	jmp	LBB0_40
LBB0_34:
	cmpl	$0, 16(%rbx)
	je	LBB0_36
## %bb.35:
	cmpl	$0, 24(%rbx)
	je	LBB0_36
## %bb.37:
	movq	%rbx, %rdi
	addq	$24, %rsp
	popq	%rbx
	popq	%r14
	popq	%r15
	popq	%rbp
	jmp	_ishtp_hbm_dma_xfer_ack         ## TAILCALL
LBB0_30:
	cmpl	$0, 16(%rbx)
	je	LBB0_31
## %bb.33:
	movq	%rbx, %rdi
	addq	$24, %rsp
	popq	%rbx
	popq	%r14
	popq	%r15
	popq	%rbp
	jmp	_ishtp_hbm_dma_xfer             ## TAILCALL
LBB0_29:
	movl	$1, 16(%rbx)
LBB0_40:
	addq	$24, %rsp
	popq	%rbx
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
LBB0_9:
	movq	%rbx, %rdi
	addq	$24, %rsp
	popq	%rbx
	popq	%r14
	popq	%r15
	popq	%rbp
	jmp	_ishtp_hbm_cl_disconnect_res    ## TAILCALL
LBB0_28:
	movq	%rbx, %rdi
	addq	$24, %rsp
	popq	%rbx
	popq	%r14
	popq	%r15
	popq	%rbp
	jmp	_ishtp_hbm_fw_disconnect_req    ## TAILCALL
LBB0_8:
	movq	%rbx, %rdi
	addq	$24, %rsp
	popq	%rbx
	popq	%r14
	popq	%r15
	popq	%rbp
	jmp	_ishtp_hbm_cl_connect_res       ## TAILCALL
LBB0_36:
	movl	20(%rbx), %edi
	leaq	L_.str.9(%rip), %rsi
	jmp	LBB0_32
LBB0_12:
	movl	20(%rbx), %edi
	leaq	L_.str.1(%rip), %rsi
LBB0_6:
	xorl	%eax, %eax
	callq	_dev_err
LBB0_7:
	movq	%rbx, %rdi
	addq	$24, %rsp
	popq	%rbx
	popq	%r14
	popq	%r15
	popq	%rbp
	jmp	_ish_hw_reset                   ## TAILCALL
LBB0_41:
	movq	(%rsi), %rax
	movq	%rax, 68(%rbx)
	movq	_ISHTP_HBM_STOPPED@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	%rax, (%rbx)
	movq	%rbx, %rdi
	addq	$24, %rsp
	popq	%rbx
	popq	%r14
	popq	%r15
	popq	%rbp
	jmp	_ishtp_hbm_stop_req             ## TAILCALL
LBB0_31:
	movl	20(%rbx), %edi
	leaq	L_.str.8(%rip), %rsi
LBB0_32:
	xorl	%eax, %eax
	addq	$24, %rsp
	popq	%rbx
	popq	%r14
	popq	%r15
	popq	%rbp
	jmp	_dev_err                        ## TAILCALL
LBB0_14:
	movl	20(%rbx), %edi
	leaq	L_.str.2(%rip), %rsi
	xorl	%eax, %eax
	callq	_dev_err
	jmp	LBB0_7
LBB0_43:
	movq	$0, 8(%rbx)
	movl	$0, 32(%rbx)
	movq	%rbx, %rdi
	callq	_ishtp_hbm_fw_cl_allocate
	movq	_ISHTP_HBM_CLIENT_PROPERTIES@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	%rax, (%rbx)
	movq	%rbx, %rdi
	addq	$24, %rsp
	popq	%rbx
	popq	%r14
	popq	%r15
	popq	%rbp
	jmp	_ishtp_hbm_prop_req             ## TAILCALL
LBB0_42:
	movq	_ISHTP_HBM_STARTED@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	%rax, (%rbx)
	movq	%rbx, %rdi
	callq	_ishtp_hbm_enum_clients_req
	addq	$64, %rbx
	movq	%rbx, %rdi
	addq	$24, %rsp
	popq	%rbx
	popq	%r14
	popq	%r15
	popq	%rbp
	jmp	_wake_up_interruptible          ## TAILCALL
LBB0_18:
	movl	$131, (%rax,%rdi,8)
	incl	32(%rbx)
	incq	%rdi
	movq	%rdi, 8(%rbx)
	movq	%rbx, %rdi
	callq	_ishtp_hbm_prop_req
	movl	28(%rbx), %eax
	movq	_ISHTP_DEV_ENABLED@GOTPCREL(%rip), %rcx
	cmpl	(%rcx), %eax
	jne	LBB0_40
## %bb.19:
	xorl	%eax, %eax
	callq	_ishtp_use_dma_transfer
	testl	%eax, %eax
	je	LBB0_40
## %bb.20:
	movl	20(%rbx), %edi
	leaq	L_.str.4(%rip), %rsi
	callq	_dev_dbg
	movq	%rbx, %rdi
	callq	_ishtp_cl_alloc_dma_buf
	cmpl	$0, 48(%rbx)
	je	LBB0_40
## %bb.21:
	leaq	-40(%rbp), %r14
	movq	%r14, %rdi
	xorl	%esi, %esi
	movl	$12, %edx
	callq	_memset
	movq	_DMA_BUFFER_ALLOC_NOTIFY@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movl	%eax, -32(%rbp)
	movl	44(%rbx), %eax
	movl	%eax, -36(%rbp)
	movl	40(%rbx), %eax
	movl	%eax, -40(%rbp)
	leaq	-48(%rbp), %r15
	movl	$12, %esi
	movq	%r15, %rdi
	callq	_ishtp_hbm_hdr
	movq	%rbx, %rdi
	movq	%r15, %rsi
	movq	%r14, %rdx
	callq	_ishtp_write_message
	jmp	LBB0_40
	.cfi_endproc
	.p2align	2, 0x90
	.data_region jt32
.set L0_0_set_25, LBB0_25-LJTI0_0
.set L0_0_set_2, LBB0_2-LJTI0_0
.set L0_0_set_22, LBB0_22-LJTI0_0
.set L0_0_set_10, LBB0_10-LJTI0_0
.set L0_0_set_39, LBB0_39-LJTI0_0
.set L0_0_set_34, LBB0_34-LJTI0_0
.set L0_0_set_30, LBB0_30-LJTI0_0
.set L0_0_set_29, LBB0_29-LJTI0_0
.set L0_0_set_9, LBB0_9-LJTI0_0
.set L0_0_set_28, LBB0_28-LJTI0_0
.set L0_0_set_8, LBB0_8-LJTI0_0
LJTI0_0:
	.long	L0_0_set_25
	.long	L0_0_set_2
	.long	L0_0_set_22
	.long	L0_0_set_10
	.long	L0_0_set_39
	.long	L0_0_set_34
	.long	L0_0_set_30
	.long	L0_0_set_29
	.long	L0_0_set_9
	.long	L0_0_set_28
	.long	L0_0_set_8
	.end_data_region
                                        ## -- End function
	.comm	_ISHTP_HBM_STOPPED,8,3          ## @ISHTP_HBM_STOPPED
	.comm	_HBM_MAJOR_VERSION,4,2          ## @HBM_MAJOR_VERSION
	.comm	_HBM_MINOR_VERSION,4,2          ## @HBM_MINOR_VERSION
	.comm	_ISHTP_DEV_INIT_CLIENTS,4,2     ## @ISHTP_DEV_INIT_CLIENTS
	.comm	_ISHTP_HBM_START,8,3            ## @ISHTP_HBM_START
	.comm	_ISHTP_HBM_STARTED,8,3          ## @ISHTP_HBM_STARTED
	.section	__TEXT,__cstring,cstring_literals
L_.str:                                 ## @.str
	.asciz	"reset: wrong host start response\n"

L_.str.1:                               ## @.str.1
	.asciz	"reset: properties response hbm wrong status\n"

L_.str.2:                               ## @.str.2
	.asciz	"reset: host properties response address mismatch [%02X %02X]\n"

	.comm	_ISHTP_HBM_CLIENT_PROPERTIES,8,3 ## @ISHTP_HBM_CLIENT_PROPERTIES
L_.str.3:                               ## @.str.3
	.asciz	"reset: unexpected properties response\n"

	.comm	_ISHTP_DEV_ENABLED,4,2          ## @ISHTP_DEV_ENABLED
L_.str.4:                               ## @.str.4
	.asciz	"Requesting to use DMA\n"

	.comm	_DMA_BUFFER_ALLOC_NOTIFY,4,2    ## @DMA_BUFFER_ALLOC_NOTIFY
	.comm	_ISHTP_HBM_ENUM_CLIENTS,8,3     ## @ISHTP_HBM_ENUM_CLIENTS
L_.str.5:                               ## @.str.5
	.asciz	"reset: unexpected enumeration response hbm\n"

L_.str.6:                               ## @.str.6
	.asciz	"unexpected stop response\n"

	.comm	_ISHTP_DEV_DISABLED,4,2         ## @ISHTP_DEV_DISABLED
L_.str.7:                               ## @.str.7
	.asciz	"reset: FW stop response\n"

L_.str.8:                               ## @.str.8
	.asciz	"DMA XFER requested but DMA is not enabled\n"

L_.str.9:                               ## @.str.9
	.asciz	"DMA XFER acked but DMA Tx is not enabled\n"

L_.str.10:                              ## @.str.10
	.asciz	"unknown HBM: %u\n"

.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_ishtp_hbm_dispatch             ; -- Begin function ishtp_hbm_dispatch
	.p2align	2
_ishtp_hbm_dispatch:                    ; @ishtp_hbm_dispatch
	.cfi_startproc
; %bb.0:
	sub	sp, sp, #80
	.cfi_def_cfa_offset 80
	stp	x20, x19, [sp, #48]             ; 16-byte Folded Spill
	stp	x29, x30, [sp, #64]             ; 16-byte Folded Spill
	add	x29, sp, #64
	.cfi_def_cfa w29, 16
	.cfi_offset w30, -8
	.cfi_offset w29, -16
	.cfi_offset w19, -24
	.cfi_offset w20, -32
	mov	x19, x0
	ldr	w8, [x1]
	sub	w9, w8, #128
	cmp	w9, #10
	b.hi	LBB0_5
; %bb.1:
Lloh0:
	adrp	x8, lJTI0_0@PAGE
Lloh1:
	add	x8, x8, lJTI0_0@PAGEOFF
	adr	x10, LBB0_2
	ldrb	w11, [x8, x9]
	add	x10, x10, x11, lsl #2
	br	x10
LBB0_2:
	ldr	x8, [x19]
Lloh2:
	adrp	x9, _ISHTP_HBM_STOPPED@GOTPAGE
Lloh3:
	ldr	x9, [x9, _ISHTP_HBM_STOPPED@GOTPAGEOFF]
Lloh4:
	ldr	x9, [x9]
	cmp	x8, x9
	b.eq	LBB0_4
; %bb.3:
	ldr	w0, [x19, #20]
Lloh5:
	adrp	x1, l_.str.6@PAGE
Lloh6:
	add	x1, x1, l_.str.6@PAGEOFF
	bl	_dev_err
LBB0_4:
Lloh7:
	adrp	x8, _ISHTP_DEV_DISABLED@GOTPAGE
Lloh8:
	ldr	x8, [x8, _ISHTP_DEV_DISABLED@GOTPAGEOFF]
Lloh9:
	ldr	w8, [x8]
	str	w8, [x19, #28]
	ldr	w0, [x19, #20]
Lloh10:
	adrp	x1, l_.str.7@PAGE
Lloh11:
	add	x1, x1, l_.str.7@PAGEOFF
	bl	_dev_info
	b	LBB0_36
LBB0_5:
	ldr	w0, [x19, #20]
	str	x8, [sp]
Lloh12:
	adrp	x1, l_.str.10@PAGE
Lloh13:
	add	x1, x1, l_.str.10@PAGEOFF
	bl	_dev_err
	b	LBB0_22
LBB0_6:
	ldr	w8, [x1, #8]
	cbz	w8, LBB0_31
; %bb.7:
Lloh14:
	adrp	x8, _HBM_MAJOR_VERSION@GOTPAGE
Lloh15:
	ldr	x8, [x8, _HBM_MAJOR_VERSION@GOTPAGEOFF]
Lloh16:
	ldr	w8, [x8]
Lloh17:
	adrp	x9, _HBM_MINOR_VERSION@GOTPAGE
Lloh18:
	ldr	x9, [x9, _HBM_MINOR_VERSION@GOTPAGEOFF]
Lloh19:
	ldr	w9, [x9]
	stp	w9, w8, [x19, #68]
	ldr	w8, [x19, #28]
Lloh20:
	adrp	x9, _ISHTP_DEV_INIT_CLIENTS@GOTPAGE
Lloh21:
	ldr	x9, [x9, _ISHTP_DEV_INIT_CLIENTS@GOTPAGEOFF]
Lloh22:
	ldr	w9, [x9]
	cmp	w8, w9
	b.ne	LBB0_9
; %bb.8:
	ldr	x8, [x19]
Lloh23:
	adrp	x9, _ISHTP_HBM_START@GOTPAGE
Lloh24:
	ldr	x9, [x9, _ISHTP_HBM_START@GOTPAGEOFF]
Lloh25:
	ldr	x9, [x9]
	cmp	x8, x9
	b.eq	LBB0_38
LBB0_9:
	ldr	w0, [x19, #20]
Lloh26:
	adrp	x1, l_.str@PAGE
Lloh27:
	add	x1, x1, l_.str@PAGEOFF
	b	LBB0_35
LBB0_10:
	ldr	w0, [x19, #36]
	mov	w1, #130
	mov	w2, #32
	bl	_memcpy
	ldr	w8, [x19, #28]
Lloh28:
	adrp	x9, _ISHTP_DEV_INIT_CLIENTS@GOTPAGE
Lloh29:
	ldr	x9, [x9, _ISHTP_DEV_INIT_CLIENTS@GOTPAGEOFF]
Lloh30:
	ldr	w9, [x9]
	cmp	w8, w9
	b.ne	LBB0_12
; %bb.11:
	ldr	x8, [x19]
Lloh31:
	adrp	x9, _ISHTP_HBM_ENUM_CLIENTS@GOTPAGE
Lloh32:
	ldr	x9, [x9, _ISHTP_HBM_ENUM_CLIENTS@GOTPAGEOFF]
Lloh33:
	ldr	x9, [x9]
	cmp	x8, x9
	b.eq	LBB0_37
LBB0_12:
	ldr	w0, [x19, #20]
Lloh34:
	adrp	x1, l_.str.5@PAGE
Lloh35:
	add	x1, x1, l_.str.5@PAGEOFF
	b	LBB0_35
LBB0_13:
	ldr	x8, [x19, #56]
	ldr	w9, [x1, #8]
	cmp	w9, #0
	ccmp	x8, #0, #4, eq
	b.ne	LBB0_27
; %bb.14:
	ldr	w0, [x19, #20]
Lloh36:
	adrp	x1, l_.str.1@PAGE
Lloh37:
	add	x1, x1, l_.str.1@PAGEOFF
	b	LBB0_35
LBB0_15:
Lloh38:
	adrp	x8, _ISHTP_HBM_STOPPED@GOTPAGE
Lloh39:
	ldr	x8, [x8, _ISHTP_HBM_STOPPED@GOTPAGEOFF]
Lloh40:
	ldr	x8, [x8]
	str	x8, [x19]
	b	LBB0_22
LBB0_16:
	ldr	w8, [x19, #16]
	cbz	w8, LBB0_26
; %bb.17:
	ldr	w8, [x19, #24]
	cbz	w8, LBB0_26
; %bb.18:
	mov	x0, x19
	ldp	x29, x30, [sp, #64]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #48]             ; 16-byte Folded Reload
	add	sp, sp, #80
	b	_ishtp_hbm_dma_xfer_ack
LBB0_19:
	ldr	w8, [x19, #16]
	cbz	w8, LBB0_32
; %bb.20:
	mov	x0, x19
	ldp	x29, x30, [sp, #64]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #48]             ; 16-byte Folded Reload
	add	sp, sp, #80
	b	_ishtp_hbm_dma_xfer
LBB0_21:
	mov	w8, #1
	str	w8, [x19, #16]
LBB0_22:
	ldp	x29, x30, [sp, #64]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #48]             ; 16-byte Folded Reload
	add	sp, sp, #80
	ret
LBB0_23:
	mov	x0, x19
	ldp	x29, x30, [sp, #64]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #48]             ; 16-byte Folded Reload
	add	sp, sp, #80
	b	_ishtp_hbm_cl_disconnect_res
LBB0_24:
	mov	x0, x19
	ldp	x29, x30, [sp, #64]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #48]             ; 16-byte Folded Reload
	add	sp, sp, #80
	b	_ishtp_hbm_fw_disconnect_req
LBB0_25:
	mov	x0, x19
	ldp	x29, x30, [sp, #64]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #48]             ; 16-byte Folded Reload
	add	sp, sp, #80
	b	_ishtp_hbm_cl_connect_res
LBB0_26:
	ldr	w0, [x19, #20]
Lloh41:
	adrp	x1, l_.str.9@PAGE
Lloh42:
	add	x1, x1, l_.str.9@PAGEOFF
	b	LBB0_33
LBB0_27:
	ldr	x9, [x19, #8]
	add	x10, x8, x9, lsl #3
	ldr	w10, [x10, #4]
	ldr	w11, [x1, #4]
	cmp	w10, w11
	b.ne	LBB0_34
; %bb.28:
	ldr	w10, [x19, #28]
Lloh43:
	adrp	x11, _ISHTP_DEV_INIT_CLIENTS@GOTPAGE
Lloh44:
	ldr	x11, [x11, _ISHTP_DEV_INIT_CLIENTS@GOTPAGEOFF]
Lloh45:
	ldr	w11, [x11]
	cmp	w10, w11
	b.ne	LBB0_30
; %bb.29:
	ldr	x10, [x19]
Lloh46:
	adrp	x11, _ISHTP_HBM_CLIENT_PROPERTIES@GOTPAGE
Lloh47:
	ldr	x11, [x11, _ISHTP_HBM_CLIENT_PROPERTIES@GOTPAGEOFF]
Lloh48:
	ldr	x11, [x11]
	cmp	x10, x11
	b.eq	LBB0_39
LBB0_30:
	ldr	w0, [x19, #20]
Lloh49:
	adrp	x1, l_.str.3@PAGE
Lloh50:
	add	x1, x1, l_.str.3@PAGEOFF
	b	LBB0_35
LBB0_31:
	ldr	x8, [x1]
	stur	x8, [x19, #68]
Lloh51:
	adrp	x8, _ISHTP_HBM_STOPPED@GOTPAGE
Lloh52:
	ldr	x8, [x8, _ISHTP_HBM_STOPPED@GOTPAGEOFF]
Lloh53:
	ldr	x8, [x8]
	str	x8, [x19]
	mov	x0, x19
	ldp	x29, x30, [sp, #64]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #48]             ; 16-byte Folded Reload
	add	sp, sp, #80
	b	_ishtp_hbm_stop_req
LBB0_32:
	ldr	w0, [x19, #20]
Lloh54:
	adrp	x1, l_.str.8@PAGE
Lloh55:
	add	x1, x1, l_.str.8@PAGEOFF
LBB0_33:
	ldp	x29, x30, [sp, #64]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #48]             ; 16-byte Folded Reload
	add	sp, sp, #80
	b	_dev_err
LBB0_34:
	ldr	w0, [x19, #20]
	stp	x10, x11, [sp]
Lloh56:
	adrp	x1, l_.str.2@PAGE
Lloh57:
	add	x1, x1, l_.str.2@PAGEOFF
LBB0_35:
	bl	_dev_err
LBB0_36:
	mov	x0, x19
	ldp	x29, x30, [sp, #64]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #48]             ; 16-byte Folded Reload
	add	sp, sp, #80
	b	_ish_hw_reset
LBB0_37:
	str	xzr, [x19, #8]
	str	wzr, [x19, #32]
	mov	x0, x19
	bl	_ishtp_hbm_fw_cl_allocate
Lloh58:
	adrp	x8, _ISHTP_HBM_CLIENT_PROPERTIES@GOTPAGE
Lloh59:
	ldr	x8, [x8, _ISHTP_HBM_CLIENT_PROPERTIES@GOTPAGEOFF]
Lloh60:
	ldr	x8, [x8]
	str	x8, [x19]
	mov	x0, x19
	ldp	x29, x30, [sp, #64]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #48]             ; 16-byte Folded Reload
	add	sp, sp, #80
	b	_ishtp_hbm_prop_req
LBB0_38:
Lloh61:
	adrp	x8, _ISHTP_HBM_STARTED@GOTPAGE
Lloh62:
	ldr	x8, [x8, _ISHTP_HBM_STARTED@GOTPAGEOFF]
Lloh63:
	ldr	x8, [x8]
	mov	x20, x19
	str	x8, [x20], #64
	mov	x0, x19
	bl	_ishtp_hbm_enum_clients_req
	mov	x0, x20
	ldp	x29, x30, [sp, #64]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #48]             ; 16-byte Folded Reload
	add	sp, sp, #80
	b	_wake_up_interruptible
LBB0_39:
	lsl	x10, x9, #3
	mov	w11, #131
	str	w11, [x8, x10]
	ldr	w8, [x19, #32]
	add	w8, w8, #1
	str	w8, [x19, #32]
	add	x8, x9, #1
	str	x8, [x19, #8]
	mov	x0, x19
	bl	_ishtp_hbm_prop_req
	ldr	w8, [x19, #28]
Lloh64:
	adrp	x9, _ISHTP_DEV_ENABLED@GOTPAGE
Lloh65:
	ldr	x9, [x9, _ISHTP_DEV_ENABLED@GOTPAGEOFF]
Lloh66:
	ldr	w9, [x9]
	cmp	w8, w9
	b.ne	LBB0_22
; %bb.40:
	bl	_ishtp_use_dma_transfer
	cbz	w0, LBB0_22
; %bb.41:
	ldr	w0, [x19, #20]
Lloh67:
	adrp	x1, l_.str.4@PAGE
Lloh68:
	add	x1, x1, l_.str.4@PAGEOFF
	bl	_dev_dbg
	mov	x0, x19
	bl	_ishtp_cl_alloc_dma_buf
	ldr	w8, [x19, #48]
	cbz	w8, LBB0_22
; %bb.42:
	add	x0, sp, #24
	mov	w1, #0
	mov	w2, #12
	bl	_memset
Lloh69:
	adrp	x8, _DMA_BUFFER_ALLOC_NOTIFY@GOTPAGE
Lloh70:
	ldr	x8, [x8, _DMA_BUFFER_ALLOC_NOTIFY@GOTPAGEOFF]
Lloh71:
	ldr	w8, [x8]
	str	w8, [sp, #32]
	ldr	d0, [x19, #40]
	str	d0, [sp, #24]
	sub	x0, x29, #24
	mov	w1, #12
	bl	_ishtp_hbm_hdr
	sub	x1, x29, #24
	add	x2, sp, #24
	mov	x0, x19
	bl	_ishtp_write_message
	b	LBB0_22
	.loh AdrpAdd	Lloh0, Lloh1
	.loh AdrpLdrGotLdr	Lloh2, Lloh3, Lloh4
	.loh AdrpAdd	Lloh5, Lloh6
	.loh AdrpAdd	Lloh10, Lloh11
	.loh AdrpLdrGotLdr	Lloh7, Lloh8, Lloh9
	.loh AdrpAdd	Lloh12, Lloh13
	.loh AdrpLdrGotLdr	Lloh20, Lloh21, Lloh22
	.loh AdrpLdrGotLdr	Lloh17, Lloh18, Lloh19
	.loh AdrpLdrGotLdr	Lloh14, Lloh15, Lloh16
	.loh AdrpLdrGotLdr	Lloh23, Lloh24, Lloh25
	.loh AdrpAdd	Lloh26, Lloh27
	.loh AdrpLdrGotLdr	Lloh28, Lloh29, Lloh30
	.loh AdrpLdrGotLdr	Lloh31, Lloh32, Lloh33
	.loh AdrpAdd	Lloh34, Lloh35
	.loh AdrpAdd	Lloh36, Lloh37
	.loh AdrpLdrGotLdr	Lloh38, Lloh39, Lloh40
	.loh AdrpAdd	Lloh41, Lloh42
	.loh AdrpLdrGotLdr	Lloh43, Lloh44, Lloh45
	.loh AdrpLdrGotLdr	Lloh46, Lloh47, Lloh48
	.loh AdrpAdd	Lloh49, Lloh50
	.loh AdrpLdrGotLdr	Lloh51, Lloh52, Lloh53
	.loh AdrpAdd	Lloh54, Lloh55
	.loh AdrpAdd	Lloh56, Lloh57
	.loh AdrpLdrGotLdr	Lloh58, Lloh59, Lloh60
	.loh AdrpLdrGotLdr	Lloh61, Lloh62, Lloh63
	.loh AdrpLdrGotLdr	Lloh64, Lloh65, Lloh66
	.loh AdrpAdd	Lloh67, Lloh68
	.loh AdrpLdrGotLdr	Lloh69, Lloh70, Lloh71
	.cfi_endproc
	.section	__TEXT,__const
lJTI0_0:
	.byte	(LBB0_2-LBB0_2)>>2
	.byte	(LBB0_6-LBB0_2)>>2
	.byte	(LBB0_10-LBB0_2)>>2
	.byte	(LBB0_13-LBB0_2)>>2
	.byte	(LBB0_15-LBB0_2)>>2
	.byte	(LBB0_16-LBB0_2)>>2
	.byte	(LBB0_19-LBB0_2)>>2
	.byte	(LBB0_21-LBB0_2)>>2
	.byte	(LBB0_23-LBB0_2)>>2
	.byte	(LBB0_24-LBB0_2)>>2
	.byte	(LBB0_25-LBB0_2)>>2
                                        ; -- End function
	.comm	_ISHTP_HBM_STOPPED,8,3          ; @ISHTP_HBM_STOPPED
	.comm	_HBM_MAJOR_VERSION,4,2          ; @HBM_MAJOR_VERSION
	.comm	_HBM_MINOR_VERSION,4,2          ; @HBM_MINOR_VERSION
	.comm	_ISHTP_DEV_INIT_CLIENTS,4,2     ; @ISHTP_DEV_INIT_CLIENTS
	.comm	_ISHTP_HBM_START,8,3            ; @ISHTP_HBM_START
	.comm	_ISHTP_HBM_STARTED,8,3          ; @ISHTP_HBM_STARTED
	.section	__TEXT,__cstring,cstring_literals
l_.str:                                 ; @.str
	.asciz	"reset: wrong host start response\n"

l_.str.1:                               ; @.str.1
	.asciz	"reset: properties response hbm wrong status\n"

l_.str.2:                               ; @.str.2
	.asciz	"reset: host properties response address mismatch [%02X %02X]\n"

	.comm	_ISHTP_HBM_CLIENT_PROPERTIES,8,3 ; @ISHTP_HBM_CLIENT_PROPERTIES
l_.str.3:                               ; @.str.3
	.asciz	"reset: unexpected properties response\n"

	.comm	_ISHTP_DEV_ENABLED,4,2          ; @ISHTP_DEV_ENABLED
l_.str.4:                               ; @.str.4
	.asciz	"Requesting to use DMA\n"

	.comm	_DMA_BUFFER_ALLOC_NOTIFY,4,2    ; @DMA_BUFFER_ALLOC_NOTIFY
	.comm	_ISHTP_HBM_ENUM_CLIENTS,8,3     ; @ISHTP_HBM_ENUM_CLIENTS
l_.str.5:                               ; @.str.5
	.asciz	"reset: unexpected enumeration response hbm\n"

l_.str.6:                               ; @.str.6
	.asciz	"unexpected stop response\n"

	.comm	_ISHTP_DEV_DISABLED,4,2         ; @ISHTP_DEV_DISABLED
l_.str.7:                               ; @.str.7
	.asciz	"reset: FW stop response\n"

l_.str.8:                               ; @.str.8
	.asciz	"DMA XFER requested but DMA is not enabled\n"

l_.str.9:                               ; @.str.9
	.asciz	"DMA XFER acked but DMA Tx is not enabled\n"

l_.str.10:                              ; @.str.10
	.asciz	"unknown HBM: %u\n"

.subsections_via_symbols
