From: Florian Fainelli <f.fainelli@gmail.com>
To: Nicolas Saenz Julienne <nsaenzjulienne@suse.de>,
Mathias Nyman <mathias.nyman@intel.com>,
Rob Herring <robh@kernel.org>
Cc: tim.gover@raspberrypi.org, linux-pci@vger.kernel.org,
linux-usb@vger.kernel.org,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
bcm-kernel-feedback-list@broadcom.com,
linux-rpi-kernel@lists.infradead.org, gregkh@linuxfoundation.org,
linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH v8 4/4] USB: pci-quirks: Add Raspberry Pi 4 quirk
Date: Tue, 2 Jun 2020 14:57:40 -0700 [thread overview]
Message-ID: <edcbc0a6-f901-d8ff-748f-73017397799d@gmail.com> (raw)
In-Reply-To: <7cbe4da8ba4a1524824473f8c58720f412a00fc2.camel@suse.de>
On 6/2/2020 3:05 AM, Nicolas Saenz Julienne wrote:
> On Tue, 2020-05-05 at 18:13 +0200, Nicolas Saenz Julienne wrote:
>> On the Raspberry Pi 4, after a PCI reset, VL805's firmware may either be
>> loaded directly from an EEPROM or, if not present, by the SoC's
>> VideoCore. Inform VideoCore that VL805 was just reset.
>>
>> Also, as this creates a dependency between USB_PCI and VideoCore's
>> firmware interface, and since USB_PCI can't be set as a module neither
>> this can. Reflect that on the firmware interface Kconfg.
>>
>> Signed-off-by: Nicolas Saenz Julienne <nsaenzjulienne@suse.de>
>> ---
>
> It was pointed out to me on the u-boot mailing lists that all this could be
> implemented trough a reset controller. In other words have xhci get the reset
> controller trough device-tree, assert it, ultamately causing the firmware
> routine to be run.
That is actually a clever way to solve that problem.
>
> As much as it pains me to go over stuff that's already 'fixed', it seems to me
> it's a better solution. On one hand we get over the device-tree dependency mess
> (see patch #3), and on the other we transform a pci-quirk into something less
> hacky.
>
> That said, before getting my hands dirty, I was wondering if there is any
> obvious reasons why I shouldn't do this, note that:
>
> - We're talking here of a PCIe XCHI device, maybe there's an issue integrating
> it with DT, given the fact that, as of today, it's not really represented
> there.
You can always provide a PCIe device representation within the Device
Tree, this is not very common, but it is sometimes useful for e.g.:
assigning MAC addresses, see this example for instance:
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/arch/arm/boot/dts/imx6qdl-zii-rdu2.dtsi#n647
(does not assign a MAC address, but it could). This should allow your
XHCI pci_device::of_node pointer to point to node declared in the Device
Tree. There you could add a 'resets' property accordingly.
>
> - There is no reset controller support in xhci-pci, maybe there are good
> reasons why. For instance, it's not something that's reflected in any way in
> the spec.
It seems to me this is not usually necessary for PC systems, so it was
not really needed until now. Maybe you can write a small wrapper around
xhci-pci.c, similar to what xhci-plat.c does which is responsible for
grabbing and releasing the reset.
--
Florian
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2020-06-02 21:57 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-05-05 16:13 [PATCH v8 0/4] USB: pci-quirks: Add Raspberry Pi 4 quirk Nicolas Saenz Julienne
2020-05-05 16:13 ` [PATCH v8 1/4] soc: bcm2835: Add notify xHCI reset property Nicolas Saenz Julienne
2020-05-07 21:48 ` Rob Herring
2020-05-05 16:13 ` [PATCH v8 2/4] firmware: raspberrypi: Introduce vl805 init routine Nicolas Saenz Julienne
2020-05-07 21:48 ` Rob Herring
2020-05-09 10:02 ` Stefan Wahren
2020-05-09 10:09 ` Stefan Wahren
2020-05-09 19:20 ` Nicolas Saenz Julienne
2020-05-05 16:13 ` [PATCH v8 3/4] PCI: brcmstb: Wait for Raspberry Pi's firmware when present Nicolas Saenz Julienne
2020-05-07 21:49 ` Rob Herring
2020-05-05 16:13 ` [PATCH v8 4/4] USB: pci-quirks: Add Raspberry Pi 4 quirk Nicolas Saenz Julienne
2020-05-07 21:52 ` Rob Herring
2020-05-11 14:25 ` Lorenzo Pieralisi
2020-05-13 7:05 ` Mathias Nyman
2020-06-02 10:05 ` Nicolas Saenz Julienne
2020-06-02 21:57 ` Florian Fainelli [this message]
2020-05-13 11:17 ` [PATCH v8 0/4] " Lorenzo Pieralisi
2020-05-13 11:26 ` Nicolas Saenz Julienne
2020-05-13 15:47 ` Lorenzo Pieralisi
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=edcbc0a6-f901-d8ff-748f-73017397799d@gmail.com \
--to=f.fainelli@gmail.com \
--cc=bcm-kernel-feedback-list@broadcom.com \
--cc=gregkh@linuxfoundation.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=linux-rpi-kernel@lists.infradead.org \
--cc=linux-usb@vger.kernel.org \
--cc=mathias.nyman@intel.com \
--cc=nsaenzjulienne@suse.de \
--cc=robh@kernel.org \
--cc=tim.gover@raspberrypi.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).