mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/chenhuacai/linux-loongson
synced 2025-08-30 13:03:01 +00:00

Convert qca,qca7000.txt yaml format. Additional changes: - add refs: spi-peripheral-props.yaml, serial-peripheral-props.yaml and ethernet-controller.yaml. - simple spi and uart node name. - use low case for mac address in examples. - add check reg choose spi-peripheral-props.yaml or spi-peripheral-props.yaml. Reviewed-by: Jacob Keller <jacob.e.keller@intel.com> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Signed-off-by: Frank Li <Frank.Li@nxp.com> Link: https://patch.msgid.link/20250618184417.2169745-1-Frank.Li@nxp.com Signed-off-by: Jakub Kicinski <kuba@kernel.org>
110 lines
2.6 KiB
YAML
110 lines
2.6 KiB
YAML
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
|
%YAML 1.2
|
|
---
|
|
$id: http://devicetree.org/schemas/net/qca,qca7000.yaml#
|
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
|
|
|
title: Qualcomm QCA7000
|
|
|
|
maintainers:
|
|
- Frank Li <Frank.Li@nxp.com>
|
|
|
|
description: |
|
|
The QCA7000 is a serial-to-powerline bridge with a host interface which could
|
|
be configured either as SPI or UART slave. This configuration is done by
|
|
the QCA7000 firmware.
|
|
|
|
(a) Ethernet over SPI
|
|
|
|
In order to use the QCA7000 as SPI device it must be defined as a child of a
|
|
SPI master in the device tree.
|
|
|
|
(b) Ethernet over UART
|
|
|
|
In order to use the QCA7000 as UART slave it must be defined as a child of a
|
|
UART master in the device tree. It is possible to preconfigure the UART
|
|
settings of the QCA7000 firmware, but it's not possible to change them during
|
|
runtime
|
|
|
|
properties:
|
|
compatible:
|
|
const: qca,qca7000
|
|
|
|
reg:
|
|
maxItems: 1
|
|
|
|
interrupts:
|
|
maxItems: 1
|
|
|
|
qca,legacy-mode:
|
|
$ref: /schemas/types.yaml#/definitions/flag
|
|
description:
|
|
Set the SPI data transfer of the QCA7000 to legacy mode.
|
|
In this mode the SPI master must toggle the chip select
|
|
between each data word. In burst mode these gaps aren't
|
|
necessary, which is faster. This setting depends on how
|
|
the QCA7000 is setup via GPIO pin strapping. If the
|
|
property is missing the driver defaults to burst mode.
|
|
|
|
allOf:
|
|
- $ref: ethernet-controller.yaml#
|
|
|
|
- if:
|
|
required:
|
|
- reg
|
|
|
|
then:
|
|
properties:
|
|
spi-cpha: true
|
|
|
|
spi-cpol: true
|
|
|
|
spi-max-frequency:
|
|
default: 8000000
|
|
maximum: 16000000
|
|
minimum: 1000000
|
|
|
|
allOf:
|
|
- $ref: /schemas/spi/spi-peripheral-props.yaml#
|
|
|
|
else:
|
|
properties:
|
|
current-speed:
|
|
default: 115200
|
|
|
|
qca,legacy-mode: false
|
|
|
|
allOf:
|
|
- $ref: /schemas/serial/serial-peripheral-props.yaml#
|
|
|
|
unevaluatedProperties: false
|
|
|
|
examples:
|
|
- |
|
|
#include <dt-bindings/interrupt-controller/irq.h>
|
|
|
|
spi {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
|
|
ethernet@0 {
|
|
compatible = "qca,qca7000";
|
|
reg = <0x0>;
|
|
interrupt-parent = <&gpio3>;
|
|
interrupts = <25 IRQ_TYPE_EDGE_RISING>;
|
|
spi-cpha;
|
|
spi-cpol;
|
|
spi-max-frequency = <8000000>;
|
|
local-mac-address = [ a0 b0 c0 d0 e0 f0 ];
|
|
};
|
|
};
|
|
|
|
- |
|
|
serial {
|
|
ethernet {
|
|
compatible = "qca,qca7000";
|
|
local-mac-address = [ a0 b0 c0 d0 e0 f0 ];
|
|
current-speed = <38400>;
|
|
};
|
|
};
|