All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jagan Teki <jagannadh.teki@gmail.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH] sf: ensure flash device is in 3-byte address mode
Date: Wed, 30 May 2018 10:40:56 +0530	[thread overview]
Message-ID: <CAD6G_RTOT9OcfEEP5oOO4b9PgqDOkV7Gi22CA_6XW0uSc6bhkA@mail.gmail.com> (raw)
In-Reply-To: <7ba7e1e2-fa0f-82bd-8aba-bd0b6088cf52@de.pepperl-fuchs.com>

On Tue, May 22, 2018 at 9:59 AM, Simon Goldschmidt
<sgoldschmidt@de.pepperl-fuchs.com> wrote:
>
> Hi Jagan,
>
>
> On 21.05.2018 17:09, Jagan Teki wrote:
>>
>> Hi Simon,
>>
>> On Fri, May 18, 2018 at 12:48 PM, Simon Goldschmidt
>> <sgoldschmidt@de.pepperl-fuchs.com> wrote:
>>>
>>>
>>> On 14.05.2018 09:47, Simon Goldschmidt wrote:
>>>>
>>>>
>>>>
>>>>
>>>> On 14.05.2018 09:22, Jagan Teki wrote:
>>>>>
>>>>>
>>>>> On Mon, May 14, 2018 at 12:34 PM, Simon Goldschmidt
>>>>> <sgoldschmidt@de.pepperl-fuchs.com> wrote:
>>>>>>
>>>>>>
>>>>>> + Marek for the socfpga platform, see below
>>>>>>
>>>>>> On 07.12.2017 06:49, Jagan Teki wrote:
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> On Tue, Dec 5, 2017 at 11:50 AM, Goldschmidt Simon
>>>>>>> <sgoldschmidt@de.pepperl-fuchs.com> wrote:
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> + Lukasz (as a reviewer of my patch[1])
>>>>>>>>
>>>>>>>> On Mon, Dec 4, 2017 at 8:20, Jagan Teki wrote:
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> This is the patch[1] for 4-byte addressing, but I would wonder how
>>>>>>>>> can
>>>>>>>>> proceed
>>>>>>>>> operations with 4-byte if we disable during probe.
>>>>>>>>>
>>>>>>>>> [1] http://git.denx.de/?p=u-boot-
>>>>>>>>> spi.git;a=commitdiff;h=fd0c22a90772379c4c11ba09347d36cc8ee17dca
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> OK, so your patch does something different than what I did.
>>>>>>>>
>>>>>>>> I was trying to keep the change to U-Boot as small as possible, only
>>>>>>>> fixing this issue I was seeing:
>>>>>>>>
>>>>>>>> After a soft-reboot where the SPI chip was not reset, it is left in
>>>>>>>> 4-byte addressing mode (linux uses this mode, obviously). Remember
>>>>>>>> that 4-byte mode is not a permanent setting, so we can enter and
>>>>>>>> leave it any time we like by issuing a command.
>>>>>>>>
>>>>>>>> U-Boot uses the Bank Address Register (BAR) for spi flash chips with
>>>>>>>> more than 16 MByte, so it impclitly assumes that the chip is in
>>>>>>>> 3-byte address mode. As I see it, your patch is worth a discussion
>>>>>>>> named "should we use 4-byte addressing mode on spi flash chips?".
>>>>>>>> I do think this is a better alternative than writing BAR! But this
>>>>>>>> change probably needs discussion and testing.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> OK, will review your patch.
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> Any update here? The last input on this is about five months old! This
>>>>>> is
>>>>>> the last patch I need to run my socfpga board from qspi.
>>>>>>
>>>>>> I added Marek to the discussion as at least the SoCrates board does not
>>>>>> have
>>>>>> a reset connected to the qspi chip and needs this as well. Note that the
>>>>>> system boot rom does not have a problem with the chip being in 4-byte
>>>>>> mode
>>>>>> but SPL fails to load U-Boot from qspi.
>>>>>
>>>>>
>>>>>
>>>>> Does Linux do this stuff? say my flash in 4-byte and flashed SPL and
>>>>> rebooted.
>>>>
>>>>
>>>>
>>>> Yes. My code is inspired by 'drivers/mtd/spi-bor/spi-nor.c' function
>>>> 'set_4byte'. I'm using 4.9 where they don't have support for 4 byte opcodes
>>>> (which is why I'm seeing this bug after all). OK, this is not the latest
>>>> kernel, but it's LTS, so I think U-Boot should handle this Kernel.
>>>>
>>>> What happens in Linux (4.9) is that depending on the flash size, 4-byte
>>>> mode is *always* enabled. And it stays enabled after soft reboot. So
>>>> consequently, we have to *always* disable it in U-Boot.
>>>>
>>>> In newer versions, they still use 4-byte mode if the flash chip does not
>>>> support 4-byte opcodes. I suppose that would fix it for me, too, but I'm
>>>> stuck with LTS for now.
>>>
>>>
>>>
>>> Do you need any more information here? I'd really love to get this into
>>> 2018.07, finally. As I said before, this is the last patch missing for
>>> socfpga cyclone5 running from qspi.
>>
>>
>> The point I'm not clear is we don't have 4-byte addressing (we are
>> using Bank addressing for > 16MiB) so how come we disable 4-byte
>> addressing for the sake of other software blocks enabled it? It's like
>> a hack to me.
>
>
> I understand your point. However, there *are* SPI chips without a reset line. And if linux brings them into 4-byte address mode and then the system gets a warm reset e.g. by the watchdog, where do you suggest to set the chip back to 3-byte address mode?

What are those chips? what if we have 4-byte addressing mode in
U-Boot, we completely operate these into 3-byte mode by disabling
4-byte mode?

  reply	other threads:[~2018-05-30  5:10 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-12-05  6:20 [U-Boot] [PATCH] sf: ensure flash device is in 3-byte address mode Goldschmidt Simon
2017-12-07  5:49 ` Jagan Teki
2017-12-07  8:23   ` Prabhakar Kushwaha
2018-05-14  7:04   ` Simon Goldschmidt
2018-05-14  7:22     ` Jagan Teki
2018-05-14  7:47       ` Simon Goldschmidt
2018-05-18  7:18         ` Simon Goldschmidt
2018-05-21 15:09           ` Jagan Teki
2018-05-22  4:29             ` Simon Goldschmidt
2018-05-30  5:10               ` Jagan Teki [this message]
2018-05-30  8:12                 ` Simon Goldschmidt
2018-05-30 11:25                   ` Jagan Teki
2018-05-30 11:27                     ` Marek Vasut
2018-05-30 11:54                       ` Simon Goldschmidt
2018-05-30 11:41                     ` Simon Goldschmidt
2018-05-30  9:56                 ` Marek Vasut
2018-05-30 11:18                   ` Simon Goldschmidt
2018-05-30 11:23                     ` Marek Vasut
2018-06-02 11:58                       ` Prabhakar Kushwaha
  -- strict thread matches above, loose matches on Subject: below --
2017-12-07 10:00 Goldschmidt Simon
2017-11-30  8:41 Goldschmidt Simon
2017-12-04  7:20 ` Jagan Teki
2017-11-10  6:41 Goldschmidt Simon
2017-11-10  7:03 ` Jagan Teki
2017-10-17 11:47 Goldschmidt Simon
2017-10-18 20:42 ` Lukasz Majewski
2017-10-30  6:26 ` Jagan Teki

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=CAD6G_RTOT9OcfEEP5oOO4b9PgqDOkV7Gi22CA_6XW0uSc6bhkA@mail.gmail.com \
    --to=jagannadh.teki@gmail.com \
    --cc=u-boot@lists.denx.de \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.