Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 09a41676 authored by Murali Nalajala's avatar Murali Nalajala Committed by Raghavendra Rao Ananta
Browse files

Documentation: devicetree: Remove devicetree bindings from kernel



Remove devicetree bindings from kernel.

Change-Id: I797cdc4356edf6e2f53f536679602da49313d8a5
Signed-off-by: default avatarMurali Nalajala <mnalajal@codeaurora.org>
parent 042878c4
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
../../arch/arm64/boot/dts/vendor/bindings
 No newline at end of file
+0 −2
Original line number Diff line number Diff line
*.example.dts
processed-schema.yaml
+0 −39
Original line number Diff line number Diff line

  Devicetree (DT) ABI

I. Regarding stable bindings/ABI, we quote from the 2013 ARM mini-summit
   summary document:

     "That still leaves the question of, what does a stable binding look
     like?  Certainly a stable binding means that a newer kernel will not
     break on an older device tree, but that doesn't mean the binding is
     frozen for all time. Grant said there are ways to change bindings that
     don't result in breakage. For instance, if a new property is added,
     then default to the previous behaviour if it is missing. If a binding
     truly needs an incompatible change, then change the compatible string
     at the same time.  The driver can bind against both the old and the
     new. These guidelines aren't new, but they desperately need to be
     documented."

II.  General binding rules

  1) Maintainers, don't let perfect be the enemy of good.  Don't hold up a
     binding because it isn't perfect.

  2) Use specific compatible strings so that if we need to add a feature (DMA)
     in the future, we can create a new compatible string.  See I.

  3) Bindings can be augmented, but the driver shouldn't break when given
     the old binding. ie. add additional properties, but don't change the
     meaning of an existing property. For drivers, default to the original
     behaviour when a newly added property is missing.

  4) Don't submit bindings for staging or unstable.  That will be decided by
     the devicetree maintainers *after* discussion on the mailinglist.

III. Notes

  1) This document is intended as a general familiarization with the process as
     decided at the 2013 Kernel Summit.  When in doubt, the current word of the
     devicetree maintainers overrules this document.  In that situation, a patch
     updating this document would be appreciated.
+0 −31
Original line number Diff line number Diff line
# SPDX-License-Identifier: GPL-2.0
DT_DOC_CHECKER ?= dt-doc-validate
DT_EXTRACT_EX ?= dt-extract-example
DT_MK_SCHEMA ?= dt-mk-schema
DT_MK_SCHEMA_FLAGS := $(if $(DT_SCHEMA_FILES), -u)

quiet_cmd_chk_binding = CHKDT   $(patsubst $(srctree)/%,%,$<)
      cmd_chk_binding = $(DT_DOC_CHECKER) -u $(srctree)/$(src) $< ; \
                        $(DT_EXTRACT_EX) $< > $@

$(obj)/%.example.dts: $(src)/%.yaml FORCE
	$(call if_changed,chk_binding)

DT_TMP_SCHEMA := processed-schema.yaml
extra-y += $(DT_TMP_SCHEMA)

quiet_cmd_mk_schema = SCHEMA  $@
      cmd_mk_schema = $(DT_MK_SCHEMA) $(DT_MK_SCHEMA_FLAGS) -o $@ $(real-prereqs)

DT_DOCS = $(shell \
	cd $(srctree)/$(src) && \
	find * \( -name '*.yaml' ! -name $(DT_TMP_SCHEMA) \) \
	)

DT_SCHEMA_FILES ?= $(addprefix $(src)/,$(DT_DOCS))

extra-y += $(patsubst $(src)/%.yaml,%.example.dts, $(DT_SCHEMA_FILES))
extra-y += $(patsubst $(src)/%.yaml,%.example.dtb, $(DT_SCHEMA_FILES))

$(obj)/$(DT_TMP_SCHEMA): $(DT_SCHEMA_FILES) FORCE
	$(call if_changed,mk_schema)
+0 −17
Original line number Diff line number Diff line
* ARC HS Performance Counters

The ARC HS can be configured with a pipeline performance monitor for counting
CPU and cache events like cache misses and hits. Like conventional PCT there
are 100+ hardware conditions dynamically mapped to up to 32 counters.
It also supports overflow interrupts.

Required properties:

- compatible : should contain
	"snps,archs-pct"

Example:

pmu {
        compatible = "snps,archs-pct";
};
Loading