Re: [RFC PATCH v3 1/4] ufs: core: prepare ufs for multi circular queue support

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, 2022-09-07 at 20:00 -0700, Asutosh Das (asd) wrote:
> > > ufshcd_lrb *lrbp, u8 upiu_flags)
> > >           /* command descriptor fields */
> > >           ucd_req_ptr->header.dword_0 = UPIU_HEADER_DWORD(
> > >                                   UPIU_TRANSACTION_COMMAND,
> > > upiu_flags,
> > > -                               lrbp->lun, lrbp->task_tag);
> > > +                               lrbp->lun, lrbp->task_tag &
> > > 0xff);
> > >           ucd_req_ptr->header.dword_1 = UPIU_HEADER_DWORD(
> > > -                               UPIU_COMMAND_SET_TYPE_SCSI, 0, 0,
> > > 0);
> > > +                               UPIU_COMMAND_SET_TYPE_SCSI, 0, 0,
> > > +                               (lrbp->task_tag & 0xf00) << 4);
> > >    
> > 
> > Are you sure here "(lrbp->task_tag & 0xf00) << 4" is correct?
> > 
> EXT_IID is the higher nibble in DWORD1. So this looks correct to me.
> 
> COMMAND UPIU
> 0           1     2     3
> xx000001b Flags LUN Task Tag
> 4                       5       6       7
> IID Command Set Type Reserved Reserved EXT_IID | Reserved

Hi Asutosh,

yes, [7:4] of byte 7 in UPIU header for host to device UPIUs EXT_IID,
this is correct.

but I think byte7 should be  (lrbp->task_tag & 0xf00) >> 4); rather
than "<< 4"

or what I missundersood.


Kind regards,
Bean






[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [Linux for Sparc]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux