From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1759091AbbJ3IIz (ORCPT ); Fri, 30 Oct 2015 04:08:55 -0400 Received: from regular2.263xmail.com ([211.157.152.4]:52903 "EHLO regular2.263xmail.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1759030AbbJ3IIs (ORCPT ); Fri, 30 Oct 2015 04:08:48 -0400 X-263anti-spam: KSV:0; X-MAIL-GRAY: 0 X-MAIL-DELIVERY: 1 X-KSVirus-check: 0 X-ABS-CHECKED: 4 X-ADDR-CHECKED: 1 X-RL-SENDER: wulf@rock-chips.com X-FST-TO: dianders@chromium.org X-SENDER-IP: 58.22.7.114 X-LOGIN-NAME: wulf@rock-chips.com X-UNIQUE-TAG: <119bde5d8e38842e4b16323847c961f7> X-ATTACHMENT-NUM: 0 X-DNS-TYPE: 0 Message-ID: <5633257A.5020306@rock-chips.com> Date: Fri, 30 Oct 2015 16:08:26 +0800 From: Liangfeng Wu User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.6.0 MIME-Version: 1.0 To: Douglas Anderson , John Youn , balbi@ti.com CC: Yunzhi Li , =?UTF-8?B?SGVpa28gU3TDvGJuZXI=?= , linux-rockchip@lists.infradead.org, Julius Werner , johnyoun@synopsys.com, gregkh@linuxfoundation.org, linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH] usb: dwc2: host: Fix ahbcfg for rk3066 References: <1445384033-17050-1-git-send-email-dianders@chromium.org> In-Reply-To: <1445384033-17050-1-git-send-email-dianders@chromium.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 10/21/2015 07:33 AM, Douglas Anderson wrote: > The comment for ahbcfg for rk3066 parameters (also used for rk3288) > claimed that ahbcfg was INCR16, but it wasn't. Since the bits weren't > shifted properly, the 0x7 ended up being masked and we ended up > programming 0x3 for the HBstLen. Let's set it to INCR16 properly. > > As per Wu Liang Feng at Rockchip this may increase transmission > efficiency. I did blackbox tests with writing 0s to a USB-based SD > reader (forcefully capping CPU Freq to try to measure efficiency): > cd /sys/devices/system/cpu/cpu0/cpufreq > echo userspace > scaling_governor > echo 126000 > scaling_setspeed > for i in $(seq 10); do > dd if=/dev/zero of=/dev/sdb bs=1M count=750 > done > > With the above tests I found that speeds went from ~15MB/s to ~18MB/s. > Note that most other tests I did (including reading from the same USB > reader) didn't show any difference in performance. > > Signed-off-by: Douglas Anderson > --- > drivers/usb/dwc2/platform.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/drivers/usb/dwc2/platform.c b/drivers/usb/dwc2/platform.c > index 5859b0f..e61d773 100644 > --- a/drivers/usb/dwc2/platform.c > +++ b/drivers/usb/dwc2/platform.c > @@ -108,7 +108,8 @@ static const struct dwc2_core_params params_rk3066 = { > .host_ls_low_power_phy_clk = -1, > .ts_dline = -1, > .reload_ctl = -1, > - .ahbcfg = 0x7, /* INCR16 */ > + .ahbcfg = GAHBCFG_HBSTLEN_INCR16 << > + GAHBCFG_HBSTLEN_SHIFT, > .uframe_sched = -1, > .external_id_pin_ctl = -1, > .hibernation = -1, Reviewed-by: Liangfeng Wu