forked from torvalds/linux
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge tag 'nand/for-5.14' of git://git.kernel.org/pub/scm/linux/kerne…
…l/git/mtd/linux into mtd/next Raw NAND core: * Allow SDR timings to be nacked * Bring support for NV-DDR timings which involved a number of small preparation changes to bring new helpers, properly introduce NV-DDR structures, fill them, differenciate them and pick the best timing set. * Add the necessary infrastructure to parse the new gpio-cs property which aims at enlarging the number of available CS when a hardware controller is too constrained. * Update dead URL * Silence static checker warning in nand_setup_interface() * BBT: - Fix corner case in bad block table handling * onfi: - Use more recent ONFI specification wording - Use the BIT() macro when possible Raw NAND controller drivers: * Atmel: - Ensure the data interface is supported. * Arasan: - Finer grain NV-DDR configuration - Rename the data interface register - Use the right DMA mask - Leverage additional GPIO CS - Ensure proper configuration for the asserted target - Add support for the NV-DDR interface - Fix a macro parameter * brcmnand: - Convert bindings to json-schema * OMAP: - Various fixes and style improvements - Add larger page NAND chips support * PL35X: - New driver * QCOM: - Avoid writing to obsolete register - Delete an unneeded bool conversion - Allow override of partition parser * Marvell: - Minor documentation correction - Add missing clk_disable_unprepare() on error in marvell_nfc_resume() * R852: - Use DEVICE_ATTR_RO() helper macro * MTK: - Remove redundant dev_err call in mtk_ecc_probe() * HISI504: - Remove redundant dev_err call in probe SPI-NAND core: * Light reorganisation for the introduction of a core resume handler * Fix double counting of ECC stats SPI-NAND manufacturer drivers: * Macronix: - Add support for serial NAND flash
- Loading branch information
Showing
33 changed files
with
3,169 additions
and
894 deletions.
There are no files selected for viewing
131 changes: 131 additions & 0 deletions
131
Documentation/devicetree/bindings/memory-controllers/arm,pl353-smc.yaml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,131 @@ | ||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) | ||
%YAML 1.2 | ||
--- | ||
$id: http://devicetree.org/schemas/memory-controllers/arm,pl353-smc.yaml# | ||
$schema: http://devicetree.org/meta-schemas/core.yaml# | ||
|
||
title: ARM PL353 Static Memory Controller (SMC) device-tree bindings | ||
|
||
maintainers: | ||
- Miquel Raynal <[email protected]> | ||
- Naga Sureshkumar Relli <[email protected]> | ||
|
||
description: | ||
The PL353 Static Memory Controller is a bus where you can connect two kinds | ||
of memory interfaces, which are NAND and memory mapped interfaces (such as | ||
SRAM or NOR). | ||
|
||
# We need a select here so we don't match all nodes with 'arm,primecell' | ||
select: | ||
properties: | ||
compatible: | ||
contains: | ||
const: arm,pl353-smc-r2p1 | ||
required: | ||
- compatible | ||
|
||
properties: | ||
$nodename: | ||
pattern: "^memory-controller@[0-9a-f]+$" | ||
|
||
compatible: | ||
items: | ||
- const: arm,pl353-smc-r2p1 | ||
- const: arm,primecell | ||
|
||
"#address-cells": | ||
const: 2 | ||
|
||
"#size-cells": | ||
const: 1 | ||
|
||
reg: | ||
items: | ||
- description: | ||
Configuration registers for the host and sub-controllers. | ||
The three chip select regions are defined in 'ranges'. | ||
|
||
clocks: | ||
items: | ||
- description: clock for the memory device bus | ||
- description: main clock of the SMC | ||
|
||
clock-names: | ||
items: | ||
- const: memclk | ||
- const: apb_pclk | ||
|
||
ranges: | ||
minItems: 1 | ||
maxItems: 3 | ||
description: | | ||
Memory bus areas for interacting with the devices. Reflects | ||
the memory layout with four integer values following: | ||
<cs-number> 0 <offset> <size> | ||
items: | ||
- description: NAND bank 0 | ||
- description: NOR/SRAM bank 0 | ||
- description: NOR/SRAM bank 1 | ||
|
||
interrupts: true | ||
|
||
patternProperties: | ||
"@[0-3],[a-f0-9]+$": | ||
type: object | ||
description: | | ||
The child device node represents the controller connected to the SMC | ||
bus. The controller can be a NAND controller or a pair of any memory | ||
mapped controllers such as NOR and SRAM controllers. | ||
properties: | ||
compatible: | ||
description: | ||
Compatible of memory controller. | ||
|
||
reg: | ||
items: | ||
- items: | ||
- description: | | ||
Chip-select ID, as in the parent range property. | ||
minimum: 0 | ||
maximum: 2 | ||
- description: | | ||
Offset of the memory region requested by the device. | ||
- description: | | ||
Length of the memory region requested by the device. | ||
required: | ||
- compatible | ||
- reg | ||
|
||
required: | ||
- compatible | ||
- reg | ||
- clock-names | ||
- clocks | ||
- "#address-cells" | ||
- "#size-cells" | ||
- ranges | ||
|
||
additionalProperties: false | ||
|
||
examples: | ||
- | | ||
smcc: memory-controller@e000e000 { | ||
compatible = "arm,pl353-smc-r2p1", "arm,primecell"; | ||
reg = <0xe000e000 0x0001000>; | ||
clock-names = "memclk", "apb_pclk"; | ||
clocks = <&clkc 11>, <&clkc 44>; | ||
ranges = <0x0 0x0 0xe1000000 0x1000000 /* Nand CS region */ | ||
0x1 0x0 0xe2000000 0x2000000 /* SRAM/NOR CS0 region */ | ||
0x2 0x0 0xe4000000 0x2000000>; /* SRAM/NOR CS1 region */ | ||
#address-cells = <2>; | ||
#size-cells = <1>; | ||
nfc0: nand-controller@0,0 { | ||
compatible = "arm,pl353-nand-r2p1"; | ||
reg = <0 0 0x1000000>; | ||
#address-cells = <1>; | ||
#size-cells = <0>; | ||
}; | ||
}; |
47 changes: 0 additions & 47 deletions
47
Documentation/devicetree/bindings/memory-controllers/pl353-smc.txt
This file was deleted.
Oops, something went wrong.
53 changes: 53 additions & 0 deletions
53
Documentation/devicetree/bindings/mtd/arm,pl353-nand-r2p1.yaml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,53 @@ | ||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) | ||
%YAML 1.2 | ||
--- | ||
$id: http://devicetree.org/schemas/mtd/arm,pl353-nand-r2p1.yaml# | ||
$schema: http://devicetree.org/meta-schemas/core.yaml# | ||
|
||
title: PL353 NAND Controller device tree bindings | ||
|
||
allOf: | ||
- $ref: "nand-controller.yaml" | ||
|
||
maintainers: | ||
- Miquel Raynal <[email protected]> | ||
- Naga Sureshkumar Relli <[email protected]> | ||
|
||
properties: | ||
compatible: | ||
items: | ||
- const: arm,pl353-nand-r2p1 | ||
|
||
reg: | ||
items: | ||
- items: | ||
- description: CS with regard to the parent ranges property | ||
- description: Offset of the memory region requested by the device | ||
- description: Length of the memory region requested by the device | ||
|
||
required: | ||
- compatible | ||
- reg | ||
|
||
unevaluatedProperties: false | ||
|
||
examples: | ||
- | | ||
smcc: memory-controller@e000e000 { | ||
compatible = "arm,pl353-smc-r2p1", "arm,primecell"; | ||
reg = <0xe000e000 0x0001000>; | ||
clock-names = "memclk", "apb_pclk"; | ||
clocks = <&clkc 11>, <&clkc 44>; | ||
ranges = <0x0 0x0 0xe1000000 0x1000000 /* Nand CS region */ | ||
0x1 0x0 0xe2000000 0x2000000 /* SRAM/NOR CS0 region */ | ||
0x2 0x0 0xe4000000 0x2000000>; /* SRAM/NOR CS1 region */ | ||
#address-cells = <2>; | ||
#size-cells = <1>; | ||
nfc0: nand-controller@0,0 { | ||
compatible = "arm,pl353-nand-r2p1"; | ||
reg = <0 0 0x1000000>; | ||
#address-cells = <1>; | ||
#size-cells = <0>; | ||
}; | ||
}; |
Oops, something went wrong.