From: Krzysztof Kozlowski <krzk@kernel.org>
To: "Florian Fainelli" <florian.fainelli@broadcom.com>,
"Arınç ÜNAL" <arinc.unal@arinc9.com>,
"Rob Herring" <robh@kernel.org>,
"Krzysztof Kozlowski" <krzk+dt@kernel.org>,
"Conor Dooley" <conor+dt@kernel.org>,
"Hauke Mehrtens" <hauke@hauke-m.de>,
"Rafal Milecki" <zajec5@gmail.com>,
"Broadcom internal kernel review list"
<bcm-kernel-feedback-list@broadcom.com>
Cc: Tom Brautaset <tbrautaset@gmail.com>,
devicetree@vger.kernel.org, linux-kernel@vger.kernel.org,
linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH 3/4] ARM: dts: BCM5301X: Add DT for ASUS RT-AC3200
Date: Wed, 17 Apr 2024 21:03:29 +0200 [thread overview]
Message-ID: <8a5a494c-48db-4f4d-a310-0103cef7d7ac@kernel.org> (raw)
In-Reply-To: <eb6e33cf-0e1a-407a-bb62-9ef7202ec1ca@broadcom.com>
On 17/04/2024 18:47, Florian Fainelli wrote:
>
>
> On 4/17/2024 6:23 AM, Krzysztof Kozlowski wrote:
>> On 17/04/2024 05:15, Florian Fainelli wrote:
>>>
>>>
>>> On 4/15/2024 2:10 AM, Arınç ÜNAL wrote:
>>>> On 15.04.2024 10:57, Krzysztof Kozlowski wrote:
>>>>> On 14/04/2024 22:21, Arınç ÜNAL wrote:
>>>>>> NVRAM is described as both flash device partition and memory mapped
>>>>>> NVMEM.
>>>>>> This platform stores NVRAM on flash but makes it also memory accessible.
>>>>>>
>>>>>> As device partitions are described in board DTS, the nvram node must
>>>>>> also
>>>>>
>>>>> Sorry, but we do not talk about partitions. Partitions are indeed board
>>>>> property. But the piece of hardware, so NVMEM, is provided by SoC.
>>>>>
>>>>>> be defined there as its address and size will be different by board.
>>>>>> It has
>>>>>> been widely described on at least bcm4709 and bcm47094 SoC board DTS
>>>>>> files
>>>>>> here.
>>>>>
>>>>> These not proper arguments. What you are saying here is that SoC does no
>>>>> have nvram at address 0x1c08000. Instead you are saying there some sort
>>>>> of bus going out of SoC to the board and on the board physically there
>>>>> is some NVRAM sort of memory attached to this bus.
>>>>
>>>> Yes that is the case. NVRAM is stored on a partition on the flash. On the
>>>> Broadcom NorthStar platform, the NAND flash base is 0x1c000000, the NOR
>>>> flash base is 0x1e000000.
>>>>
>>>> For the board in this patch, the flash is a NAND flash. The NVRAM partition
>>>> starts at address 0x00080000. Therefore, the NVRAM component's address is
>>>> 0x1c080000.
>>>
>>> Because the flash is memory mapped into the CPU's address space, a
>>> separate node was defined since it is not part of the "soc" node which
>>> describes the bridge that connects all of the peripherals.
>>>
>>> Whether we should create an additional bus node which describes the
>>> bridge being used to access the flash devices using the MMIO windows is
>>> debatable. Rafal, what do you think?
>>
>> Sorry guys, I don't get. I don't know the addresses neither the names
>> like Broadcom Northstar, so this does not clarify me at all.
>
> Northstar is just a code name for the BCM5301X SoC family. The SoC
> memory map looks like this:
>
> 0x0000_0000 ~ 0x07FF_FFFF - DDR
> 0x0800_0000 ~ 0x0FFF_FFFF - PCIe0
> 0x1800_0000 ~ 0x180F_FFFF - Core registers (that is
> chipcommon-a-bus@18000000 and axi@18000000 in DT)
> 0x1810_0000 ~ 0x181F_FFFF - IDM registers
> 0x1900_0000 ~ 0x190F_FFFF - ARMCore registers (that is
> mpcore-bus@19000000 in DT)
> 0x1C00_0000 ~ 0x1DFF_FFFF - NAND flash
> 0x1E00_0000 ~ 0x1FFF_FFFF - SPI-NOR flash
> 0x4000_0000 ~ 0x47FF_FFFF - PCIe1
> 0x4800_0000 ~ 0x4FFF_FFFF - PCIe2
> 0x8000_0000 ~ 0xBFFF_FFFF - DDR
>
> From the system diagram the CPU has 3 AXI ports to the NIC301 AXI
> fabric, which itself has separate AXI ports to the NAND and SPI-NOR MMIO
> interface and then different AXI and APB ports to various other peripherals.
>
> This information was not accessible to Rafal at the time, so it would
> not have been reasonable to expect from him to know such details.
Sure.
>
>>
>> Please answer the simple questions:
>> 1. Is NAND flash part of SoC?
>> 2. If not, is NAND flash provided by Broadcom or anyone else?
>
> The NAND flash is external to the SoC it is not manufactured by Broadcom
> we have boards with Spansion, Micron, Macronix, Toshiba flashes etc.
Thanks, then this explains why this is no part of SoC and my concerns
are addressed. I have only one remaining question - you use "brcm,nvram"
compatible, which kind of suggests the NVRAM controller or part itself
is coming from Broadcom. Driver looks like software construct, but it is
so widely used that I guess that ship has sailed.
Best regards,
Krzysztof
next prev parent reply other threads:[~2024-04-17 19:03 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-04-14 11:45 [PATCH 0/4] Document ASUS RT-AC3200 and ASUS RT-AC5300 and add device trees Arınç ÜNAL via B4 Relay
2024-04-14 11:46 ` [PATCH 1/4] dt-bindings: arm: bcm: add bindings for ASUS RT-AC3200 Arınç ÜNAL via B4 Relay
2024-04-14 14:12 ` Krzysztof Kozlowski
2024-04-14 11:46 ` [PATCH 2/4] dt-bindings: arm: bcm: add bindings for ASUS RT-AC5300 Arınç ÜNAL via B4 Relay
2024-04-14 14:12 ` Krzysztof Kozlowski
2024-04-14 11:46 ` [PATCH 3/4] ARM: dts: BCM5301X: Add DT for ASUS RT-AC3200 Arınç ÜNAL via B4 Relay
2024-04-14 14:13 ` Krzysztof Kozlowski
2024-04-14 16:59 ` Arınç ÜNAL
2024-04-14 19:12 ` Krzysztof Kozlowski
2024-04-14 20:21 ` Arınç ÜNAL
2024-04-15 7:57 ` Krzysztof Kozlowski
2024-04-15 9:10 ` Arınç ÜNAL
2024-04-17 3:15 ` Florian Fainelli
2024-04-17 8:24 ` Arınç ÜNAL
2024-04-17 13:23 ` Krzysztof Kozlowski
2024-04-17 14:27 ` Arınç ÜNAL
2024-04-17 13:23 ` Krzysztof Kozlowski
2024-04-17 16:47 ` Florian Fainelli
2024-04-17 19:03 ` Krzysztof Kozlowski [this message]
2024-04-14 11:46 ` [PATCH 4/4] ARM: dts: BCM5301X: Add DT for ASUS RT-AC5300 Arınç ÜNAL via B4 Relay
2024-04-15 18:47 ` [PATCH 0/4] Document ASUS RT-AC3200 and ASUS RT-AC5300 and add device trees Rob Herring
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=8a5a494c-48db-4f4d-a310-0103cef7d7ac@kernel.org \
--to=krzk@kernel.org \
--cc=arinc.unal@arinc9.com \
--cc=bcm-kernel-feedback-list@broadcom.com \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=florian.fainelli@broadcom.com \
--cc=hauke@hauke-m.de \
--cc=krzk+dt@kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=robh@kernel.org \
--cc=tbrautaset@gmail.com \
--cc=zajec5@gmail.com \
/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