
Hi,
On 11 June 2018 at 08:15, Marek Vasut marex@denx.de wrote:
On 06/11/2018 04:13 PM, Chee, Tien Fong wrote:
On Mon, 2018-06-11 at 16:03 +0200, Marek Vasut wrote:
On 06/11/2018 03:55 PM, Chee, Tien Fong wrote: [...]
> >> >> Linux firmware loading method is different with this >> Linux loading firmware with >> 1. Firmware search paths - which is hardcoded in root file >> system >> 2. Built-in firmware - part of kernel binaries >> >> This patch loading firmware with >> 1. Storage type and partition specified in DTS, but storage >> type >> can >> be overridden dev instance and partition through U-boot >> variable >> environment. >> >> Or: >> >> 2. Storage type can be set through dev instance, and >> partition >> through >> U-boot variable environment. No DTS is required. > And why can we not do as Linux does ? > Because we don't have root file system, but i have mimicked the search path in our variable environment, but with both storage type and partition.
OK, so user can configure environment variable to inform U-Boot where to look for firmware, good (although, this probably fails in early env, dunno of that's a problem).
Without DTS, then you need to configure env variable, so that SPL and U-boot only know what storage type and partiton to look for firmware.
I guess that's fine ?
Yes, it is already supported in this patches.
But why do we need the DT part of things ? I don't think we do need it at all.
Leverage the flexibility and benefits of the DT such as changing both storage type and partitions without changing the codes.
DT is a hardware description. Does this describe hardware ? No
Okay, then i will remove DT part.
Wait for feedback from sjg at least.
I think using device tree is fine for this, but I suggest that the binding file (when you add it) should mention that the node for this driver should go in /chosen. That's what we use for settings, etc.
Things to do: - Add a sandbox driver for this uclass, and a test in test/dm/... - Add some documentation about it somehwere - Add a device-tree binding file - see doc/device-tree-bindings
Regards, Simon