xref: /rk3399_rockchip-uboot/include/ufs.h (revision ec622ba8027255dab85c2681aa31f57abcd52249)
1*ec622ba8SYifeng Zhao /* SPDX-License-Identifier: GPL-2.0+ */
2*ec622ba8SYifeng Zhao #ifndef _UFS_H
3*ec622ba8SYifeng Zhao #define _UFS_H
4*ec622ba8SYifeng Zhao 
5*ec622ba8SYifeng Zhao struct udevice;
6*ec622ba8SYifeng Zhao 
7*ec622ba8SYifeng Zhao /**
8*ec622ba8SYifeng Zhao  * ufs_probe() - initialize all devices in the UFS uclass
9*ec622ba8SYifeng Zhao  *
10*ec622ba8SYifeng Zhao  * Return: 0 if Ok, -ve on error
11*ec622ba8SYifeng Zhao  */
12*ec622ba8SYifeng Zhao int ufs_probe(void);
13*ec622ba8SYifeng Zhao 
14*ec622ba8SYifeng Zhao /**
15*ec622ba8SYifeng Zhao  * ufs_probe_dev() - initialize a particular device in the UFS uclass
16*ec622ba8SYifeng Zhao  *
17*ec622ba8SYifeng Zhao  * @index: index in the uclass sequence
18*ec622ba8SYifeng Zhao  *
19*ec622ba8SYifeng Zhao  * Return: 0 if successfully probed, -ve on error
20*ec622ba8SYifeng Zhao  */
21*ec622ba8SYifeng Zhao int ufs_probe_dev(int index);
22*ec622ba8SYifeng Zhao 
23*ec622ba8SYifeng Zhao /*
24*ec622ba8SYifeng Zhao  * ufs_scsi_bind() - Create a new scsi device as a child of the UFS device and
25*ec622ba8SYifeng Zhao  *		     bind it to the ufs_scsi driver
26*ec622ba8SYifeng Zhao  * @ufs_dev: UFS device
27*ec622ba8SYifeng Zhao  * @scsi_devp: Pointer to scsi device
28*ec622ba8SYifeng Zhao  *
29*ec622ba8SYifeng Zhao  * Return: 0 if Ok, -ve on error
30*ec622ba8SYifeng Zhao  */
31*ec622ba8SYifeng Zhao int ufs_scsi_bind(struct udevice *ufs_dev, struct udevice **scsi_devp);
32*ec622ba8SYifeng Zhao #endif
33