mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-12-27 13:05:03 +08:00
4eb766f64d
Bindings: - DT schema conversions for Samsung clocks, RNG bindings, Qcom Command DB and rmtfs, gpio-restart, i2c-mux-gpio, i2c-mux-pinctl, Tegra I2C and BPMP, pwm-vibrator, Arm DSU, and Cadence macb - DT schema conversions for Broadcom platforms: interrupt controllers, STB GPIO, STB waketimer, STB reset, iProc MDIO mux, iProc PCIe, Cygnus PCIe PHY, PWM, USB BDC, BCM6328 LEDs, TMON, SYSTEMPORT, AMAC, Northstar 2 PCIe PHY, GENET, moca PHY, GISB arbiter, and SATA - Add binding schemas for Tegra210 EMC table, TI DC-DC converters, - Clean-ups of MDIO bus schemas to fix 'unevaluatedProperties' issues - More fixes due to 'unevaluatedProperties' enabling - Data type fixes and clean-ups of binding examples found in preparation to move to validating DTB files directly (instead of intermediate YAML representation. - Vendor prefixes for T-Head Semiconductor, OnePlus, and Sunplus - Add various new compatible strings DT core: - Silence a warning for overlapping reserved memory regions - Reimplement unittest overlay tracking - Fix stack frame size warning in unittest - Clean-ups of early FDT scanning functions - Fix handling of "linux,usable-memory-range" on EFI booted systems - Add support for 'fail' status on CPU nodes - Improve error message in of_phandle_iterator_next() - kbuild: Disable duplicate unit-address warnings for disabled nodes -----BEGIN PGP SIGNATURE----- iQJEBAABCgAuFiEEktVUI4SxYhzZyEuo+vtdtY28YcMFAmHfCdcQHHJvYmhAa2Vy bmVsLm9yZwAKCRD6+121jbxhw+UZD/0ZMQQ6VF20MW7Gg0bOutd8Q6Q6opjrCG5c nLW5mv8Q+um3sI1ZpwdMI4zAfCmTfeL13ZM9KtJKlJ0o41bgId+kZsezy4I2rN9+ sE1CwA4TninKTJsUkmyQX4fgJRUZ95Eubryfb07sy7nbK3LZQ+t18R5tzVBDpzy4 7hy4eM6mlMxgIJDi7EUboLZslkMM4TGGutLsk5C5T5V5lcWSt3Jj5WZtl5k4Wykq j4i9mU+GGTZi0nGAJQ7lNoLPatZDSVQx5tzNV/Wi8hSwZbn0Kycu+IuWZyihILz/ 9lzB/7tv8fl+xkTaJ5xxaY05HcDeX02yCLzh3PfAHRYdbQ2EkFoaKqJ81SLfAq5t aH87v41wFSrjzynxpppqswXOdqI/jofrHrGlQldnw0VHGTjEfDbyZGRQFPHmuzTG gXaSNKCxppG7ThpXarfu7D4TdYV75n+cBOsC/BBopYgIS2+xmjDA3t5Scks1/4NX 1Hfq9IMF9iYJYc/GNXBWcOrLn9d1ILYt6HrKRQar1NIEFH1Lt0c2aw5WsyvOZ4zx aLHLSbEwnl+2wleyGB9YQkFaaF7N6qcid3u9KFRJP6nTojoaeQaIi3MR9F3LVReZ LV5YfWEcij1zc+lzwgHc6+8bbgFxrKgOC2IL/B6u93u/BO0wmF/54kbEZKaLyX8d a7Iii4IYFw== =2g8v -----END PGP SIGNATURE----- Merge tag 'devicetree-for-5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux Pull devicetree updates from Rob Herring: "Bindings: - DT schema conversions for Samsung clocks, RNG bindings, Qcom Command DB and rmtfs, gpio-restart, i2c-mux-gpio, i2c-mux-pinctl, Tegra I2C and BPMP, pwm-vibrator, Arm DSU, and Cadence macb - DT schema conversions for Broadcom platforms: interrupt controllers, STB GPIO, STB waketimer, STB reset, iProc MDIO mux, iProc PCIe, Cygnus PCIe PHY, PWM, USB BDC, BCM6328 LEDs, TMON, SYSTEMPORT, AMAC, Northstar 2 PCIe PHY, GENET, moca PHY, GISB arbiter, and SATA - Add binding schemas for Tegra210 EMC table, TI DC-DC converters, - Clean-ups of MDIO bus schemas to fix 'unevaluatedProperties' issues - More fixes due to 'unevaluatedProperties' enabling - Data type fixes and clean-ups of binding examples found in preparation to move to validating DTB files directly (instead of intermediate YAML representation. - Vendor prefixes for T-Head Semiconductor, OnePlus, and Sunplus - Add various new compatible strings DT core: - Silence a warning for overlapping reserved memory regions - Reimplement unittest overlay tracking - Fix stack frame size warning in unittest - Clean-ups of early FDT scanning functions - Fix handling of "linux,usable-memory-range" on EFI booted systems - Add support for 'fail' status on CPU nodes - Improve error message in of_phandle_iterator_next() - kbuild: Disable duplicate unit-address warnings for disabled nodes" * tag 'devicetree-for-5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux: (114 commits) dt-bindings: net: mdio: Drop resets/reset-names child properties dt-bindings: clock: samsung: convert S5Pv210 to dtschema dt-bindings: clock: samsung: convert Exynos5410 to dtschema dt-bindings: clock: samsung: convert Exynos5260 to dtschema dt-bindings: clock: samsung: extend Exynos7 bindings with UFS dt-bindings: clock: samsung: convert Exynos7 to dtschema dt-bindings: clock: samsung: convert Exynos5433 to dtschema dt-bindings: i2c: maxim,max96712: Add bindings for Maxim Integrated MAX96712 dt-bindings: iio: adi,ltc2983: Fix 64-bit property sizes dt-bindings: power: maxim,max17040: Fix incorrect type for 'maxim,rcomp' dt-bindings: interrupt-controller: arm,gic-v3: Fix 'interrupts' cell size in example dt-bindings: iio/magnetometer: yamaha,yas530: Fix invalid 'interrupts' in example dt-bindings: clock: imx5: Drop clock consumer node from example dt-bindings: Drop required 'interrupt-parent' dt-bindings: net: ti,dp83869: Drop value on boolean 'ti,max-output-impedance' dt-bindings: net: wireless: mt76: Fix 8-bit property sizes dt-bindings: PCI: snps,dw-pcie-ep: Drop conflicting 'max-functions' schema dt-bindings: i2c: st,stm32-i2c: Make each example a separate entry dt-bindings: net: stm32-dwmac: Make each example a separate entry dt-bindings: net: Cleanup MDIO node schemas ...
191 lines
4.5 KiB
YAML
191 lines
4.5 KiB
YAML
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
|
%YAML 1.2
|
|
---
|
|
$id: http://devicetree.org/schemas/memory-controllers/ti,gpmc.yaml#
|
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
|
|
|
title: Texas Instruments GPMC Memory Controller device-tree bindings
|
|
|
|
maintainers:
|
|
- Tony Lindgren <tony@atomide.com>
|
|
- Roger Quadros <rogerq@kernel.org>
|
|
|
|
description:
|
|
The GPMC is a unified memory controller dedicated for interfacing
|
|
with external memory devices like
|
|
- Asynchronous SRAM-like memories and ASICs
|
|
- Asynchronous, synchronous, and page mode burst NOR flash
|
|
- NAND flash
|
|
- Pseudo-SRAM devices
|
|
|
|
properties:
|
|
compatible:
|
|
items:
|
|
- enum:
|
|
- ti,am3352-gpmc
|
|
- ti,am64-gpmc
|
|
- ti,omap2420-gpmc
|
|
- ti,omap2430-gpmc
|
|
- ti,omap3430-gpmc
|
|
- ti,omap4430-gpmc
|
|
|
|
reg:
|
|
minItems: 1
|
|
maxItems: 2
|
|
|
|
reg-names:
|
|
items:
|
|
- const: cfg
|
|
- const: data
|
|
|
|
interrupts:
|
|
maxItems: 1
|
|
|
|
clocks:
|
|
maxItems: 1
|
|
description: |
|
|
Functional clock. Used for bus timing calculations and
|
|
GPMC configuration.
|
|
|
|
clock-names:
|
|
items:
|
|
- const: fck
|
|
|
|
power-domains:
|
|
maxItems: 1
|
|
|
|
dmas:
|
|
items:
|
|
- description: DMA channel for GPMC NAND prefetch
|
|
|
|
dma-names:
|
|
items:
|
|
- const: rxtx
|
|
|
|
"#address-cells": true
|
|
|
|
"#size-cells": true
|
|
|
|
gpmc,num-cs:
|
|
description: maximum number of supported chip-select lines.
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
gpmc,num-waitpins:
|
|
description: maximum number of supported wait pins.
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
ranges:
|
|
minItems: 1
|
|
description: |
|
|
Must be set up to reflect the memory layout with four
|
|
integer values for each chip-select line in use,
|
|
<cs-number> 0 <physical address of mapping> <size>
|
|
items:
|
|
- description: NAND bank 0
|
|
- description: NOR/SRAM bank 0
|
|
- description: NOR/SRAM bank 1
|
|
|
|
'#interrupt-cells':
|
|
const: 2
|
|
|
|
interrupt-controller:
|
|
description: |
|
|
The GPMC driver implements and interrupt controller for
|
|
the NAND events "fifoevent" and "termcount" plus the
|
|
rising/falling edges on the GPMC_WAIT pins.
|
|
The interrupt number mapping is as follows
|
|
0 - NAND_fifoevent
|
|
1 - NAND_termcount
|
|
2 - GPMC_WAIT0 pin edge
|
|
3 - GPMC_WAIT1 pin edge, and so on.
|
|
|
|
'#gpio-cells':
|
|
const: 2
|
|
|
|
gpio-controller:
|
|
description: |
|
|
The GPMC driver implements a GPIO controller for the
|
|
GPMC WAIT pins that can be used as general purpose inputs.
|
|
0 maps to GPMC_WAIT0 pin.
|
|
|
|
ti,hwmods:
|
|
description:
|
|
Name of the HWMOD associated with GPMC. This is for legacy
|
|
omap2/3 platforms only.
|
|
$ref: /schemas/types.yaml#/definitions/string
|
|
deprecated: true
|
|
|
|
ti,no-idle-on-init:
|
|
description:
|
|
Prevent idling the module at init. This is for legacy omap2/3
|
|
platforms only.
|
|
type: boolean
|
|
deprecated: true
|
|
|
|
patternProperties:
|
|
"@[0-7],[a-f0-9]+$":
|
|
type: object
|
|
description: |
|
|
The child device node represents the device connected to the GPMC
|
|
bus. The device can be a NAND chip, SRAM device, NOR device
|
|
or an ASIC.
|
|
$ref: "ti,gpmc-child.yaml"
|
|
|
|
|
|
required:
|
|
- compatible
|
|
- reg
|
|
- gpmc,num-cs
|
|
- gpmc,num-waitpins
|
|
- "#address-cells"
|
|
- "#size-cells"
|
|
|
|
allOf:
|
|
- if:
|
|
properties:
|
|
compatible:
|
|
contains:
|
|
const: ti,am64-gpmc
|
|
then:
|
|
required:
|
|
- reg-names
|
|
- power-domains
|
|
|
|
additionalProperties: false
|
|
|
|
examples:
|
|
- |
|
|
#include <dt-bindings/interrupt-controller/arm-gic.h>
|
|
#include <dt-bindings/gpio/gpio.h>
|
|
|
|
gpmc: memory-controller@50000000 {
|
|
compatible = "ti,am3352-gpmc";
|
|
reg = <0x50000000 0x2000>;
|
|
interrupts = <100>;
|
|
clocks = <&l3s_clkctrl>;
|
|
clock-names = "fck";
|
|
dmas = <&edma 52 0>;
|
|
dma-names = "rxtx";
|
|
gpmc,num-cs = <8>;
|
|
gpmc,num-waitpins = <2>;
|
|
#address-cells = <2>;
|
|
#size-cells = <1>;
|
|
ranges = <0 0 0x08000000 0x10000000>; /* CS0 @addr 0x8000000, size 0x10000000 */
|
|
interrupt-controller;
|
|
#interrupt-cells = <2>;
|
|
gpio-controller;
|
|
#gpio-cells = <2>;
|
|
|
|
nand@0,0 {
|
|
compatible = "ti,omap2-nand";
|
|
reg = <0 0 4>;
|
|
interrupt-parent = <&gpmc>;
|
|
interrupts = <0 IRQ_TYPE_NONE>, /* fifoevent */
|
|
<1 IRQ_TYPE_NONE>; /* termcount */
|
|
ti,nand-xfer-type = "prefetch-dma";
|
|
ti,nand-ecc-opt = "bch16";
|
|
ti,elm-id = <&elm>;
|
|
rb-gpios = <&gpmc 0 GPIO_ACTIVE_HIGH>; /* gpmc_wait0 pin */
|
|
};
|
|
};
|