[PATCH v8 4/9] mfd: Add binding document for NVIDIA Tegra XUSB
Linus Walleij
linus.walleij at linaro.org
Thu May 21 00:19:00 PDT 2015
On Wed, May 20, 2015 at 4:52 PM, Thierry Reding
<thierry.reding at gmail.com> wrote:
> I'm a little confused by the simple-mfd approach. The only code I see in
> linux-next for this is a single line that adds the "simple-mfd" string
> to the OF device ID table in drivers/of/platform.c. As far as I can tell
> this will merely cause child devices to be created. There won't be a
> shared regmap and resources won't be set up properly either.
That is correct. The simple-mfd is a two-component approach.
Ideally, in the simplest case, you combine simple-mfd with syscon.
foo at 0 {
compatible = "foo", "syscon", "simple-mfd";
reg = <0x10000000 0x1000>;
bar at 1 {
compatible = "bar";
};
baz at 2 {
compatible = "baz";
};
};
This will instantiate bar and baz.
These subdrivers then probe and:
probe() {
struct regmap *map;
map = syscon_node_to_regmap(parent->of_node);
(...)
}
Simple, syscon is the MFD hub.
Yours,
Linus Walleij
More information about the linux-arm-kernel
mailing list