Guys:
I'm sure this is a FAQ, but I can't seem to find the answer. I'm happy to RTFM, if someone can please tell me where the FM is. :) I'm adding device table support to gpio_keys. The target is an MPC5200B. I have statements in my dts file that look like this: ... i...@3d40 { #address-cells = <1>; #size-cells = <0>; compatible = "fsl,mpc5200b-i2c","fsl,mpc5200-i2c","fsl-i2c"; reg = <0x3d40 0x40>; interrupts = <2 16 0>; ... lext60: max7...@60 { compatible = "maxim,max7314","phillips,pca953x"; reg = <0x60>; gpio-controller; #gpio-cells = <2>; }; }; ... gpio-keys { compatible = "gpio-keys"; encoder_button { gpios = <&lext60 12 0>; code = <28>; type = <1>; active-low = <0>; wakeup = <0>; debounce-interval = <0>; rep = <0>; }; }; In other words, the GPIO pin I'm using for the key is one of the bits on my pca953x GPIO expander chip. The above would all be great, except that I haven't come up with a way to make sure that my encoder_button doesn't try to probe before lext60 is available. In fact, I'm consistently getting initialization in the wrong order! Eventually the GPIO expander chip gets plugged in, because I can see it show up in sysfs. And what's really odd is, I recently made similar mods to gpio_leds and they are working fine--- although the GPIO pin is on a pca953x at address 20, instead of 60. I'm at a loss to explain why one works, but the other doesn't. And I don't know how to really fix this problem for good! Any suggestions? Thanks!! b.g. -- Bill Gatliff b...@billgatliff.com _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev