On Tue, 13 Dec 2022 at 10:01, Victor Shih <victorshihgli@xxxxxxxxx> wrote: > > Add UHS-II specific data structures for commands and defines for > registers, as described in Part 1 UHS-II Addendum Version 1.01. > > UHS-II related definitions are listed below: > 1. UHS-II card capability: sd_uhs2_caps{} > 2. UHS-II configuration: sd_uhs2_config{} > 3. UHS-II Command structure: uhs2_command{} > 4. UHS-II register I/O address and register field definitions: sd_uhs2.h > > Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx> > Signed-off-by: Jason Lai <jason.lai@xxxxxxxxxxxxxxxxxxx> > Signed-off-by: Victor Shih <victor.shih@xxxxxxxxxxxxxxxxxxx> [...] > --- a/include/linux/mmc/core.h > +++ b/include/linux/mmc/core.h > @@ -23,6 +23,14 @@ enum mmc_blk_status { > MMC_BLK_NEW_REQUEST, > }; > > +struct uhs2_command { > + u16 header; > + u16 arg; > + __be32 *payload; > + u32 payload_len; > + u32 packet_len; > +}; > + > struct mmc_command { > u32 opcode; > u32 arg; > @@ -109,6 +117,11 @@ struct mmc_command { > unsigned int busy_timeout; /* busy detect timeout in ms */ > struct mmc_data *data; /* data segment associated with cmd */ > struct mmc_request *mrq; /* associated request */ > + > + struct uhs2_command *uhs2_cmd; /* UHS2 command */ > + u8 *uhs2_resp; /* UHS2 native cmd resp */ > + u8 uhs2_resp_len; /* UHS2 native cmd resp len */ > + u8 uhs2_tmode0_flag; /* UHS2 transfer mode flag */ I forgot to comment on this flag in my earlier reply. It looks like the flag is being set for "MMC_CMD_ADTC" commands. This makes me wonder, why can't we keep using cmd->flags to check this, rather than adding a new flag solely for UHS2? Or is there a problem with this? I will continue to comment around this at patch7 too. [...] Kind regards Uffe