lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ee596652-68f8-ddd4-4dcd-1bdb3a8a056b@samsung.com>
Date:   Fri, 26 Nov 2021 08:37:01 +0900
From:   Jaehoon Chung <jh80.chung@...sung.com>
To:     John Keeping <john@...anate.com>, linux-mmc@...r.kernel.org
Cc:     Heiko Stuebner <heiko@...ech.de>,
        Krzysztof Kozlowski <krzysztof.kozlowski@...onical.com>,
        linux-arm-kernel@...ts.infradead.org, linux-kernel@...r.kernel.org,
        linux-rockchip@...ts.infradead.org,
        linux-samsung-soc@...r.kernel.org,
        Ulf Hansson <ulf.hansson@...aro.org>
Subject: Re: [PATCH 1/4] mmc: dw_mmc: add common capabilities to replace
 caps

On 11/25/21 3:45 AM, John Keeping wrote:
> The caps field depends on the mshcN alias ID but for some devices this
> is unnecessary as the capabilities are the same for all instances
> sharing the same compatible.
> 
> Add a common_caps field for this case which updates the host's
> capabilities without needing the mshcN alias ID.
> 
> Signed-off-by: John Keeping <john@...anate.com>

Reviewed-by: Jaehoon Chung <jh80.chung@...sung.com>

Best Regards,
Jaehoon Chung

> ---
>  drivers/mmc/host/dw_mmc.c | 3 +++
>  drivers/mmc/host/dw_mmc.h | 3 +++
>  2 files changed, 6 insertions(+)
> 
> diff --git a/drivers/mmc/host/dw_mmc.c b/drivers/mmc/host/dw_mmc.c
> index 195f2b2434b0..f2a14a434bef 100644
> --- a/drivers/mmc/host/dw_mmc.c
> +++ b/drivers/mmc/host/dw_mmc.c
> @@ -2856,6 +2856,9 @@ static int dw_mci_init_slot_caps(struct dw_mci_slot *slot)
>  	if (host->pdata->pm_caps)
>  		mmc->pm_caps = host->pdata->pm_caps;
>  
> +	if (drv_data)
> +		mmc->caps |= drv_data->common_caps;
> +
>  	if (host->dev->of_node) {
>  		ctrl_id = of_alias_get_id(host->dev->of_node, "mshc");
>  		if (ctrl_id < 0)
> diff --git a/drivers/mmc/host/dw_mmc.h b/drivers/mmc/host/dw_mmc.h
> index ce05d81477d9..771d5afa3136 100644
> --- a/drivers/mmc/host/dw_mmc.h
> +++ b/drivers/mmc/host/dw_mmc.h
> @@ -550,6 +550,8 @@ struct dw_mci_slot {
>   * dw_mci driver data - dw-mshc implementation specific driver data.
>   * @caps: mmc subsystem specified capabilities of the controller(s).
>   * @num_caps: number of capabilities specified by @caps.
> + * @common_caps: mmc subsystem specified capabilities applicable to all of
> + *	the controllers
>   * @init: early implementation specific initialization.
>   * @set_ios: handle bus specific extensions.
>   * @parse_dt: parse implementation specific device tree properties.
> @@ -562,6 +564,7 @@ struct dw_mci_slot {
>  struct dw_mci_drv_data {
>  	unsigned long	*caps;
>  	u32		num_caps;
> +	u32		common_caps;
>  	int		(*init)(struct dw_mci *host);
>  	void		(*set_ios)(struct dw_mci *host, struct mmc_ios *ios);
>  	int		(*parse_dt)(struct dw_mci *host);
> 

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ