OpenSBI Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Nikita Shubin <nikita.shubin@maquefel.me>
To: opensbi@lists.infradead.org
Subject: [PATCH v2 5/5] lib: utils/reset: Add generic da9063 reset driver
Date: Wed, 20 Oct 2021 12:00:46 +0300	[thread overview]
Message-ID: <20211020120046.066ac625@redslave.neermore.group> (raw)
In-Reply-To: <CA+zEjCsszR-AW8Cbm=Pu2qLE85QfrtrFk-D-TO=8F9T3EDxA9Q@mail.gmail.com>

On Wed, 20 Oct 2021 10:33:26 +0200
Alexandre Ghiti <alexandre.ghiti@canonical.com> wrote:

> On Wed, Oct 20, 2021 at 9:00 AM Nikita Shubin
> <nikita.shubin@maquefel.me> wrote:
> >
> > Hello Alexandre!
> >
> > On Tue, 19 Oct 2021 14:39:16 +0200
> > Alexandre Ghiti <alexandre.ghiti@canonical.com> wrote:
> >  
> > > > +
> > > > +static const struct fdt_match da9063_reset_match[] = {
> > > > +       { .compatible = "da9063-reset", .data = (void *)TRUE },
> > > > +       { },
> > > > +};  
> > >
> > > Agree with Jessica here, as per Adam, the reset as we implement it
> > > here should remain a board specific thing, so we should not rely
> > > on this device tree node. I was hoping to make something that
> > > would work in general for da9063 users, but no luck.
> > >
> > > And finally I think we should listen to Adam and go for a full
> > > reset using the RTC, instead of the partial reset we implemented
> > > here. We sacrifice the RTC but anyway, it was not even exposed in
> > > the device tree, we should add a comment there so that people
> > > don't get surprised if they enable it. I will post the right
> > > sequence adapted to your sources soon.  
> >
> > Well the RTC is much more valuable than reset actually and used for
> > many tests.
> >
> > Indeed da9063 reset can be moved totally to "platform" code, but do
> > you think that leaving users with hard-coded reset cutting them off
> > from RTC and no other possibility, other than fixing OpenSBI code
> > in-place is really a good option ?
> >
> > With DTS approuch it can be as simple as removing the da9063-reset
> > from DTS file.
> >  
> 
> Arf, I change my mind every two days regarding this...I'm just trying
> to have a reliable reset, and to quote Adam below, the reset as
> implemented here is only partial:
> 
> "With the sequence you provided this is only a partial reset whereby
> all of the output rails are sequenced down then up again and restored
> to OTP voltages. However the remainder of the chip settings aren't
> reset as this isn't a true reset of the device going through full
> reload from OTP, so for example settings of regulator mode GPIO
> states, or IRQ mask bits would persist on the restart, which could
> have implications on system operation."

Actually i don't think battling over a board which isn't supposed to be
more than a development board and won't be massed used makes any sense.

It's more like QoL for those who are currently porting software or
experimenting with RISC-V.

Before this we used openocd reset, which can be greatly automated with
expect.

> 
> I imagine the partial reset could have side-effects on the RTC
> configuration too. So we might end up with a partial reset and a
> broken RTC...
> 

Well we should really investigate this.

As well as i don't quite understand this "sacrifice RTC" thing.

> and again from Adam:
> 
> "Personally, if it was possible I think the RTC approach would be
> best as it's a full reset and to me is far safer with regards to
> potential side effects"
> 
> 
> > >
> > > Thanks,
> > >
> > > Alex
> > >
> > >  
> > > > +
> > > > +struct fdt_reset fdt_reset_da9063 = {
> > > > +       .match_table = da9063_reset_match,
> > > > +       .init = da9063_reset_init,
> > > > +};
> > > > diff --git a/lib/utils/reset/objects.mk
> > > > b/lib/utils/reset/objects.mk index 6c95db3..cfe4c09 100644
> > > > --- a/lib/utils/reset/objects.mk
> > > > +++ b/lib/utils/reset/objects.mk
> > > > @@ -14,3 +14,4 @@ libsbiutils-objs-y +=
> > > > reset/fdt_reset_sifive_test.o libsbiutils-objs-y +=
> > > > reset/fdt_reset_sunxi_wdt.o libsbiutils-objs-y +=
> > > > reset/fdt_reset_thead.o libsbiutils-objs-y +=
> > > > reset/fdt_reset_thead_asm.o +libsbiutils-objs-y +=
> > > > reset/fdt_reset_da9063.o --
> > > > 2.31.1
> > > >
> > > >
> > > > --
> > > > opensbi mailing list
> > > > opensbi at lists.infradead.org
> > > > http://lists.infradead.org/mailman/listinfo/opensbi  
> >  



  reply	other threads:[~2021-10-20  9:00 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-10-15 13:19 [PATCH v2 0/5] I2C framework, reboot Unmatched via PMIC Nikita Shubin
2021-10-15 13:19 ` [PATCH v2 1/5] lib: utils/reset: add priority to gpio reset Nikita Shubin
2021-10-15 13:19 ` [PATCH v2 2/5] lib: utils/i2c: Add generic I2C configuration library Nikita Shubin
2021-10-19 12:04   ` Alexandre Ghiti
2021-10-20  6:41     ` Nikita Shubin
2021-10-20  8:19       ` Alexandre Ghiti
2021-10-15 13:19 ` [PATCH v2 3/5] lib: utils/i2c: Add simple FDT based I2C framework Nikita Shubin
2021-10-19 12:05   ` Alexandre Ghiti
2021-10-20  6:49     ` Nikita Shubin
2021-10-15 13:19 ` [PATCH v2 4/5] lib: utils/i2c: Add minimal SiFive I2C driver Nikita Shubin
2021-10-19 12:34   ` Alexandre Ghiti
2021-10-20  6:51     ` Nikita Shubin
2021-10-15 13:19 ` [PATCH v2 5/5] lib: utils/reset: Add generic da9063 reset driver Nikita Shubin
2021-10-19 12:39   ` Alexandre Ghiti
2021-10-20  7:00     ` Nikita Shubin
2021-10-20  8:33       ` Alexandre Ghiti
2021-10-20  9:00         ` Nikita Shubin [this message]
2021-10-21  4:40           ` Alexandre Ghiti
2021-10-26  8:04   ` Heinrich Schuchardt
2021-10-26  9:40     ` Heinrich Schuchardt
2021-10-26 14:17       ` Nikita Shubin
2021-11-03  7:59       ` Nikita Shubin
2021-11-03 12:07         ` Heinrich Schuchardt
2021-11-03 12:13           ` Nikita Shubin
2021-11-04 13:06             ` Anup Patel
2021-10-15 13:44 ` [PATCH v2 0/5] I2C framework, reboot Unmatched via PMIC Jessica Clarke
     [not found]   ` <1372921634305615@mail.yandex.ru>
     [not found]     ` <32095245-4C98-4C9E-9DAF-68167106A968@jrtc27.com>
2021-10-15 14:05       ` Nikita Shubin
2021-10-15 14:21         ` Jessica Clarke
2021-10-15 15:05           ` Alexandre Ghiti
2021-10-19 11:57 ` Alexandre Ghiti
2021-10-20  7:26   ` Nikita Shubin
2021-10-20  8:11     ` Alexandre Ghiti
2021-10-20  8:42       ` Nikita Shubin
2021-10-21  4:34         ` Alexandre Ghiti
2021-10-20  4:59 ` Alexandre Ghiti
2021-10-20  6:17   ` Nikita Shubin
2021-10-26  6:34     ` Alexandre Ghiti
2021-10-26 14:30       ` Nikita Shubin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20211020120046.066ac625@redslave.neermore.group \
    --to=nikita.shubin@maquefel.me \
    --cc=opensbi@lists.infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox