Hello Michal,

Am 27.05.2019 um 09:13 schrieb Michal Simek:
On 27. 05. 19 8:30, Heiko Schocher wrote:
add gpio-hog support. GPIO hogging is a mechanism
providing automatic GPIO request and configuration
as part of the gpio-controller's driver probe function.

for more infos see:
doc/device-tree-bindings/gpio/gpio.txt

Signed-off-by: Heiko Schocher <[email protected]>

I have tested it on zcu102 where I use gpio hogs for gt muxes.

Thanks!

gpio hogs are handled and setup only when gpio controller is probed.

Yes, with my current approach ... If you need a gpio-hog in a gpio
device, wich is not used, you can add in board code:

gpio_hog_lookup_name("name_of_the_gpio_hog");

and gpio driver (and gpio hogs) get probed ... but not really nice...

Do we have a way how to say that controllers with gpio hogs should be
probed automatically?

No yet, but I am open for suggestions ;-)

Right now you are calling it in post_probe which make sense but on the
other hand if you find gpio hog in bind you should probe the whole
driver without asking for request.

Yes, I also thought about this approach, but the problem is in

static int gpio_hog(struct udevice *dev)
{
        ofnode node;
        struct gpio_dev_priv *uc_priv = NULL;

        uc_priv = dev_get_uclass_priv(dev);
        if (!uc_priv) {
                printf("%s: missing private data.\n", __func__);
                return -EINVAL;
        }

uc_priv is not valid @bind stage ...

But I can think of a function which scans all gpio nodes for
gpio hog subnodes, and call device_probe() ?

But from where should this function be called?

bye,
Heiko
--
DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-52   Fax: +49-8142-66989-80   Email: [email protected]
_______________________________________________
U-Boot mailing list
[email protected]
https://lists.denx.de/listinfo/u-boot

Reply via email to