From owner-freebsd-mips@freebsd.org Sat Jan 23 19:07:15 2016 Return-Path: Delivered-To: freebsd-mips@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 48EF0A8E3A2; Sat, 23 Jan 2016 19:07:15 +0000 (UTC) (envelope-from sgalabov@gmail.com) Received: from mail-vk0-x22b.google.com (mail-vk0-x22b.google.com [IPv6:2607:f8b0:400c:c05::22b]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id F2599107A; Sat, 23 Jan 2016 19:07:14 +0000 (UTC) (envelope-from sgalabov@gmail.com) Received: by mail-vk0-x22b.google.com with SMTP id e64so57329191vkg.0; Sat, 23 Jan 2016 11:07:14 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=va4HTywTY3AblvVx+hQxhpu1DRFEXj9UToimZBUOwvQ=; b=S+7USrBY1sfROPypi/OHcGn5Ntq9gnVNGEGX7GIXFQNoS6iwNVXgznwQVQVffFoEEZ LVQSb6qdyLuQw+j3oVvYB2raPA/JEEBLKpB73aAwrryI3y5Egf29ghfTgdjgXyavGCpe h7L3yZHnRqx1PFbE8+A8b/Q8/NSGprFJdhE6j+7+6g5OX5rBoztu4r7aR7jZnATFktxU Dobyqa61CLpIxH1f+AEbmPXnVrl0/Bx1b94Sklz5z90i47pUIJhPdkzEtjvtfHuplbiG cieSAOwkAYoqlrqpMeOHzKvWEmi6eSBy+ykP4wLoLGjkNCjBTJ+yWJtTGSWdanc0Lr2+ y/cA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:date :message-id:subject:from:to:cc:content-type; bh=va4HTywTY3AblvVx+hQxhpu1DRFEXj9UToimZBUOwvQ=; b=TqoySCCKP8A4f0asWoS5XOKI1qlr/GDWjiaZu/iKV+LwkkaIb5Wz/VCodV+jiMJVKS Ek2QjTLpMGcsYNo06fAHBKPhGniTUq9gANlCFQP/0KbLpv0h9qkxm0sXj0i+hJOs/Hy+ 8BXO2l6aDsjdLfzDzNfH6E5F6eQL81Ybk0bBk8SZqu+kzSpvlIvfWag6JU2Cntx9EsbP 4FFR4L82j79c+idViAv/i7NvWFBm4ea7AcYfnEbNocIggYUUsa9HvevM5WY8YIQ+gBZ0 OT13V+sjgc6muXRuLFxk0p80A5zytLjW8npiyDA6x7gcQvTpuz/TYkbwu67hcKpHlOPz kVug== X-Gm-Message-State: AG10YORqjnQWEaQ95ABOao0nvVWyrwYA9kbKA0mWYgg/gHgbM/4yKNjYP0/iMPlAlwU+gA4PvBZzmCNJYra4CA== MIME-Version: 1.0 X-Received: by 10.31.54.12 with SMTP id d12mr6340804vka.34.1453576033751; Sat, 23 Jan 2016 11:07:13 -0800 (PST) Received: by 10.31.183.147 with HTTP; Sat, 23 Jan 2016 11:07:13 -0800 (PST) In-Reply-To: References: <2AB9D6E1-BFF8-4EEE-B366-C980B72C4779@gmail.com> <56A1BFBB.8050204@freebsd.org> <57E542F6-FCF2-4E51-9FE5-8EDD85DA2102@gmail.com> Date: Sat, 23 Jan 2016 21:07:13 +0200 Message-ID: Subject: Re: SPI geom_flashmap/fdt_slicer support, FDT 'resets=' support and a move of ohci_fdt.c From: Stanislav Galabov To: Adrian Chadd Cc: Michal Meloun , "freebsd-arm@freebsd.org" , "freebsd-mips@freebsd.org" Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Content-Filtered-By: Mailman/MimeDel 2.1.20 X-BeenThere: freebsd-mips@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: Porting FreeBSD to MIPS List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 23 Jan 2016 19:07:15 -0000 :-) Here goes nothing: https://reviews.freebsd.org/D5043 On Sat, Jan 23, 2016 at 5:28 PM, Adrian Chadd wrote: > ok, I think you've now hit the "please register for an account at > reviews.freebsd.org and publish patches there" step. :) > > > -a > > > On 23 January 2016 at 00:28, Stanislav Galabov wrote= : > > > > > >> On Jan 22, 2016, at 07:35, Michal Meloun wrote: > >> > >> Dne 22.01.2016 v 5:43 Warner Losh napsal(a): > >>> On Thu, Jan 21, 2016 at 8:35 PM, Adrian Chadd > >>> wrote: > >>> > >>>>> On 18 January 2016 at 06:49, Stanislav Galabov > wrote: > >>>>> Hi Warner, > >>>>> > >>>>> I was thinking resets could help in general, not specifically in th= e > >>>> case of trying to implement a generic ohci_fdt driver. > >>>>> > >>>>> As I already mentioned to you off-list (and in order for this > message to > >>>> possibly make some more sense), I saw that Linux makes use of the > =E2=80=98resets=E2=80=99 > >>>> property and looked at the documentation for it: > >>>> > https://github.com/torvalds/linux/blob/master/Documentation/devicetree/bi= ndings/reset/reset.txt > >>>> < > >>>> > https://github.com/torvalds/linux/blob/master/Documentation/devicetree/bi= ndings/reset/reset.txt > >>>>> > >>>>> > >>>>> For example, with the work I am currently doing on Ralink/Mediatek > >>>> support, I have over 10 different chips in the same family, that hav= e > very > >>>> similar peripheral blocks, but their clocks and resets are controlle= d > via > >>>> different bits in one of the SysCtl registers (the register itself i= s > at > >>>> the same offset within the SysCtl block of each chip). So I may have > chip X > >>>> which has its USB (for example) reset controlled by bit 10 and chip = Y > with > >>>> USB reset controlled by bit 12. > >>>>> > >>>>> So being able to write something like: > >>>>> resets =3D <&sysctl 10>; > >>>>> or > >>>>> resets =3D <&sysctl 11>; > >>>>> > >>>>> in my dts/dtsi files helps me immensely, instead of having to check > what > >>>> chip I am running on and based on that use a different register > layout=E2=80=A6 > >>>>> Then, if I wanted to (de)assert reset for a peripheral block that h= as > >>>> this property defined I=E2=80=99d just do fdt_reset_(de)assert_all(d= ev), > where dev > >>>> is the device_t for the peripheral in question. This would (de)asser= t > all > >>>> reset pins associated with the peripheral. > >>>>> > >>>>> The same is the case for clock control (gating) in the > Ralink/Mediatek > >>>> SoCs and this is the main reason I used fdt_clock that is already in > >>>> sys/dev/fdt and then thought about implementing the fdt_reset based > on it. > >>>>> > >>>>> I hope this clarifies a bit my reason for submitting the fdt_reset > patch. > >>>> > >>>> This seems fine to me. Hm. Ian? Any comments? > >>> > >>> I want to check on a few things before we head down this path. I've > been > >>> traveling so haven't had a chance to look through it to see if Atmel > uses > >>> this, and who else does... > >>> > >>> Warner > >> I think that i have more complete implementation of reset framework > >> ready to commit. Just waiting for mentor approval. > >> Please see https://github.com/strejda/tegra/tree/master/sys/dev/reset > >> > >> Michal > > > > I have no objections to using Michal's framework, especially if the > patch from PR 206516 is applied: > > https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D206516 > > > > His framework is really more complete than what I did. > > > > Best wishes, > > Stanislav > > > >>>> -a > >>>> > >>>>> Best wishes > >>>>> Stanislav > >>>>> > >>>>>> On Jan 18, 2016, at 02:04, Warner Losh wrote: > >>>>>> > >>>>>> I don't see how resets help. Maybe I missed where it was documente= d, > >>>> could you send that to me? > >>>>>> > >>>>>> Even with that, it seems that a generic ohci_fdt driver isn't > possible. > >>>>>> > >>>>>> Warner > >>>>>> > >>>>>> On Thu, Jan 14, 2016 at 2:01 AM, Stanislav Galabov < > sgalabov@gmail.com > >>>> > wrote: > >>>>>> Hi all, > >>>>>> > >>>>>> First off, sorry for the cross-post, I wasn=E2=80=99t very sure wh= ere this > >>>> should go=E2=80=A6 > >>>>>> > >>>>>> I=E2=80=99ve created 3 PRs, which enable some functionality that m= y work on > >>>> Ralink/Mediatek SoCs would benefit from. > >>>>>> > >>>>>> 1. https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D206227 < > >>>> https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D206227> > >>>>>> - This enables geom_flashmap and fdt_slicer support for SPI flash > chips > >>>> supported by the mx25l driver (sys/dev/flash/mx25l.c) > >>>>>> > >>>>>> 2. https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D206228 < > >>>> https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D206228> > >>>>>> - This adds support for FDT =E2=80=98resets=3D=E2=80=99 property i= n much the same way > as > >>>> ian@=E2=80=99s sys/dev/fdt/fdt_clock* supports FDT =E2=80=98clocks= =3D=E2=80=98 property. In > fact > >>>> this work is basically a modified version of fdt_clock* :-) > >>>>>> > >>>>>> 3. https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D206229 < > >>>> https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D206229> > >>>>>> - This simply moves the at91 specific > sys/dev/usb/controller/ohci_fdt.c > >>>> to sys/dev/usb/controller/at91ohci_fdt.c (and changes the filename i= n > >>>> sys/arm/at91/files.at91 as well). The current naming is misleading > IMHO and > >>>> also, I have some (vague-ish) plans to see if I can implement generi= c > >>>> ohci_fdt and ehci_fdt based on dwc_otg_fdt, so that systems with > standard > >>>> ehci/ohci controllers can reuse these. > >>>>>> > >>>>>> Patches are attached to the PRs. > >>>>>> > >>>>>> I would appreciate any feedback on the PRs and would also > appreciate it > >>>> if someone could commit these if the proposed changes are appropriat= e. > >>>>>> > >>>>>> Best wishes, > >>>>>> Stanislav > >>>>>> _______________________________________________ > >>>>>> freebsd-arm@freebsd.org mailing > list > >>>>>> https://lists.freebsd.org/mailman/listinfo/freebsd-arm < > >>>> https://lists.freebsd.org/mailman/listinfo/freebsd-arm> > >>>>>> To unsubscribe, send any mail to " > freebsd-arm-unsubscribe@freebsd.org > >>>> " > >>>>> > >>>>> _______________________________________________ > >>>>> freebsd-arm@freebsd.org mailing list > >>>>> https://lists.freebsd.org/mailman/listinfo/freebsd-arm > >>>>> To unsubscribe, send any mail to " > freebsd-arm-unsubscribe@freebsd.org" > >>> _______________________________________________ > >>> freebsd-arm@freebsd.org mailing list > >>> https://lists.freebsd.org/mailman/listinfo/freebsd-arm > >>> To unsubscribe, send any mail to "freebsd-arm-unsubscribe@freebsd.org= " > >> > >> _______________________________________________ > >> freebsd-mips@freebsd.org mailing list > >> https://lists.freebsd.org/mailman/listinfo/freebsd-mips > >> To unsubscribe, send any mail to "freebsd-mips-unsubscribe@freebsd.org= " > > _______________________________________________ > > freebsd-arm@freebsd.org mailing list > > https://lists.freebsd.org/mailman/listinfo/freebsd-arm > > To unsubscribe, send any mail to "freebsd-arm-unsubscribe@freebsd.org" >