Dear Marek, > From: Marek Vasut <ma...@denx.de> > Sent: jeudi 9 avril 2020 13:27 > > On 4/1/20 3:30 PM, Patrick DELAUNAY wrote: > > Hi Marek, > > Hi, > > [...] > > >> +&pinctrl { > >> + /* These should bound to FMC2 bus driver, but we do not have one */ > > > > As temporarily solution (waiting final solution and real FMC2 bus > > driver) can you define a NO_OP in board device associated to existing > > compatible = "st,stm32mp15-fmc2" > > NO_OP ?
Sorry, UCLASS_NOP After debate with Christophe, I agree that i sis other complicated for temporarily solution. > >> + pinctrl-0 = <&fmc_pins_b>; > >> + pinctrl-1 = <&fmc_sleep_pins_b>; > >> + pinctrl-names = "default", "sleep"; > >> + > >> + fmc_pins_b: fmc-0 { > >> + pins1 { > > [...] > >> + }; > >> + }; > >> + > >> + fmc_sleep_pins_b: fmc-sleep-0 { > >> + pins { > > [...] > >> + }; > >> + }; > >> +}; > >> + > >> &pmic { > >> u-boot,dm-pre-reloc; > >> }; > > > > For example > > > > &fmc { > > pinctrl-names = "default", "sleep"; > > pinctrl-0 = <& fmc_pins_b>; > > pinctrl-1 = <& fmc_sleep_pins_b>; > > status = "okay"; > > #address-cells = <1>; > > #size-cells = <0>; > > }; > > > > static const struct udevice_id stm32_fmc2_bus_ids[] = { > > {.compatible = "st,stm32mp15-fmc2}, > > { } > > }; > > > > U_BOOT_DRIVER(stm32_fmc2_bus) = { > > .name = "stm32mp15-fmc2-ids", > > .id = UCLASS_NOP, > > .of_match = stm32_fmc2_bus_ids, > > .bind = stm32_fmc2_bus, > > }; > > That looks like a hack, it would collide with the actual FMC2 driver and it > seems > the FMC2 DT compatible string is not even stable yet (cfr the Linux patches). > So I > am reluctant to do anything like depending on the FMC DT bindings thus far. You are aligned with Christophe, he push me to accept your temporarily solution. [...] > > Use clk and reset driver model and DT, for example: > > > > struct clk clk; > > struct reset_ctl reset; > > > > clk_get_by_index_nodev(ofnode, 0, &clk ; > > clk_get_by_index_nodev(ofnode, 0, &reset); > > This very much looks like I can just write the entire bus driver by now, > instead of > just writing these few registers in a real simple way, until the bus driver > exists. > > But since the bindings aren't stable, I am not very inclined to do that. I am convinced now (thanks to Christophe) to keep it simple as it is a temporarily solution. Reviewed-by: Patrick Delaunay <patrick.delau...@st.com> Thanks Patrick > > [...]