Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1619234

Re: [PATCH] ARM: dts: hi6220: Reset the mmc hosts

Path csiph.com!news.redatomik.org!aioe.org!bofh.it!news.nic.it!robomod
From Wei Xu <xuwei5@hisilicon.com>
Newsgroups linux.kernel
Subject Re: [PATCH] ARM: dts: hi6220: Reset the mmc hosts
Date Sat, 08 Apr 2017 08:50:01 +0200
Message-ID <ttSm5-1Q8-9@gated-at.bofh.it> (permalink)
References <tlF2H-8g9-25@gated-at.bofh.it>
X-Original-To Daniel Lezcano <daniel.lezcano@linaro.org>
User-Agent Mozilla/5.0 (Windows NT 6.1; WOW64; rv:38.0) Gecko/20100101 Thunderbird/38.2.0
MIME-Version 1.0
Content-Type text/plain; charset="windows-1252"; format=flowed
Content-Transfer-Encoding 7bit
X-Originating-IP [10.57.100.116]
X-Cfilter-Loop Reflected
X-Mirapoint-Virus-Rapid-Raw score=unknown(0), refid=str=0001.0A020202.58E88576.003F,ss=1,re=0.000,recu=0.000,reip=0.000,cl=1,cld=1,fgs=0, ip=0.0.0.0, so=2014-11-16 11:51:01, dmn=2013-03-21 17:37:32
X-Mirapoint-Loop-ID 334939f9fa0255fbb2b7edf2d005c225
Sender robomod@news.nic.it
List-ID <linux-kernel.vger.kernel.org>
X-Mailing-List linux-kernel@vger.kernel.org
Approved robomod@news.nic.it
Lines 72
Organization linux.* mail to news gateway
X-Original-Cc <guodong.xu@linaro.org>, <linux-arm-kernel@lists.infradead.org>, <stable@vger.kernel.org>, <devicetree@vger.kernel.org>, <linux-kernel@vger.kernel.org>
X-Original-Date Sat, 8 Apr 2017 14:38:23 +0800
X-Original-Message-ID <58E8855F.5060200@hisilicon.com>
X-Original-References <1489673004-11075-1-git-send-email-daniel.lezcano@linaro.org>
X-Original-Sender linux-kernel-owner@vger.kernel.org
Xref csiph.com linux.kernel:1619234

Show key headers only | View raw


Hi Daniel,

On 2017/3/16 22:03, Daniel Lezcano wrote:
> The MMC hosts could be left in an unconsistent or uninitialized state from
> the firmware. Instead of assuming, the firmware did the right things, let's
> reset the host controllers.
>
> This change fixes a bug when the mmc2/sdio is initialized leading to a hung
> task:
>
> [  242.704294] INFO: task kworker/7:1:675 blocked for more than 120 seconds.
> [  242.711129]       Not tainted 4.9.0-rc8-00017-gcf0251f #3
> [  242.716571] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
> [  242.724435] kworker/7:1     D    0   675      2 0x00000000
> [  242.729973] Workqueue: events_freezable mmc_rescan
> [  242.734796] Call trace:
> [  242.737269] [<ffff00000808611c>] __switch_to+0xa8/0xb4
> [  242.742437] [<ffff000008d07c04>] __schedule+0x1c0/0x67c
> [  242.747689] [<ffff000008d08254>] schedule+0x40/0xa0
> [  242.752594] [<ffff000008d0b284>] schedule_timeout+0x1c4/0x35c
> [  242.758366] [<ffff000008d08e38>] wait_for_common+0xd0/0x15c
> [  242.763964] [<ffff000008d09008>] wait_for_completion+0x28/0x34
> [  242.769825] [<ffff000008a1a9f4>] mmc_wait_for_req_done+0x40/0x124
> [  242.775949] [<ffff000008a1ab98>] mmc_wait_for_req+0xc0/0xf8
> [  242.781549] [<ffff000008a1ac3c>] mmc_wait_for_cmd+0x6c/0x84
> [  242.787149] [<ffff000008a26610>] mmc_io_rw_direct_host+0x9c/0x114
> [  242.793270] [<ffff000008a26aa0>] sdio_reset+0x34/0x7c
> [  242.798347] [<ffff000008a1d46c>] mmc_rescan+0x2fc/0x360
>
> [ ... ]
>
> Cc: stable@vger.kernel.org
> Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>

Thanks!
Applied to the hisilicon arm64 dt tree.

Best Regards,
Wei

> ---
>   arch/arm64/boot/dts/hisilicon/hi6220.dtsi | 3 +++
>   1 file changed, 3 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/hisilicon/hi6220.dtsi b/arch/arm64/boot/dts/hisilicon/hi6220.dtsi
> index 470461d..1e5129b 100644
> --- a/arch/arm64/boot/dts/hisilicon/hi6220.dtsi
> +++ b/arch/arm64/boot/dts/hisilicon/hi6220.dtsi
> @@ -774,6 +774,7 @@
>   			clocks = <&sys_ctrl 2>, <&sys_ctrl 1>;
>   			clock-names = "ciu", "biu";
>   			resets = <&sys_ctrl PERIPH_RSTDIS0_MMC0>;
> +			reset-names = "reset";
>   			bus-width = <0x8>;
>   			vmmc-supply = <&ldo19>;
>   			pinctrl-names = "default";
> @@ -797,6 +798,7 @@
>   			clocks = <&sys_ctrl 4>, <&sys_ctrl 3>;
>   			clock-names = "ciu", "biu";
>   			resets = <&sys_ctrl PERIPH_RSTDIS0_MMC1>;
> +			reset-names = "reset";
>   			vqmmc-supply = <&ldo7>;
>   			vmmc-supply = <&ldo10>;
>   			bus-width = <0x4>;
> @@ -815,6 +817,7 @@
>   			clocks = <&sys_ctrl HI6220_MMC2_CIUCLK>, <&sys_ctrl HI6220_MMC2_CLK>;
>   			clock-names = "ciu", "biu";
>   			resets = <&sys_ctrl PERIPH_RSTDIS0_MMC2>;
> +			reset-names = "reset";
>   			bus-width = <0x4>;
>   			broken-cd;
>   			pinctrl-names = "default", "idle";

Back to linux.kernel | Previous | Next | Find similar | Unroll thread


Thread

Re: [PATCH] ARM: dts: hi6220: Reset the mmc hosts Wei Xu <xuwei5@hisilicon.com> - 2017-04-08 08:50 +0200

csiph-web