mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/herbert/cryptodev-2.6.git
synced 2026-04-19 20:13:49 -04:00
The spi-peripheral-props.yaml schema contains peripheral-specific properties for SPI controllers that should be present in the peripheral node. Add a reference to that so its constraints are followed. additionalProperties: false cannot be used since it marks the controller properties as unknown. Use unevaluatedProperties: false instead. This has the side effect of allowing extra properties that are not specified in the schema. The alternative is to list all the controller properties in this schema but that would mean every peripheral binding would have to repeat the same set of properties for each controller. Signed-off-by: Pratyush Yadav <p.yadav@ti.com> Reviewed-by: Rob Herring <robh@kernel.org> Link: https://lore.kernel.org/r/20211109181911.2251-4-p.yadav@ti.com Signed-off-by: Mark Brown <broonie@kernel.org>
110 lines
3.2 KiB
YAML
110 lines
3.2 KiB
YAML
# SPDX-License-Identifier: GPL-2.0-only
|
|
%YAML 1.2
|
|
---
|
|
$id: http://devicetree.org/schemas/mtd/jedec,spi-nor.yaml#
|
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
|
|
|
title: SPI NOR flash ST M25Pxx (and similar) serial flash chips
|
|
|
|
maintainers:
|
|
- Rob Herring <robh@kernel.org>
|
|
|
|
allOf:
|
|
- $ref: "mtd.yaml#"
|
|
- $ref: /schemas/spi/spi-peripheral-props.yaml#
|
|
|
|
properties:
|
|
compatible:
|
|
oneOf:
|
|
- items:
|
|
- pattern: "^((((micron|spansion|st),)?\
|
|
(m25p(40|80|16|32|64|128)|\
|
|
n25q(32b|064|128a11|128a13|256a|512a|164k)))|\
|
|
atmel,at25df(321a|641|081a)|\
|
|
everspin,mr25h(10|40|128|256)|\
|
|
(mxicy|macronix),mx25l(4005a|1606e|6405d|8005|12805d|25635e)|\
|
|
(mxicy|macronix),mx25u(4033|4035)|\
|
|
(spansion,)?s25fl(128s|256s1|512s|008k|064k|164k)|\
|
|
(sst|microchip),sst25vf(016b|032b|040b)|\
|
|
(sst,)?sst26wf016b|\
|
|
(sst,)?sst25wf(040b|080)|\
|
|
winbond,w25x(80|32)|\
|
|
(winbond,)?w25q(16|32(w|dw)?|64(dw)?|80bl|128(fw)?|256))$"
|
|
- const: jedec,spi-nor
|
|
- items:
|
|
- enum:
|
|
- issi,is25lp016d
|
|
- micron,mt25qu02g
|
|
- mxicy,mx25r1635f
|
|
- mxicy,mx25u6435f
|
|
- mxicy,mx25v8035f
|
|
- spansion,s25sl12801
|
|
- spansion,s25fs512s
|
|
- const: jedec,spi-nor
|
|
- const: jedec,spi-nor
|
|
description:
|
|
Must also include "jedec,spi-nor" for any SPI NOR flash that can be
|
|
identified by the JEDEC READ ID opcode (0x9F).
|
|
|
|
reg:
|
|
maxItems: 1
|
|
|
|
spi-max-frequency: true
|
|
spi-rx-bus-width: true
|
|
spi-tx-bus-width: true
|
|
|
|
m25p,fast-read:
|
|
type: boolean
|
|
description:
|
|
Use the "fast read" opcode to read data from the chip instead of the usual
|
|
"read" opcode. This opcode is not supported by all chips and support for
|
|
it can not be detected at runtime. Refer to your chips' datasheet to check
|
|
if this is supported by your chip.
|
|
|
|
broken-flash-reset:
|
|
type: boolean
|
|
description:
|
|
Some flash devices utilize stateful addressing modes (e.g., for 32-bit
|
|
addressing) which need to be managed carefully by a system. Because these
|
|
sorts of flash don't have a standardized software reset command, and
|
|
because some systems don't toggle the flash RESET# pin upon system reset
|
|
(if the pin even exists at all), there are systems which cannot reboot
|
|
properly if the flash is left in the "wrong" state. This boolean flag can
|
|
be used on such systems, to denote the absence of a reliable reset
|
|
mechanism.
|
|
|
|
label: true
|
|
|
|
partitions:
|
|
type: object
|
|
|
|
'#address-cells': true
|
|
'#size-cells': true
|
|
|
|
patternProperties:
|
|
# Note: use 'partitions' node for new users
|
|
'^partition@':
|
|
type: object
|
|
|
|
"^otp(-[0-9]+)?$":
|
|
type: object
|
|
|
|
unevaluatedProperties: false
|
|
|
|
examples:
|
|
- |
|
|
spi {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
|
|
flash@0 {
|
|
#address-cells = <1>;
|
|
#size-cells = <1>;
|
|
compatible = "spansion,m25p80", "jedec,spi-nor";
|
|
reg = <0>;
|
|
spi-max-frequency = <40000000>;
|
|
m25p,fast-read;
|
|
};
|
|
};
|
|
...
|