On Wed, 2021-07-14 at 16:11 +0900, Chanho Park wrote: > UFS controller of ExynosAuto v9 SoC supports multi-host interface for > I/O > > virtualization. In general, we're using para-virtualized driver to > > support a block device by several virtual machines. However, it > should > > be relayed by backend driver. Multi-host functionality extends the > host > > controller by providing register interfaces that can be used by each > > VM's ufs drivers respectively. By this, we can provide direct access > to > > the UFS device for multiple VMs. It's similar with SR-IOV of PCIe. > Hi Chanho Park, very inteseted in this patch. you mentined SR-IOV. In order to make your patch work on the UFS, does UFS device side need changes? or the common current 3.1 UFS can work with this new controller? > > > We divide this M-HCI as PH(Physical Host) and VHs(Virtual Host). The > PH > > supports all UFSHCI functions(all SAPs) same as conventional UFSHCI > but > > the VH only supports data transfer function. Thus, except UTP_CMD_SAP > and > > UTP_TMPSAP, the PH should handle all the physical features. > > > > This patch provides an initial implementation of PH part. M-HCI can > > support up to four interfaces but this patch initially supports only > 1 > > PH and 1 VH. For this, we uses TASK_TAG[7:5] field so TASK_TAG[4:0] > for > > 32 doorbel will be supported. After the PH is initiated, this will > send I don't understand here. how many doorbell registers you have now? and doesn VHs have a doorbell register also? and each doorbell register still supprts 32 tags? Kind regards Beab