On Sun 08 Dec 2019 at 19:05, Martin Blumenstingl <martin.blumenstingl@xxxxxxxxxxxxxx> wrote: > Hi Jerome, > > this is looking good overall - I have some questions / nit-picks below > > On Fri, Dec 6, 2019 at 11:02 AM Jerome Brunet <jbrunet@xxxxxxxxxxxx> wrote: > [...] >> + adc_keys { > on most boards we use "adc-keys" instead of "adc_keys" > > [...] >> + button-onoff { >> + label = "On/Off"; >> + linux,code = <KEY_VENDOR>; > based on the label I assumed that the code is KEY_POWER > why is KEY_VENDOR the better choice here? > My bad - The button is labeled with "UPDATE" ... nothing really matches in the KEYs ... so VENDOR it is. I have just copy/pasted the section and forgot to update the rest > [...] >> + cvbs-connector { >> + compatible = "composite-video-connector"; >> + status = "disabled"; > is there CVBS on the board? if I remember correctly the VPU driver > works fine when omitting the CVBS connector > so if the board doesn't have it you may drop the whole node instead of > keeping it disabled The CVBS output could be provided on one the GPIO header. Since it is not really standard, I prefer to keep off and leave to option to easily turn it on if someone wants to use it. I'll had a comment for that. > > [...] >> + leds { >> + compatible = "gpio-leds"; >> + >> + green { >> + label = "librecomputer:green:disk"; > you can use the "function" and "color" properties instead of the (now > deprecated) "label" > > [...] >> +&external_mdio { >> + external_phy: ethernet-phy@0 { >> + reg = <0>; > it would be great to have a comment above which PHY is used on this board > >> + max-speed = <1000>; >> + reset-assert-us = <10000>; >> + reset-deassert-us = <30000>; >> + reset-gpios = <&gpio GPIOZ_14 GPIO_ACTIVE_LOW>; >> + interrupt-parent = <&gpio_intc>; > a comment like /* MAC_INTR on GPIOZ_15 */ would be great here >> + interrupts = <25 IRQ_TYPE_LEVEL_LOW>; > > [...] >> +&pinctrl_periphs { >> + /* >> + * Make sure the reset pin of the usb HUB is driven high to take >> + * it out of reset. >> + */ >> + usb1_rst_pins: usb1_rst_irq { >> + mux { >> + groups = "GPIODV_3"; >> + function = "gpio_periphs"; >> + bias-disable; >> + output-high; >> + }; >> + }; > on other boards (like Odroid-C2) we use a GPIO hog for this. I'm not > sure which one is better > This is at least tied to the related device. I have discussed "hog" vs "pinctrl" matter with Bartosz Golaszewski and we could not find any reason not proceed with pinctrl when possible. > [...] >> +&pinctrl_periphs { >> + /* >> + * Make sure the irq pin of the TYPE C controller is not driven >> + * by the SoC. > is this because the SoC default configuration pulls the IRQ line LOW, > which then generates "phantom" IRQs? No. It is just making sure the pin is claimed and properly configured. Since our interrupt and gpio controller are completly de-coupled it is not necessarily the case without it (... and yes, the same is true for the other device using gpio irqs) > > [...] >> + fusb302@22 { > typec-portc@22 > > [...] >> + interrupt-parent = <&gpio_intc>; >> + interrupts = <59 IRQ_TYPE_LEVEL_LOW>; > a comment above with the GPIO number would be great > > > Martin