-
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.13' of git://git.kernel.org/pub/scm/linux/kerne…
…l/git/mtd/linux into mtd/next MTD core: * Handle possible -EPROBE_DEFER from parse_mtd_partitions() NAND core: * Fix error handling in nand_prog_page_op() (x2) * Add a helper to retrieve the number of ECC bytes per step * Add a helper to retrieve the number of ECC steps * Let ECC engines advertize the exact number of steps * ECC Hamming: - Populate the public nsteps field - Use the public nsteps field * ECC BCH: - Populate the public nsteps field - Use the public nsteps field Raw NAND core: * Add support for secure regions in NAND memory * Try not to use the ECC private structures * Remove duplicate include in rawnand.h * BBT: - Skip bad blocks when searching for the BBT in NAND Raw NAND controller drivers: * Qcom: - Convert bindings to YAML - Use dma_mapping_error() for error check - Add missing nand_cleanup() in error path - Return actual error code instead of -ENODEV - Update last code word register - Add helper to configure location register - Rename parameter name in macro - Add helper to check last code word - Convert nandc to chip in Read/Write helper - Update register macro name for 0x2c offset * GPMI: - Fix a double free in gpmi_nand_init * Rockchip: - Use flexible-array member instead of zero-length array * Atmel: - Update ecc_stats.corrected counter * MXC: - Remove unneeded of_match_ptr() * R852: - replace spin_lock_irqsave by spin_lock in hard IRQ * Brcmnand: - Move to polling in pio mode on oops write - Read/write oob during EDU transfer - Fix OOB R/W with Hamming ECC * FSMC: - Fix error code in fsmc_nand_probe() * OMAP: - Use ECC information from the generic structures SPI-NAND core: * Add missing MODULE_DEVICE_TABLE() SPI-NAND drivers: * gigadevice: Support GD5F1GQ5UExxG
- Loading branch information
Showing
23 changed files
with
683 additions
and
313 deletions.
There are no files selected for viewing
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
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,196 @@ | ||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) | ||
%YAML 1.2 | ||
--- | ||
$id: http://devicetree.org/schemas/mtd/qcom,nandc.yaml# | ||
$schema: http://devicetree.org/meta-schemas/core.yaml# | ||
|
||
title: Qualcomm NAND controller | ||
|
||
maintainers: | ||
- Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org> | ||
|
||
properties: | ||
compatible: | ||
enum: | ||
- qcom,ipq806x-nand | ||
- qcom,ipq4019-nand | ||
- qcom,ipq6018-nand | ||
- qcom,ipq8074-nand | ||
- qcom,sdx55-nand | ||
|
||
reg: | ||
maxItems: 1 | ||
|
||
clocks: | ||
items: | ||
- description: Core Clock | ||
- description: Always ON Clock | ||
|
||
clock-names: | ||
items: | ||
- const: core | ||
- const: aon | ||
|
||
"#address-cells": true | ||
"#size-cells": true | ||
|
||
patternProperties: | ||
"^nand@[a-f0-9]$": | ||
type: object | ||
properties: | ||
nand-bus-width: | ||
const: 8 | ||
|
||
nand-ecc-strength: | ||
enum: [1, 4, 8] | ||
|
||
nand-ecc-step-size: | ||
enum: | ||
- 512 | ||
|
||
allOf: | ||
- $ref: "nand-controller.yaml#" | ||
|
||
- if: | ||
properties: | ||
compatible: | ||
contains: | ||
const: qcom,ipq806x-nand | ||
then: | ||
properties: | ||
dmas: | ||
items: | ||
- description: rxtx DMA channel | ||
|
||
dma-names: | ||
items: | ||
- const: rxtx | ||
|
||
qcom,cmd-crci: | ||
$ref: /schemas/types.yaml#/definitions/uint32 | ||
description: | ||
Must contain the ADM command type CRCI block instance number | ||
specified for the NAND controller on the given platform | ||
|
||
qcom,data-crci: | ||
$ref: /schemas/types.yaml#/definitions/uint32 | ||
description: | ||
Must contain the ADM data type CRCI block instance number | ||
specified for the NAND controller on the given platform | ||
|
||
- if: | ||
properties: | ||
compatible: | ||
contains: | ||
enum: | ||
- qcom,ipq4019-nand | ||
- qcom,ipq6018-nand | ||
- qcom,ipq8074-nand | ||
- qcom,sdx55-nand | ||
|
||
then: | ||
properties: | ||
dmas: | ||
items: | ||
- description: tx DMA channel | ||
- description: rx DMA channel | ||
- description: cmd DMA channel | ||
|
||
dma-names: | ||
items: | ||
- const: tx | ||
- const: rx | ||
- const: cmd | ||
|
||
required: | ||
- compatible | ||
- reg | ||
- clocks | ||
- clock-names | ||
|
||
unevaluatedProperties: false | ||
|
||
examples: | ||
- | | ||
#include <dt-bindings/clock/qcom,gcc-ipq806x.h> | ||
nand-controller@1ac00000 { | ||
compatible = "qcom,ipq806x-nand"; | ||
reg = <0x1ac00000 0x800>; | ||
clocks = <&gcc EBI2_CLK>, | ||
<&gcc EBI2_AON_CLK>; | ||
clock-names = "core", "aon"; | ||
dmas = <&adm_dma 3>; | ||
dma-names = "rxtx"; | ||
qcom,cmd-crci = <15>; | ||
qcom,data-crci = <3>; | ||
#address-cells = <1>; | ||
#size-cells = <0>; | ||
nand@0 { | ||
reg = <0>; | ||
nand-ecc-strength = <4>; | ||
nand-bus-width = <8>; | ||
partitions { | ||
compatible = "fixed-partitions"; | ||
#address-cells = <1>; | ||
#size-cells = <1>; | ||
partition@0 { | ||
label = "boot-nand"; | ||
reg = <0 0x58a0000>; | ||
}; | ||
partition@58a0000 { | ||
label = "fs-nand"; | ||
reg = <0x58a0000 0x4000000>; | ||
}; | ||
}; | ||
}; | ||
}; | ||
#include <dt-bindings/clock/qcom,gcc-ipq4019.h> | ||
nand-controller@79b0000 { | ||
compatible = "qcom,ipq4019-nand"; | ||
reg = <0x79b0000 0x1000>; | ||
clocks = <&gcc GCC_QPIC_CLK>, | ||
<&gcc GCC_QPIC_AHB_CLK>; | ||
clock-names = "core", "aon"; | ||
dmas = <&qpicbam 0>, | ||
<&qpicbam 1>, | ||
<&qpicbam 2>; | ||
dma-names = "tx", "rx", "cmd"; | ||
#address-cells = <1>; | ||
#size-cells = <0>; | ||
nand@0 { | ||
reg = <0>; | ||
nand-ecc-strength = <4>; | ||
nand-bus-width = <8>; | ||
partitions { | ||
compatible = "fixed-partitions"; | ||
#address-cells = <1>; | ||
#size-cells = <1>; | ||
partition@0 { | ||
label = "boot-nand"; | ||
reg = <0 0x58a0000>; | ||
}; | ||
partition@58a0000 { | ||
label = "fs-nand"; | ||
reg = <0x58a0000 0x4000000>; | ||
}; | ||
}; | ||
}; | ||
}; | ||
... |
This file was deleted.
Oops, something went wrong.
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
Oops, something went wrong.