From owner-svn-src-all@freebsd.org Thu Mar 22 12:08:14 2018 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 4B9E2F60251; Thu, 22 Mar 2018 12:08:14 +0000 (UTC) (envelope-from hps@selasky.org) Received: from mail.turbocat.net (turbocat.net [88.99.82.50]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id DC37670F2D; Thu, 22 Mar 2018 12:08:13 +0000 (UTC) (envelope-from hps@selasky.org) Received: from hps2016.home.selasky.org (unknown [62.141.128.70]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.turbocat.net (Postfix) with ESMTPSA id 6887B260834; Thu, 22 Mar 2018 13:08:05 +0100 (CET) Subject: Re: svn commit: r331306 - head/sys/dev/usb/controller To: Andrew Turner Cc: Kyle Evans , src-committers , svn-src-all@freebsd.org, svn-src-head@freebsd.org References: <201803211517.w2LFHsHf007714@repo.freebsd.org> <898DF1A6-F1D2-474C-92B5-12F65DC71A40@fubar.geek.nz> <00c43a84-893e-cbd8-ff6d-f7a551ae3beb@selasky.org> <8722C20F-9581-4C58-98D8-86FD0016BC6B@fubar.geek.nz> From: Hans Petter Selasky Message-ID: Date: Thu, 22 Mar 2018 13:07:59 +0100 User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:52.0) Gecko/20100101 Thunderbird/52.6.0 MIME-Version: 1.0 In-Reply-To: <8722C20F-9581-4C58-98D8-86FD0016BC6B@fubar.geek.nz> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.25 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 22 Mar 2018 12:08:14 -0000 On 03/22/18 13:02, Andrew Turner wrote: >> On 21 Mar 2018, at 21:54, Hans Petter Selasky wrote: >> >> On 03/21/18 17:45, Andrew Turner wrote: >>>> On 21 Mar 2018, at 15:37, Hans Petter Selasky wrote: >>>> >>>> On 03/21/18 16:24, Kyle Evans wrote: >>>>>> + { >>>>>> + .ep_end = 7, >>>>>> + .ep_fifosz_shift = 9, >>>>>> + .ep_fifosz_reg = MUSB2_VAL_FIFOSZ_512 | MUSB2_MASK_FIFODB, >>>>>> + }, >>>>> I'm afraid I'm not familiar with this- why did .ep_fifosz_shift for >>>>> this case drop to 9? frx = 10 in the temp < 8 case in the removals of >>>>> the following hunks. Mostly curious because the others seemed to stay >>>>> the same. >>>> >>>> Hi Andrew, >>>> >>>> It might be an idea to keep the fifosz_shift at 10, else high-speed BULK traffic won't be double buffered, and this might affect performance. >>> Should the endpoint 1 size also be fixed? The register has it at 4k, but it wasn’t an 8k buffer. >> >> No, because High-Speed BULK will only use 512 byte packets, and 4k is reserved for isochronous, which doesn't need double buffering at the moment. > > Ok, in that case should we remove the double buffer flag on endpoint 1? The Linux driver seems to always use a 512 byte buffer there, and always doubles the offset increment when the double buffer flag is set. Hi Andrew, That's a good question. I think you should leave the double buffer flag on for this register. Double buffering is then later on re-programmed by: > static void > musbotg_clear_stall_sub(struct musbotg_softc *sc, uint16_t wMaxPacket, > uint8_t ep_no, uint8_t ep_type, uint8_t ep_dir) If you look at the writes to MUSB2_REG_TXDBDIS and MUSB2_REG_RXDBDIS. I think those registers override the "master" register. You might want to check the PRM to be absolutely sure. --HPS