Message ID | 1581922564-24914-2-git-send-email-chun-hung.wu@mediatek.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | mmc: mediatek: add mmc cqhci support | expand |
On Mon, 17 Feb 2020 at 07:56, Chun-Hung Wu <chun-hung.wu@mediatek.com> wrote: > > Expose MMC_CAP2_CQE and MMC_CAP2_CQE_DCMD > to host->caps2 if > 1. "supports-cqe" is defined in dt and > 2. "disable-cqe-dcmd" is not defined in dt. Both of these DT properties are defined as common mmc DT properties, so the above isn't really correct. Please clarify this. Moreover, I suggest to update commit message header into "mmc: core: Extend mmc_of_parse() to parse CQE bindings", as I think it better describes the change. > > Signed-off-by: Chun-Hung Wu <chun-hung.wu@mediatek.com> > --- > drivers/mmc/core/host.c | 8 ++++++++ > 1 file changed, 8 insertions(+) > > diff --git a/drivers/mmc/core/host.c b/drivers/mmc/core/host.c > index 105b7a7..efb0dbe 100644 > --- a/drivers/mmc/core/host.c > +++ b/drivers/mmc/core/host.c > @@ -319,6 +319,14 @@ int mmc_of_parse(struct mmc_host *host) > host->caps2 |= MMC_CAP2_NO_SD; > if (device_property_read_bool(dev, "no-mmc")) > host->caps2 |= MMC_CAP2_NO_MMC; > + if (device_property_read_bool(dev, "supports-cqe")) > + host->caps2 |= MMC_CAP2_CQE; > + > + /* Must be after "supports-cqe" check */ > + if (!device_property_read_bool(dev, "disable-cqe-dcmd")) { > + if (host->caps2 & MMC_CAP2_CQE) Does it really doesn't matter if we set this cap, even if MMC_CAP2_CQE isn't set? You can probably skip the check above. > + host->caps2 |= MMC_CAP2_CQE_DCMD; > + } > > /* Must be after "non-removable" check */ > if (device_property_read_u32(dev, "fixed-emmc-driver-type", &drv_type) == 0) { > -- > 1.9.1 Kind regards Uffe
On Wed, 2020-03-04 at 14:04 +0100, Ulf Hansson wrote: > On Mon, 17 Feb 2020 at 07:56, Chun-Hung Wu <chun-hung.wu@mediatek.com> wrote: > > > > Expose MMC_CAP2_CQE and MMC_CAP2_CQE_DCMD > > to host->caps2 if > > 1. "supports-cqe" is defined in dt and > > 2. "disable-cqe-dcmd" is not defined in dt. > > Both of these DT properties are defined as common mmc DT properties, > so the above isn't really correct. Please clarify this. Yes, the properties is common. But I think the "supports-cqe" or "disable-cqe-dcmd" is defined in vendor's mmc dt, not common mmc dt? Don't know what's wrong with the above description, any suggestion? > > Moreover, I suggest to update commit message header into "mmc: core: > Extend mmc_of_parse() to parse CQE bindings", as I think it better > describes the change. Thanks, I think the commit message you provide is better, will change it in v4. > > > > > Signed-off-by: Chun-Hung Wu <chun-hung.wu@mediatek.com> > > --- > > drivers/mmc/core/host.c | 8 ++++++++ > > 1 file changed, 8 insertions(+) > > > > diff --git a/drivers/mmc/core/host.c b/drivers/mmc/core/host.c > > index 105b7a7..efb0dbe 100644 > > --- a/drivers/mmc/core/host.c > > +++ b/drivers/mmc/core/host.c > > @@ -319,6 +319,14 @@ int mmc_of_parse(struct mmc_host *host) > > host->caps2 |= MMC_CAP2_NO_SD; > > if (device_property_read_bool(dev, "no-mmc")) > > host->caps2 |= MMC_CAP2_NO_MMC; > > + if (device_property_read_bool(dev, "supports-cqe")) > > + host->caps2 |= MMC_CAP2_CQE; > > + > > + /* Must be after "supports-cqe" check */ > > + if (!device_property_read_bool(dev, "disable-cqe-dcmd")) { > > + if (host->caps2 & MMC_CAP2_CQE) > > Does it really doesn't matter if we set this cap, even if MMC_CAP2_CQE > isn't set? You can probably skip the check above. Will remove MMC_CAP2_CQE check here. > > > + host->caps2 |= MMC_CAP2_CQE_DCMD; > > + } > > > > /* Must be after "non-removable" check */ > > if (device_property_read_u32(dev, "fixed-emmc-driver-type", &drv_type) == 0) { > > -- > > 1.9.1 > > Kind regards > Uffe
diff --git a/drivers/mmc/core/host.c b/drivers/mmc/core/host.c index 105b7a7..efb0dbe 100644 --- a/drivers/mmc/core/host.c +++ b/drivers/mmc/core/host.c @@ -319,6 +319,14 @@ int mmc_of_parse(struct mmc_host *host) host->caps2 |= MMC_CAP2_NO_SD; if (device_property_read_bool(dev, "no-mmc")) host->caps2 |= MMC_CAP2_NO_MMC; + if (device_property_read_bool(dev, "supports-cqe")) + host->caps2 |= MMC_CAP2_CQE; + + /* Must be after "supports-cqe" check */ + if (!device_property_read_bool(dev, "disable-cqe-dcmd")) { + if (host->caps2 & MMC_CAP2_CQE) + host->caps2 |= MMC_CAP2_CQE_DCMD; + } /* Must be after "non-removable" check */ if (device_property_read_u32(dev, "fixed-emmc-driver-type", &drv_type) == 0) {
Expose MMC_CAP2_CQE and MMC_CAP2_CQE_DCMD to host->caps2 if 1. "supports-cqe" is defined in dt and 2. "disable-cqe-dcmd" is not defined in dt. Signed-off-by: Chun-Hung Wu <chun-hung.wu@mediatek.com> --- drivers/mmc/core/host.c | 8 ++++++++ 1 file changed, 8 insertions(+)