dt-bindings: soc: mobileye: set `#clock-cells = <1>` for all compatiblesSome compatibles expose a single clock. For those, we used to let themusing `#clock-cells = <0>` (ie <&olb> reference rather
dt-bindings: soc: mobileye: set `#clock-cells = <1>` for all compatiblesSome compatibles expose a single clock. For those, we used to let themusing `#clock-cells = <0>` (ie <&olb> reference rather than <&olb 0>).Switch away from that: enforce a cell for all compatibles. This is morestraight forward, and avoids devicetree changes whenever a compatiblegoes from exposing a single clock to multiple ones. Also, dt-bindingsget simpler.*This is an ABI break*. Change it while EyeQ5 platform support is at itsinfancy, without any user. More clocks might hide in each OLB as someregisters are still unknown.Signed-off-by: Théo Lebrun <[email protected]>Link: https://lore.kernel.org/r/[email protected]Reviewed-by: Krzysztof Kozlowski <[email protected]>Reviewed-by: Rob Herring (Arm) <[email protected]>Signed-off-by: Stephen Boyd <[email protected]>
show more ...
dt-bindings: soc: mobileye: add EyeQ OLB system controllerAdd documentation to describe the "Other Logic Block" system-controller.It deals with three platforms: EyeQ5, EyeQ6L and EyeQ6H. First two
dt-bindings: soc: mobileye: add EyeQ OLB system controllerAdd documentation to describe the "Other Logic Block" system-controller.It deals with three platforms: EyeQ5, EyeQ6L and EyeQ6H. First two havea single instance, whereas EyeQ6H has seven named instances.Features provided are: - Clocks, children to main crystal. Some PLLs and divider clocks. - Resets. Some instances DO NOT have reset. - Pinctrl. Only EyeQ5 has such feature.Those are NOT the only features exposed in OLB system-controllers! Manyindividual registers, related to IP block integration, can be found.Additional features will be exposed over time.We simplify devicetree phandles to OLB in two ways: - Compatibles exposing a single clock do not ask for a index argument. This means we use EyeQ6H OLB south (it has four clocks): clocks = <&olb_south EQ6HC_SOUTH_PLL_PER>; But use EyeQ6H OLB east (it has one clock): clocks = <&olb_east>; - Compatibles exposing a single reset domain do not ask for a domain index, only a reset index. This means we use EyeQ5 OLB (it has three domains): resets = <&olb 0 10>; But use EyeQ6H west reset (it has one domain): resets = <&olb_west 3>;About pinctrl subnodes: all pins have two functionality, either GPIO orsomething-else. The latter is pin dependent, we express constraintsusing many if-then.Reviewed-by: Rob Herring (Arm) <[email protected]>Signed-off-by: Théo Lebrun <[email protected]>Signed-off-by: Thomas Bogendoerfer <[email protected]>