Skip to content

Commit 0467d6c

Browse files
Feng Chenbroonie
authored andcommitted
spi: dt-bindings: add Amlogic A113L2 SFC
The Flash Controller is derived by adding an SPI path to the original raw NAND controller. This controller supports two modes: raw mode and SPI mode. The raw mode has already been implemented in the community, and the SPI mode is described here. Add bindings for Amlogic A113L2 SPI Flash Controller. Signed-off-by: Feng Chen <feng.chen@amlogic.com> Reviewed-by: Conor Dooley <conor.dooley@microchip.com> Signed-off-by: Xianwei Zhao <xianwei.zhao@amlogic.com> Link: https://patch.msgid.link/20250910-spifc-v6-1-1574aa9baebd@amlogic.com Signed-off-by: Mark Brown <broonie@kernel.org>
1 parent 76eeb9b commit 0467d6c

1 file changed

Lines changed: 82 additions & 0 deletions

File tree

Lines changed: 82 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,82 @@
1+
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2+
# Copyright (C) 2025 Amlogic, Inc. All rights reserved
3+
%YAML 1.2
4+
---
5+
$id: http://devicetree.org/schemas/spi/amlogic,a4-spifc.yaml#
6+
$schema: http://devicetree.org/meta-schemas/core.yaml#
7+
8+
title: SPI flash controller for Amlogic ARM SoCs
9+
10+
maintainers:
11+
- Liang Yang <liang.yang@amlogic.com>
12+
- Feng Chen <feng.chen@amlogic.com>
13+
- Xianwei Zhao <xianwei.zhao@amlogic.com>
14+
15+
description:
16+
The Amlogic SPI flash controller is an extended version of the Amlogic NAND
17+
flash controller. It supports SPI Nor Flash and SPI NAND Flash(where the Host
18+
ECC HW engine could be enabled).
19+
20+
allOf:
21+
- $ref: /schemas/spi/spi-controller.yaml#
22+
23+
properties:
24+
compatible:
25+
const: amlogic,a4-spifc
26+
27+
reg:
28+
maxItems: 1
29+
30+
clocks:
31+
items:
32+
- description: clock apb gate
33+
- description: clock used for the controller
34+
35+
clock-names:
36+
items:
37+
- const: gate
38+
- const: core
39+
40+
interrupts:
41+
maxItems: 1
42+
43+
amlogic,rx-adj:
44+
description:
45+
Number of clock cycles by which sampling is delayed.
46+
$ref: /schemas/types.yaml#/definitions/uint32
47+
enum: [0, 1, 2, 3]
48+
default: 0
49+
50+
required:
51+
- compatible
52+
- reg
53+
- clocks
54+
- clock-names
55+
56+
unevaluatedProperties: false
57+
58+
examples:
59+
- |
60+
sfc0: spi@fe08d000 {
61+
compatible = "amlogic,a4-spifc";
62+
reg = <0xfe08d000 0x800>;
63+
clocks = <&clkc_periphs 31>,
64+
<&clkc_periphs 102>;
65+
clock-names = "gate", "core";
66+
67+
pinctrl-0 = <&spiflash_default>;
68+
pinctrl-names = "default";
69+
70+
#address-cells = <1>;
71+
#size-cells = <0>;
72+
73+
flash@0 {
74+
compatible = "spi-nand";
75+
reg = <0>;
76+
#address-cells = <1>;
77+
#size-cells = <1>;
78+
nand-ecc-engine = <&sfc0>;
79+
nand-ecc-strength = <8>;
80+
nand-ecc-step-size = <512>;
81+
};
82+
};

0 commit comments

Comments
 (0)