[U-Boot] [PATCH v3 0/3] arc: introduce timer driver and update device tree

Vlad Zakharov Vladislav.Zakharov at synopsys.com
Tue Mar 21 11:49:46 UTC 2017


ARC cores may have up to 2 built-in timers: timer0 and timer1,
usually at least one of them exists. They both are driven by the
same core clock.

They are controlled through auxiliary registers and so we
don't have to remap their control registers as we used to do
with MMIO registers of external peripheral devices.

This patch series replaces legacy approach to access ARC timer
via specific code in "arch/arc/lib/time.c" and uses timer
driver instead.

We want to have common device tree blobs for both Linux and U-Boot.
To achieve this the patch updates arc device trees with the following:
1. Separate axs10x.dts device tree in order to reflect the real
structure of AXS101 and AXS103 development boards.
2. Add timer device to skeleton ARC device tree.
3. Add core_clk devices to all ARC boards as it is referenced from
timer device.

---
Changes v2..v3:
 - Rebase on top of upstream master

Vlad Zakharov (3):
  drivers: timer: Introduce ARC timer driver
  arc: dts: separate single axs10x.dts file
  arc: use timer driver for ARC boards

 arch/Kconfig                                 |   3 +
 arch/arc/Kconfig                             |   9 ++-
 arch/arc/dts/Makefile                        |   3 +-
 arch/arc/dts/abilis_tb100.dts                |  12 ++-
 arch/arc/dts/axc001.dtsi                     |  19 +++++
 arch/arc/dts/axc003.dtsi                     |  19 +++++
 arch/arc/dts/axs101.dts                      |  19 +++++
 arch/arc/dts/axs103.dts                      |  19 +++++
 arch/arc/dts/axs10x.dts                      |  57 --------------
 arch/arc/dts/axs10x_mb.dtsi                  |  66 ++++++++++++++++
 arch/arc/dts/nsim.dts                        |  12 ++-
 arch/arc/dts/skeleton.dtsi                   |  19 ++++-
 arch/arc/include/asm/arcregs.h               |   4 +
 arch/arc/lib/Makefile                        |   1 -
 arch/arc/lib/timer.c                         |  24 ------
 board/synopsys/axs10x/Kconfig                |   2 +-
 configs/axs101_defconfig                     |   4 +-
 configs/axs103_defconfig                     |   3 +-
 doc/device-tree-bindings/timer/arc_timer.txt |  24 ++++++
 drivers/timer/Kconfig                        |   9 +++
 drivers/timer/Makefile                       |   1 +
 drivers/timer/arc_timer.c                    | 113 +++++++++++++++++++++++++++
 include/configs/axs10x.h                     |   2 -
 include/configs/nsim.h                       |   5 --
 include/configs/tb100.h                      |   5 --
 25 files changed, 344 insertions(+), 110 deletions(-)
 create mode 100644 arch/arc/dts/axc001.dtsi
 create mode 100644 arch/arc/dts/axc003.dtsi
 create mode 100644 arch/arc/dts/axs101.dts
 create mode 100644 arch/arc/dts/axs103.dts
 delete mode 100644 arch/arc/dts/axs10x.dts
 create mode 100644 arch/arc/dts/axs10x_mb.dtsi
 delete mode 100644 arch/arc/lib/timer.c
 create mode 100644 doc/device-tree-bindings/timer/arc_timer.txt
 create mode 100644 drivers/timer/arc_timer.c

-- 
2.7.4



More information about the U-Boot mailing list