linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
From: Thomas Besemer <thomas.besemer@gmail.com>
To: Segher Boessenkool <segher@kernel.crashing.org>
Cc: linuxppc-dev@lists.ozlabs.org
Subject: Re: 440EP NOR Flash Mapping with DTS
Date: Wed, 19 Jul 2017 15:09:41 -0700	[thread overview]
Message-ID: <CAO7m3AmDBO29CES2Tu8KvS1Y8FBhFQ7ehA8AKRDkvo_iOWPRgA@mail.gmail.com> (raw)
In-Reply-To: <20170717005846.GD13471@gate.crashing.org>

On Sun, Jul 16, 2017 at 5:58 PM, Segher Boessenkool
<segher@kernel.crashing.org> wrote:
> On Sun, Jul 16, 2017 at 05:31:05PM -0700, Thomas Besemer wrote:
>> I'm trying to map some NOR flash in via DTS on a Yosemite
>> style 440EP board. I've tried a few different things, below
>> showing my latest attempt.  During Kernel boot, it does not
>> appear to detect the device, as no messages are emitted.
>>
>> Flash is Spansion S29GL256P, base address 0xFE000000.
>>
>> EBC0: ebc {
>>        compatible = "ibm,ebc-440ep", "ibm,ebc-440gp", "ibm,ebc";
>>        dcr-reg = <0x012 0x002>;
>>        #address-cells = <2>;
>>        #size-cells = <1>;
>>        clock-frequency = <0>; /* Filled in by zImage */
>>        interrupts = <0x5 0x1>;
>>        interrupt-parent = <&UIC1>;
>>
>>        nor_flash@FE0000000,0 {
>
> @0,fe000000
>
>>                reg = <0xFE000000 0x02000000>;
>
> reg = <0 0xfe000000 0x02000000>;
>
>
> Cheers,
>
>
> Segher

I'm still having trouble with this, and think it's a DTS syntax problem.  I did
load up kernel with some printk()'s in key areas, and it was not finding the
device due to invalid ranges.  I simply added 'ranges;' to the EBC entry,
it detected, but did not properly map in MTD's.  Here is summary of warnings
on DTS, full DTS, and what it looks like mapped in.

I will note that I can't find many examples on this, and my syntax is not much
different than what was originally checked in.  I suspect that the
'ranges' field
is wrong, but I can't find documentation on what fields represent.

Thanks.

DTB Warning:

Warning (ranges_format): /plb/opb/ebc has empty "ranges" property but
its #address-cells (2) differs from /plb/opb (1)

DTB Entry:

POB0: opb {
        compatible = "ibm,opb-440ep", "ibm,opb-440gp", "ibm,opb";
        #address-cells = <1>;
        #size-cells = <1>;
        /* Bamboo is oddball in the 44x world and doesn't use the ERPN
         * bits.
         */
        ranges = <0x00000000 0x00000000 0x00000000 0x80000000
                  0x80000000 0x00000000 0x80000000 0x80000000>;
        interrupt-parent = <&UIC1>;
        interrupts = <0x7 0x4>;
        clock-frequency = <0>; /* Filled in by zImage */

        EBC0: ebc {
                compatible = "ibm,ebc-440ep", "ibm,ebc-440gp", "ibm,ebc";
                dcr-reg = <0x012 0x002>;
                clock-frequency = <0>; /* Filled in by zImage */
                interrupts = <0x5 0x1>;
                interrupt-parent = <&UIC1>;
                #address-cells = <2>;
                #size-cells = <1>;

                ranges;  /*  WITHOUT THIS, CHIP NOT FOUND   */

                nor_flash@0,FE000000 {
                        compatible = "amd,s29gl256p", "cfi-flash";
                        bank-width = <2>;
                        reg = <0 0xFE000000 0x02000000>;
                        #address-cells = <1>;
                        #size-cells = <1>;
                        partition@0 {
                                label = "Kernel";
                                reg = <0x00000000 0x00180000>;
                        };
                        partition@180000 {
                                label = "OS Filesystem";
                                reg = <0x00180000 0x01DE0000>;
                        };
                };
        };

Result MTD:

# cat /proc/mtd
dev:    size   erasesize  name
mtd0: 02000000 00020000 "fe000000.nor_flash"
#

Boot Messages:

[    6.272519] fe000000.nor_flash: Found 1 x16 devices at 0x0 in 16-bit bank. Ma
nufacturer ID 0x000001 Chip ID 0x002201
[    6.282969] Amd/Fujitsu Extended Query Table at 0x0040
[    6.288094]   Amd/Fujitsu Extended Query version 1.3.
[    6.293132] number of CFI chips: 1

      reply	other threads:[~2017-07-19 22:09 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-07-17  0:31 440EP NOR Flash Mapping with DTS Thomas Besemer
2017-07-17  0:58 ` Segher Boessenkool
2017-07-19 22:09   ` Thomas Besemer [this message]

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=CAO7m3AmDBO29CES2Tu8KvS1Y8FBhFQ7ehA8AKRDkvo_iOWPRgA@mail.gmail.com \
    --to=thomas.besemer@gmail.com \
    --cc=linuxppc-dev@lists.ozlabs.org \
    --cc=segher@kernel.crashing.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;
as well as URLs for NNTP newsgroup(s).