clk: at91: rework main clk implementation

AT91 main clk a clk multiplexer and not a simple fixed rate clk as currently
implemented.

In some SoCs (sam9x5, sama5, sam9g45 families) this multiplexer can
choose among 2 sources: an internal RC oscillator circuit and an oscillator
using an external crystal.

In other Socs (sam9260, rm9200 families) the multiplexer source is
hardcoded to the external crystal oscillator.

Signed-off-by: Boris BREZILLON <b.brezillon@overkiz.com>
clk: at91: update main clk documentation

Update main clk documentation to match main clk implementation rework.

Signed-off-by: Boris BREZILLON <b.brezillon.dev@gmail.com>
clk: at91: add slow clks driver

AT91 slow clk is a clk multiplexer.

In some SoCs (sam9x5, sama5, sam9g45 families) this multiplexer can
choose among 2 sources: an internal RC oscillator circuit and an oscillator
using an external crystal.

In other Socs (sam9260 family) the multiplexer source is hardcoded with
the OSCSEL signal.

Signed-off-by: Boris BREZILLON <b.brezillon@overkiz.com>
clk: at91: add slow clk documentation

Add slow clk, and slow oscillators documentation.

Signed-off-by: Boris BREZILLON <b.brezillon.dev@gmail.com>
ARM: at91/dt: move sama5d3 SoC to the new main/slow clk model

Replace the old main and clk definitions (fixed rate clk) by the new main and
slow clk subtree definition (ck = mux(rc_osc, osc)).

Signed-off-by: Boris BREZILLON <b.brezillon@overkiz.com>
ARM: at91/dt: add xtal frequencies to sama5d3xcm boards

Define crystal frequencies of sama5d3xcm boards.

Signed-off-by: Boris BREZILLON <b.brezillon@overkiz.com>
ARM: at91/dt: add xtal frequencies to sama5d3 xplained board

Define crystal properties of sama5d3 xplained board.

Signed-off-by: Boris BREZILLON <b.brezillon@overkiz.com>
ARM: at91/dt: move at91sam9261 SoC to the new main clock model

Signed-off-by: Boris BREZILLON <b.brezillon.dev@gmail.com>
ARM: at91/dt: define main xtal frequency of the at91sam9261ek board

Define at91sam9261ek main crystal frequency.

Signed-off-by: Boris BREZILLON <b.brezillon.dev@gmail.com>
ARM: at91/dt: move at91sam9rl SoC to the new slow/main clock models

Move at91sam9rl SoC to the new main/slow clock model.

Signed-off-by: Boris BREZILLON <b.brezillon.dev@gmail.com>
ARM: at91/dt: define sam9rlek crystal frequencies

Define at91sam9rlek crystal frequencies.

Signed-off-by: Boris BREZILLON <b.brezillon.dev@gmail.com>