Reset controller updates for v5.19
Add Meson-S4 SoC reset controller support to reset-meson, AST2600 LPC reset controller support to reset-simple, and R9A07G054 USBPHY reset controller support to reset-rzg2l-usbphy-ctrl. Add ACPI _RST support to device_reset(), simplify the uniphier-glue reset driver using bulk API and devres and clean up its dt-bindings docs. Convert most dt-bindings docs from txt to yaml. -----BEGIN PGP SIGNATURE----- iI0EABYIADUWIQRRO6F6WdpH1R0vGibVhaclGDdiwAUCYnFPRRcccC56YWJlbEBw ZW5ndXRyb25peC5kZQAKCRDVhaclGDdiwOdpAP997XLr1A1I78UFSA8PPrGeL2Zy PFjyqq7nd0PXxZfIqQD7B0dkHR8p4oDerjSlKofsZiIw8Drf32E1O+F07gQFGgs= =0BLP -----END PGP SIGNATURE----- gpgsig -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmJzzz0ACgkQmmx57+YA GNnhFA/7B2q3RAO2+TsxBVNXocg2qx4Bp+/GD0mInc/TdRZDmvlgOzFca+YElrOL amBYZITbNvTlFIKaQkVHmg1IMlGFTH4lCE9s41Jv2CbcN6/7+DcIGTYc21o3xj4P hbg3u1Ku9rlOvPrHoFaTrmg+5pgSeqt+sUaRReAOjoEIeb58hDlpDDxp1iXDGpSl eL1Ntjr9A5roERmponXWEWdh4TeI2YM62NGtH/y4d/HI7YDzovYeDgmOEZhqiQAy vICdSRGqqq8Bo+R0e4mQLKfc6SyyImA6jArpNrsmjtrubyUgcUCpytzmJNAknr7u +vnY4PjpaPai57lah1U2FmL+VZRHDlZ6GhCUeC5mYWGpWzQuc3t8VLDcyuCNlYTg xzMO4utZox8rQYVPfqAbJd86pszt0ph8b4gnxnZgpeBx7r816TJVM8nXmEMTY3/H K/6GEepGi6tslUh6X3bxjjqOzkF9z29iBqchOmll6rE+cGBAKmPpubjkSE5WczBN +fmjAmP3HQL7Vb/7qenKnpgU+M8Ypk3Mwlx2Y1bOkjPBoH3YQQ3BSFB0YUrzKdeC bSOM2yuNm9tBQeA8B6poYUmS5aCceLCNc0vov518yJcGxmPXokL45eWE6FCDUryD v8AmnYXtBXJUfiozcYTfsb9puZBDCEMspMP+6B1XyUdMmswErrE= =hOUj -----END PGP SIGNATURE----- Merge tag 'reset-for-v5.19' of git://git.pengutronix.de/pza/linux into arm/drivers Reset controller updates for v5.19 Add Meson-S4 SoC reset controller support to reset-meson, AST2600 LPC reset controller support to reset-simple, and R9A07G054 USBPHY reset controller support to reset-rzg2l-usbphy-ctrl. Add ACPI _RST support to device_reset(), simplify the uniphier-glue reset driver using bulk API and devres and clean up its dt-bindings docs. Convert most dt-bindings docs from txt to yaml. * tag 'reset-for-v5.19' of git://git.pengutronix.de/pza/linux: dt-bindings: reset: st,sti-powerdown: Convert to yaml dt-bindings: reset: st,sti-picophyreset: Convert to yaml dt-bindings: reset: socfpga: Convert to yaml dt-bindings: reset: snps,axs10x-reset: Convert to yaml dt-bindings: reset: nuvoton,npcm-reset: Convert to yaml dt-bindings: reset: lantiq,reset: Convert to yaml dt-bindings: reset: bitmain,bm1880-reset: Convert to yaml dt-bindings: reset: berlin: Convert to yaml dt-bindings: reset: ath79: Convert to yaml dt-bindings: reset: amlogic,meson-axg-audio-arb: Convert to yaml dt-bindings: reset: uniphier-glue: Clean up clocks, resets, and their names using compatible string reset: Kconfig: Make RESET_RZG2L_USBPHY_CTRL depend on ARCH_RZG2L reset: ACPI reset support reset: simple: Add AST2600 compatible reset: reset-meson: add support for the Meson-S4 SoC Reset Controller dt-bindings: reset: add bindings for the Meson-S4 SoC Reset Controller dt-bindings: reset: Add compatible for Meson-S4 Reset Controller reset: uniphier-glue: Use devm_add_action_or_reset() reset: uniphier-glue: Use reset_control_bulk API Link: https://lore.kernel.org/r/20220503160057.46625-1-p.zabel@pengutronix.de Signed-off-by: Arnd Bergmann <arnd@arndb.de>
This commit is contained in:
commit
89c500b1fa
47
Documentation/devicetree/bindings/reset/altr,rst-mgr.yaml
Normal file
47
Documentation/devicetree/bindings/reset/altr,rst-mgr.yaml
Normal file
@ -0,0 +1,47 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/reset/altr,rst-mgr.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Altera SOCFPGA Reset Manager
|
||||
|
||||
maintainers:
|
||||
- Dinh Nguyen <dinguyen@altera.com>
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
oneOf:
|
||||
- description: Cyclone5/Arria5/Arria10
|
||||
const: altr,rst-mgr
|
||||
- description: Stratix10 ARM64 SoC
|
||||
items:
|
||||
- const: altr,stratix10-rst-mgr
|
||||
- const: altr,rst-mgr
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
||||
altr,modrst-offset:
|
||||
$ref: /schemas/types.yaml#/definitions/uint32
|
||||
description: Offset of the first modrst register
|
||||
|
||||
'#reset-cells':
|
||||
const: 1
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- altr,modrst-offset
|
||||
- '#reset-cells'
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
examples:
|
||||
- |
|
||||
rstmgr@ffd05000 {
|
||||
compatible = "altr,rst-mgr";
|
||||
reg = <0xffd05000 0x1000>;
|
||||
altr,modrst-offset = <0x10>;
|
||||
#reset-cells = <1>;
|
||||
};
|
@ -1,22 +0,0 @@
|
||||
* Amlogic audio memory arbiter controller
|
||||
|
||||
The Amlogic Audio ARB is a simple device which enables or
|
||||
disables the access of Audio FIFOs to DDR on AXG based SoC.
|
||||
|
||||
Required properties:
|
||||
- compatible: 'amlogic,meson-axg-audio-arb' or
|
||||
'amlogic,meson-sm1-audio-arb'
|
||||
- reg: physical base address of the controller and length of memory
|
||||
mapped region.
|
||||
- clocks: phandle to the fifo peripheral clock provided by the audio
|
||||
clock controller.
|
||||
- #reset-cells: must be 1.
|
||||
|
||||
Example on the A113 SoC:
|
||||
|
||||
arb: reset-controller@280 {
|
||||
compatible = "amlogic,meson-axg-audio-arb";
|
||||
reg = <0x0 0x280 0x0 0x4>;
|
||||
#reset-cells = <1>;
|
||||
clocks = <&clkc_audio AUD_CLKID_DDR_ARB>;
|
||||
};
|
@ -0,0 +1,56 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
|
||||
# Copyright 2019 BayLibre, SAS
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: "http://devicetree.org/schemas/reset/amlogic,meson-axg-audio-arb.yaml#"
|
||||
$schema: "http://devicetree.org/meta-schemas/core.yaml#"
|
||||
|
||||
title: Amlogic audio memory arbiter controller
|
||||
|
||||
maintainers:
|
||||
- Jerome Brunet <jbrunet@baylibre.com>
|
||||
|
||||
description: The Amlogic Audio ARB is a simple device which enables or disables
|
||||
the access of Audio FIFOs to DDR on AXG based SoC.
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
enum:
|
||||
- amlogic,meson-axg-audio-arb
|
||||
- amlogic,meson-sm1-audio-arb
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
||||
clocks:
|
||||
maxItems: 1
|
||||
description: |
|
||||
phandle to the fifo peripheral clock provided by the audio clock
|
||||
controller.
|
||||
|
||||
"#reset-cells":
|
||||
const: 1
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- clocks
|
||||
- "#reset-cells"
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
examples:
|
||||
- |
|
||||
// on the A113 SoC:
|
||||
#include <dt-bindings/clock/axg-audio-clkc.h>
|
||||
bus {
|
||||
#address-cells = <2>;
|
||||
#size-cells = <2>;
|
||||
|
||||
arb: reset-controller@280 {
|
||||
compatible = "amlogic,meson-axg-audio-arb";
|
||||
reg = <0x0 0x280 0x0 0x4>;
|
||||
#reset-cells = <1>;
|
||||
clocks = <&clkc_audio AUD_CLKID_DDR_ARB>;
|
||||
};
|
||||
};
|
@ -17,6 +17,7 @@ properties:
|
||||
- amlogic,meson-gxbb-reset # Reset Controller on GXBB and compatible SoCs
|
||||
- amlogic,meson-axg-reset # Reset Controller on AXG and compatible SoCs
|
||||
- amlogic,meson-a1-reset # Reset Controller on A1 and compatible SoCs
|
||||
- amlogic,meson-s4-reset # Reset Controller on S4 and compatible SoCs
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
@ -1,20 +0,0 @@
|
||||
Binding for Qualcomm Atheros AR7xxx/AR9XXX reset controller
|
||||
|
||||
Please also refer to reset.txt in this directory for common reset
|
||||
controller binding usage.
|
||||
|
||||
Required Properties:
|
||||
- compatible: has to be "qca,<soctype>-reset", "qca,ar7100-reset"
|
||||
as fallback
|
||||
- reg: Base address and size of the controllers memory area
|
||||
- #reset-cells : Specifies the number of cells needed to encode reset
|
||||
line, should be 1
|
||||
|
||||
Example:
|
||||
|
||||
reset-controller@1806001c {
|
||||
compatible = "qca,ar9132-reset", "qca,ar7100-reset";
|
||||
reg = <0x1806001c 0x4>;
|
||||
|
||||
#reset-cells = <1>;
|
||||
};
|
@ -1,23 +0,0 @@
|
||||
Marvell Berlin reset controller
|
||||
===============================
|
||||
|
||||
Please also refer to reset.txt in this directory for common reset
|
||||
controller binding usage.
|
||||
|
||||
The reset controller node must be a sub-node of the chip controller
|
||||
node on Berlin SoCs.
|
||||
|
||||
Required properties:
|
||||
- compatible: should be "marvell,berlin2-reset"
|
||||
- #reset-cells: must be set to 2
|
||||
|
||||
Example:
|
||||
|
||||
chip_rst: reset {
|
||||
compatible = "marvell,berlin2-reset";
|
||||
#reset-cells = <2>;
|
||||
};
|
||||
|
||||
&usb_phy0 {
|
||||
resets = <&chip_rst 0x104 12>;
|
||||
};
|
@ -1,18 +0,0 @@
|
||||
Bitmain BM1880 SoC Reset Controller
|
||||
===================================
|
||||
|
||||
Please also refer to reset.txt in this directory for common reset
|
||||
controller binding usage.
|
||||
|
||||
Required properties:
|
||||
- compatible: Should be "bitmain,bm1880-reset"
|
||||
- reg: Offset and length of reset controller space in SCTRL.
|
||||
- #reset-cells: Must be 1.
|
||||
|
||||
Example:
|
||||
|
||||
rst: reset-controller@c00 {
|
||||
compatible = "bitmain,bm1880-reset";
|
||||
reg = <0xc00 0x8>;
|
||||
#reset-cells = <1>;
|
||||
};
|
@ -0,0 +1,36 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
|
||||
# Copyright 2019 Manivannan Sadhasivam <mani@kernel.org>
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: "http://devicetree.org/schemas/reset/bitmain,bm1880-reset.yaml#"
|
||||
$schema: "http://devicetree.org/meta-schemas/core.yaml#"
|
||||
|
||||
title: Bitmain BM1880 SoC Reset Controller
|
||||
|
||||
maintainers:
|
||||
- Manivannan Sadhasivam <mani@kernel.org>
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
const: bitmain,bm1880-reset
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
||||
"#reset-cells":
|
||||
const: 1
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- "#reset-cells"
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
examples:
|
||||
- |
|
||||
rst: reset-controller@c00 {
|
||||
compatible = "bitmain,bm1880-reset";
|
||||
reg = <0xc00 0x8>;
|
||||
#reset-cells = <1>;
|
||||
};
|
@ -1,30 +0,0 @@
|
||||
Lantiq XWAY SoC RCU reset controller binding
|
||||
============================================
|
||||
|
||||
This binding describes a reset-controller found on the RCU module on Lantiq
|
||||
XWAY SoCs.
|
||||
|
||||
This node has to be a sub node of the Lantiq RCU block.
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Required properties:
|
||||
- compatible : Should be one of
|
||||
"lantiq,danube-reset"
|
||||
"lantiq,xrx200-reset"
|
||||
- reg : Defines the following sets of registers in the parent
|
||||
syscon device
|
||||
- Offset of the reset set register
|
||||
- Offset of the reset status register
|
||||
- #reset-cells : Specifies the number of cells needed to encode the
|
||||
reset line, should be 2.
|
||||
The first cell takes the reset set bit and the
|
||||
second cell takes the status bit.
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Example for the reset-controllers on the xRX200 SoCs:
|
||||
reset0: reset-controller@10 {
|
||||
compatible = "lantiq,xrx200-reset";
|
||||
reg <0x10 0x04>, <0x14 0x04>;
|
||||
|
||||
#reset-cells = <2>;
|
||||
};
|
49
Documentation/devicetree/bindings/reset/lantiq,reset.yaml
Normal file
49
Documentation/devicetree/bindings/reset/lantiq,reset.yaml
Normal file
@ -0,0 +1,49 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/reset/lantiq,reset.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Lantiq XWAY SoC RCU reset controller
|
||||
|
||||
maintainers:
|
||||
- Martin Blumenstingl <martin.blumenstingl@googlemail.com>
|
||||
|
||||
description: |
|
||||
This binding describes a reset-controller found on the RCU module on Lantiq
|
||||
XWAY SoCs. This node has to be a sub node of the Lantiq RCU block.
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
enum:
|
||||
- lantiq,danube-reset
|
||||
- lantiq,xrx200-reset
|
||||
|
||||
reg:
|
||||
description: |
|
||||
Defines the following sets of registers in the parent syscon device
|
||||
Offset of the reset set register
|
||||
Offset of the reset status register
|
||||
maxItems: 2
|
||||
|
||||
'#reset-cells':
|
||||
description: |
|
||||
The first cell takes the reset set bit and the second cell takes the
|
||||
status bit.
|
||||
const: 2
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- '#reset-cells'
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
examples:
|
||||
- |
|
||||
// On the xRX200 SoCs:
|
||||
reset0: reset-controller@10 {
|
||||
compatible = "lantiq,xrx200-reset";
|
||||
reg = <0x10 0x04>, <0x14 0x04>;
|
||||
#reset-cells = <2>;
|
||||
};
|
@ -0,0 +1,38 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
|
||||
# Copyright 2015 Antoine Tenart <atenart@kernel.org>
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: "http://devicetree.org/schemas/reset/marvell,berlin2-reset.yaml#"
|
||||
$schema: "http://devicetree.org/meta-schemas/core.yaml#"
|
||||
|
||||
title: Marvell Berlin reset controller
|
||||
|
||||
maintainers:
|
||||
- Antoine Tenart <atenart@kernel.org>
|
||||
|
||||
description: The reset controller node must be a sub-node of the chip
|
||||
controller node on Berlin SoCs.
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
const: marvell,berlin2-reset
|
||||
|
||||
"#reset-cells":
|
||||
const: 2
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- "#reset-cells"
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
examples:
|
||||
- |
|
||||
chip: chip-control@ea0000 {
|
||||
reg = <0xea0000 0x400>;
|
||||
|
||||
chip_rst: reset {
|
||||
compatible = "marvell,berlin2-reset";
|
||||
#reset-cells = <2>;
|
||||
};
|
||||
};
|
@ -1,32 +0,0 @@
|
||||
Nuvoton NPCM Reset controller
|
||||
|
||||
Required properties:
|
||||
- compatible : "nuvoton,npcm750-reset" for NPCM7XX BMC
|
||||
- reg : specifies physical base address and size of the register.
|
||||
- #reset-cells: must be set to 2
|
||||
|
||||
Optional property:
|
||||
- nuvoton,sw-reset-number - Contains the software reset number to restart the SoC.
|
||||
NPCM7xx contain four software reset that represent numbers 1 to 4.
|
||||
|
||||
If 'nuvoton,sw-reset-number' is not specified software reset is disabled.
|
||||
|
||||
Example:
|
||||
rstc: rstc@f0801000 {
|
||||
compatible = "nuvoton,npcm750-reset";
|
||||
reg = <0xf0801000 0x70>;
|
||||
#reset-cells = <2>;
|
||||
nuvoton,sw-reset-number = <2>;
|
||||
};
|
||||
|
||||
Specifying reset lines connected to IP NPCM7XX modules
|
||||
======================================================
|
||||
example:
|
||||
|
||||
spi0: spi@..... {
|
||||
...
|
||||
resets = <&rstc NPCM7XX_RESET_IPSRST2 NPCM7XX_RESET_PSPI1>;
|
||||
...
|
||||
};
|
||||
|
||||
The index could be found in <dt-bindings/reset/nuvoton,npcm7xx-reset.h>.
|
@ -0,0 +1,50 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/reset/nuvoton,npcm750-reset.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Nuvoton NPCM Reset controller
|
||||
|
||||
maintainers:
|
||||
- Tomer Maimon <tmaimon77@gmail.com>
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
const: nuvoton,npcm750-reset
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
||||
'#reset-cells':
|
||||
const: 2
|
||||
|
||||
nuvoton,sw-reset-number:
|
||||
$ref: /schemas/types.yaml#/definitions/uint32
|
||||
minimum: 1
|
||||
maximum: 4
|
||||
description: |
|
||||
Contains the software reset number to restart the SoC.
|
||||
If not specified, software reset is disabled.
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- '#reset-cells'
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
examples:
|
||||
- |
|
||||
#include <dt-bindings/reset/nuvoton,npcm7xx-reset.h>
|
||||
rstc: rstc@f0801000 {
|
||||
compatible = "nuvoton,npcm750-reset";
|
||||
reg = <0xf0801000 0x70>;
|
||||
#reset-cells = <2>;
|
||||
nuvoton,sw-reset-number = <2>;
|
||||
};
|
||||
|
||||
// Specifying reset lines connected to IP NPCM7XX modules
|
||||
spi0: spi {
|
||||
resets = <&rstc NPCM7XX_RESET_IPSRST2 NPCM7XX_RESET_PSPI1>;
|
||||
};
|
@ -0,0 +1,40 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
|
||||
# Copyright 2015 Alban Bedel <albeu@free.fr>
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: "http://devicetree.org/schemas/reset/qca,ar7100-reset.yaml#"
|
||||
$schema: "http://devicetree.org/meta-schemas/core.yaml#"
|
||||
|
||||
title: Qualcomm Atheros AR7xxx/AR9XXX reset controller
|
||||
|
||||
maintainers:
|
||||
- Alban Bedel <albeu@free.fr>
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
items:
|
||||
- enum:
|
||||
- qca,ar9132-reset
|
||||
- qca,ar9331-reset
|
||||
- const: qca,ar7100-reset
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
||||
"#reset-cells":
|
||||
const: 1
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- "#reset-cells"
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
examples:
|
||||
- |
|
||||
reset-controller@1806001c {
|
||||
compatible = "qca,ar9132-reset", "qca,ar7100-reset";
|
||||
reg = <0x1806001c 0x4>;
|
||||
#reset-cells = <1>;
|
||||
};
|
@ -1,33 +0,0 @@
|
||||
Binding for the AXS10x reset controller
|
||||
|
||||
This binding describes the ARC AXS10x boards custom IP-block which allows
|
||||
to control reset signals of selected peripherals. For example DW GMAC, etc...
|
||||
This block is controlled via memory-mapped register (AKA CREG) which
|
||||
represents up-to 32 reset lines.
|
||||
|
||||
As of today only the following lines are used:
|
||||
- DW GMAC - line 5
|
||||
|
||||
This binding uses the common reset binding[1].
|
||||
|
||||
[1] Documentation/devicetree/bindings/reset/reset.txt
|
||||
|
||||
Required properties:
|
||||
- compatible: should be "snps,axs10x-reset".
|
||||
- reg: should always contain pair address - length: for creg reset
|
||||
bits register.
|
||||
- #reset-cells: from common reset binding; Should always be set to 1.
|
||||
|
||||
Example:
|
||||
reset: reset-controller@11220 {
|
||||
compatible = "snps,axs10x-reset";
|
||||
#reset-cells = <1>;
|
||||
reg = <0x11220 0x4>;
|
||||
};
|
||||
|
||||
Specifying reset lines connected to IP modules:
|
||||
ethernet@.... {
|
||||
....
|
||||
resets = <&reset 5>;
|
||||
....
|
||||
};
|
@ -0,0 +1,48 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/reset/snps,axs10x-reset.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: AXS10x reset controller
|
||||
|
||||
maintainers:
|
||||
- Eugeniy Paltsev <Eugeniy.Paltsev@synopsys.com>
|
||||
|
||||
description: |
|
||||
This binding describes the ARC AXS10x boards custom IP-block which allows
|
||||
to control reset signals of selected peripherals. For example DW GMAC, etc...
|
||||
This block is controlled via memory-mapped register (AKA CREG) which
|
||||
represents up-to 32 reset lines.
|
||||
As of today only the following lines are used:
|
||||
- DW GMAC - line 5
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
const: snps,axs10x-reset
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
||||
'#reset-cells':
|
||||
const: 1
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- '#reset-cells'
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
examples:
|
||||
- |
|
||||
reset: reset-controller@11220 {
|
||||
compatible = "snps,axs10x-reset";
|
||||
#reset-cells = <1>;
|
||||
reg = <0x11220 0x4>;
|
||||
};
|
||||
|
||||
// Specifying reset lines connected to IP modules:
|
||||
ethernet {
|
||||
resets = <&reset 5>;
|
||||
};
|
@ -1,16 +0,0 @@
|
||||
Altera SOCFPGA Reset Manager
|
||||
|
||||
Required properties:
|
||||
- compatible : "altr,rst-mgr" for (Cyclone5/Arria5/Arria10)
|
||||
"altr,stratix10-rst-mgr","altr,rst-mgr" for Stratix10 ARM64 SoC
|
||||
- reg : Should contain 1 register ranges(address and length)
|
||||
- altr,modrst-offset : Should contain the offset of the first modrst register.
|
||||
- #reset-cells: 1
|
||||
|
||||
Example:
|
||||
rstmgr@ffd05000 {
|
||||
#reset-cells = <1>;
|
||||
compatible = "altr,rst-mgr";
|
||||
reg = <0xffd05000 0x1000>;
|
||||
altr,modrst-offset = <0x10>;
|
||||
};
|
@ -38,25 +38,49 @@ properties:
|
||||
minItems: 1
|
||||
maxItems: 2
|
||||
|
||||
clock-names:
|
||||
oneOf:
|
||||
- items: # for Pro4, Pro5
|
||||
- const: gio
|
||||
- const: link
|
||||
- items: # for others
|
||||
- const: link
|
||||
clock-names: true
|
||||
|
||||
resets:
|
||||
minItems: 1
|
||||
maxItems: 2
|
||||
|
||||
reset-names:
|
||||
oneOf:
|
||||
- items: # for Pro4, Pro5
|
||||
- const: gio
|
||||
- const: link
|
||||
- items: # for others
|
||||
- const: link
|
||||
reset-names: true
|
||||
|
||||
allOf:
|
||||
- if:
|
||||
properties:
|
||||
compatible:
|
||||
contains:
|
||||
enum:
|
||||
- socionext,uniphier-pro4-usb3-reset
|
||||
- socionext,uniphier-pro5-usb3-reset
|
||||
- socionext,uniphier-pro4-ahci-reset
|
||||
then:
|
||||
properties:
|
||||
clocks:
|
||||
minItems: 2
|
||||
maxItems: 2
|
||||
clock-names:
|
||||
items:
|
||||
- const: gio
|
||||
- const: link
|
||||
resets:
|
||||
minItems: 2
|
||||
maxItems: 2
|
||||
reset-names:
|
||||
items:
|
||||
- const: gio
|
||||
- const: link
|
||||
else:
|
||||
properties:
|
||||
clocks:
|
||||
maxItems: 1
|
||||
clock-names:
|
||||
const: link
|
||||
resets:
|
||||
maxItems: 1
|
||||
reset-names:
|
||||
const: link
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
|
@ -1,42 +0,0 @@
|
||||
STMicroelectronics STi family Sysconfig Picophy SoftReset Controller
|
||||
=============================================================================
|
||||
|
||||
This binding describes a reset controller device that is used to enable and
|
||||
disable on-chip PicoPHY USB2 phy(s) using "softreset" control bits found in
|
||||
the STi family SoC system configuration registers.
|
||||
|
||||
The actual action taken when softreset is asserted is hardware dependent.
|
||||
However, when asserted it may not be possible to access the hardware's
|
||||
registers and after an assert/deassert sequence the hardware's previous state
|
||||
may no longer be valid.
|
||||
|
||||
Please refer to Documentation/devicetree/bindings/reset/reset.txt
|
||||
for common reset controller binding usage.
|
||||
|
||||
Required properties:
|
||||
- compatible: Should be "st,stih407-picophyreset"
|
||||
- #reset-cells: 1, see below
|
||||
|
||||
Example:
|
||||
|
||||
picophyreset: picophyreset-controller {
|
||||
compatible = "st,stih407-picophyreset";
|
||||
#reset-cells = <1>;
|
||||
};
|
||||
|
||||
Specifying picophyreset control of devices
|
||||
=======================================
|
||||
|
||||
Device nodes should specify the reset channel required in their "resets"
|
||||
property, containing a phandle to the picophyreset device node and an
|
||||
index specifying which channel to use, as described in
|
||||
Documentation/devicetree/bindings/reset/reset.txt.
|
||||
|
||||
Example:
|
||||
|
||||
usb2_picophy0: usbpicophy@0 {
|
||||
resets = <&picophyreset STIH407_PICOPHY0_RESET>;
|
||||
};
|
||||
|
||||
Macro definitions for the supported reset channels can be found in:
|
||||
include/dt-bindings/reset/stih407-resets.h
|
@ -1,45 +0,0 @@
|
||||
STMicroelectronics STi family Sysconfig Peripheral Powerdown Reset Controller
|
||||
=============================================================================
|
||||
|
||||
This binding describes a reset controller device that is used to enable and
|
||||
disable on-chip peripheral controllers such as USB and SATA, using
|
||||
"powerdown" control bits found in the STi family SoC system configuration
|
||||
registers. These have been grouped together into a single reset controller
|
||||
device for convenience.
|
||||
|
||||
The actual action taken when powerdown is asserted is hardware dependent.
|
||||
However, when asserted it may not be possible to access the hardware's
|
||||
registers and after an assert/deassert sequence the hardware's previous state
|
||||
may no longer be valid.
|
||||
|
||||
Please refer to reset.txt in this directory for common reset
|
||||
controller binding usage.
|
||||
|
||||
Required properties:
|
||||
- compatible: Should be "st,stih407-powerdown"
|
||||
- #reset-cells: 1, see below
|
||||
|
||||
example:
|
||||
|
||||
powerdown: powerdown-controller {
|
||||
compatible = "st,stih407-powerdown";
|
||||
#reset-cells = <1>;
|
||||
};
|
||||
|
||||
|
||||
Specifying powerdown control of devices
|
||||
=======================================
|
||||
|
||||
Device nodes should specify the reset channel required in their "resets"
|
||||
property, containing a phandle to the powerdown device node and an
|
||||
index specifying which channel to use, as described in reset.txt
|
||||
|
||||
example:
|
||||
|
||||
st_dwc3: dwc3@8f94000 {
|
||||
resets = <&powerdown STIH407_USB3_POWERDOWN>,
|
||||
};
|
||||
|
||||
Macro definitions for the supported reset channels can be found in:
|
||||
|
||||
include/dt-bindings/reset/stih407-resets.h
|
@ -0,0 +1,47 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/reset/st,stih407-picophyreset.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: STMicroelectronics STi family Sysconfig Picophy SoftReset Controller
|
||||
|
||||
maintainers:
|
||||
- Peter Griffin <peter.griffin@linaro.org>
|
||||
|
||||
description: |
|
||||
This binding describes a reset controller device that is used to enable and
|
||||
disable on-chip PicoPHY USB2 phy(s) using "softreset" control bits found in
|
||||
the STi family SoC system configuration registers.
|
||||
|
||||
The actual action taken when softreset is asserted is hardware dependent.
|
||||
However, when asserted it may not be possible to access the hardware's
|
||||
registers and after an assert/deassert sequence the hardware's previous state
|
||||
may no longer be valid.
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
const: st,stih407-picophyreset
|
||||
|
||||
'#reset-cells':
|
||||
const: 1
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- '#reset-cells'
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
examples:
|
||||
- |
|
||||
#include <dt-bindings/reset/stih407-resets.h>
|
||||
|
||||
picophyreset: picophyreset-controller {
|
||||
compatible = "st,stih407-picophyreset";
|
||||
#reset-cells = <1>;
|
||||
};
|
||||
|
||||
// Specifying picophyreset control of devices
|
||||
usb2_picophy0: usbpicophy {
|
||||
resets = <&picophyreset STIH407_PICOPHY0_RESET>;
|
||||
};
|
@ -0,0 +1,49 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/reset/st,stih407-powerdown.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: STMicroelectronics STi family Sysconfig Peripheral Powerdown Reset Controller
|
||||
|
||||
maintainers:
|
||||
- Srinivas Kandagatla <srinivas.kandagatla@st.com>
|
||||
|
||||
description: |
|
||||
This binding describes a reset controller device that is used to enable and
|
||||
disable on-chip peripheral controllers such as USB and SATA, using
|
||||
"powerdown" control bits found in the STi family SoC system configuration
|
||||
registers. These have been grouped together into a single reset controller
|
||||
device for convenience.
|
||||
|
||||
The actual action taken when powerdown is asserted is hardware dependent.
|
||||
However, when asserted it may not be possible to access the hardware's
|
||||
registers and after an assert/deassert sequence the hardware's previous state
|
||||
may no longer be valid.
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
const: st,stih407-powerdown
|
||||
|
||||
'#reset-cells':
|
||||
const: 1
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- '#reset-cells'
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
examples:
|
||||
- |
|
||||
#include <dt-bindings/reset/stih407-resets.h>
|
||||
|
||||
powerdown: powerdown-controller {
|
||||
compatible = "st,stih407-powerdown";
|
||||
#reset-cells = <1>;
|
||||
};
|
||||
|
||||
// Specifying powerdown control of devices:
|
||||
st_dwc3: dwc3 {
|
||||
resets = <&powerdown STIH407_USB3_POWERDOWN>;
|
||||
};
|
@ -183,7 +183,7 @@ config RESET_RASPBERRYPI
|
||||
|
||||
config RESET_RZG2L_USBPHY_CTRL
|
||||
tristate "Renesas RZ/G2L USBPHY control driver"
|
||||
depends on ARCH_R9A07G044 || COMPILE_TEST
|
||||
depends on ARCH_RZG2L || COMPILE_TEST
|
||||
help
|
||||
Support for USBPHY Control found on RZ/G2L family. It mainly
|
||||
controls reset and power down of the USB/PHY.
|
||||
|
@ -12,6 +12,7 @@
|
||||
#include <linux/kref.h>
|
||||
#include <linux/module.h>
|
||||
#include <linux/of.h>
|
||||
#include <linux/acpi.h>
|
||||
#include <linux/reset.h>
|
||||
#include <linux/reset-controller.h>
|
||||
#include <linux/slab.h>
|
||||
@ -1100,13 +1101,25 @@ EXPORT_SYMBOL_GPL(__devm_reset_control_bulk_get);
|
||||
*
|
||||
* Convenience wrapper for __reset_control_get() and reset_control_reset().
|
||||
* This is useful for the common case of devices with single, dedicated reset
|
||||
* lines.
|
||||
* lines. _RST firmware method will be called for devices with ACPI.
|
||||
*/
|
||||
int __device_reset(struct device *dev, bool optional)
|
||||
{
|
||||
struct reset_control *rstc;
|
||||
int ret;
|
||||
|
||||
#ifdef CONFIG_ACPI
|
||||
acpi_handle handle = ACPI_HANDLE(dev);
|
||||
|
||||
if (handle) {
|
||||
if (!acpi_has_method(handle, "_RST"))
|
||||
return optional ? 0 : -ENOENT;
|
||||
if (ACPI_FAILURE(acpi_evaluate_object(handle, "_RST", NULL,
|
||||
NULL)))
|
||||
return -EIO;
|
||||
}
|
||||
#endif
|
||||
|
||||
rstc = __reset_control_get(dev, NULL, 0, 0, optional, true);
|
||||
if (IS_ERR(rstc))
|
||||
return PTR_ERR(rstc);
|
||||
|
@ -98,11 +98,17 @@ static const struct meson_reset_param meson_a1_param = {
|
||||
.level_offset = 0x40,
|
||||
};
|
||||
|
||||
static const struct meson_reset_param meson_s4_param = {
|
||||
.reg_count = 6,
|
||||
.level_offset = 0x40,
|
||||
};
|
||||
|
||||
static const struct of_device_id meson_reset_dt_ids[] = {
|
||||
{ .compatible = "amlogic,meson8b-reset", .data = &meson8b_param},
|
||||
{ .compatible = "amlogic,meson-gxbb-reset", .data = &meson8b_param},
|
||||
{ .compatible = "amlogic,meson-axg-reset", .data = &meson8b_param},
|
||||
{ .compatible = "amlogic,meson-a1-reset", .data = &meson_a1_param},
|
||||
{ .compatible = "amlogic,meson-s4-reset", .data = &meson_s4_param},
|
||||
{ /* sentinel */ },
|
||||
};
|
||||
MODULE_DEVICE_TABLE(of, meson_reset_dt_ids);
|
||||
|
@ -144,6 +144,7 @@ static const struct of_device_id reset_simple_dt_ids[] = {
|
||||
.data = &reset_simple_active_low },
|
||||
{ .compatible = "aspeed,ast2400-lpc-reset" },
|
||||
{ .compatible = "aspeed,ast2500-lpc-reset" },
|
||||
{ .compatible = "aspeed,ast2600-lpc-reset" },
|
||||
{ .compatible = "bitmain,bm1880-reset",
|
||||
.data = &reset_simple_active_low },
|
||||
{ .compatible = "brcm,bcm4908-misc-pcie-reset",
|
||||
|
@ -23,19 +23,32 @@ struct uniphier_glue_reset_soc_data {
|
||||
|
||||
struct uniphier_glue_reset_priv {
|
||||
struct clk_bulk_data clk[MAX_CLKS];
|
||||
struct reset_control *rst[MAX_RSTS];
|
||||
struct reset_control_bulk_data rst[MAX_RSTS];
|
||||
struct reset_simple_data rdata;
|
||||
const struct uniphier_glue_reset_soc_data *data;
|
||||
};
|
||||
|
||||
static void uniphier_clk_disable(void *_priv)
|
||||
{
|
||||
struct uniphier_glue_reset_priv *priv = _priv;
|
||||
|
||||
clk_bulk_disable_unprepare(priv->data->nclks, priv->clk);
|
||||
}
|
||||
|
||||
static void uniphier_rst_assert(void *_priv)
|
||||
{
|
||||
struct uniphier_glue_reset_priv *priv = _priv;
|
||||
|
||||
reset_control_bulk_assert(priv->data->nrsts, priv->rst);
|
||||
}
|
||||
|
||||
static int uniphier_glue_reset_probe(struct platform_device *pdev)
|
||||
{
|
||||
struct device *dev = &pdev->dev;
|
||||
struct uniphier_glue_reset_priv *priv;
|
||||
struct resource *res;
|
||||
resource_size_t size;
|
||||
const char *name;
|
||||
int i, ret, nr;
|
||||
int i, ret;
|
||||
|
||||
priv = devm_kzalloc(dev, sizeof(*priv), GFP_KERNEL);
|
||||
if (!priv)
|
||||
@ -58,22 +71,28 @@ static int uniphier_glue_reset_probe(struct platform_device *pdev)
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
for (i = 0; i < priv->data->nrsts; i++) {
|
||||
name = priv->data->reset_names[i];
|
||||
priv->rst[i] = devm_reset_control_get_shared(dev, name);
|
||||
if (IS_ERR(priv->rst[i]))
|
||||
return PTR_ERR(priv->rst[i]);
|
||||
}
|
||||
for (i = 0; i < priv->data->nrsts; i++)
|
||||
priv->rst[i].id = priv->data->reset_names[i];
|
||||
ret = devm_reset_control_bulk_get_shared(dev, priv->data->nrsts,
|
||||
priv->rst);
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
ret = clk_bulk_prepare_enable(priv->data->nclks, priv->clk);
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
for (nr = 0; nr < priv->data->nrsts; nr++) {
|
||||
ret = reset_control_deassert(priv->rst[nr]);
|
||||
if (ret)
|
||||
goto out_rst_assert;
|
||||
}
|
||||
ret = devm_add_action_or_reset(dev, uniphier_clk_disable, priv);
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
ret = reset_control_bulk_deassert(priv->data->nrsts, priv->rst);
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
ret = devm_add_action_or_reset(dev, uniphier_rst_assert, priv);
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
spin_lock_init(&priv->rdata.lock);
|
||||
priv->rdata.rcdev.owner = THIS_MODULE;
|
||||
@ -84,32 +103,7 @@ static int uniphier_glue_reset_probe(struct platform_device *pdev)
|
||||
|
||||
platform_set_drvdata(pdev, priv);
|
||||
|
||||
ret = devm_reset_controller_register(dev, &priv->rdata.rcdev);
|
||||
if (ret)
|
||||
goto out_rst_assert;
|
||||
|
||||
return 0;
|
||||
|
||||
out_rst_assert:
|
||||
while (nr--)
|
||||
reset_control_assert(priv->rst[nr]);
|
||||
|
||||
clk_bulk_disable_unprepare(priv->data->nclks, priv->clk);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
static int uniphier_glue_reset_remove(struct platform_device *pdev)
|
||||
{
|
||||
struct uniphier_glue_reset_priv *priv = platform_get_drvdata(pdev);
|
||||
int i;
|
||||
|
||||
for (i = 0; i < priv->data->nrsts; i++)
|
||||
reset_control_assert(priv->rst[i]);
|
||||
|
||||
clk_bulk_disable_unprepare(priv->data->nclks, priv->clk);
|
||||
|
||||
return 0;
|
||||
return devm_reset_controller_register(dev, &priv->rdata.rcdev);
|
||||
}
|
||||
|
||||
static const char * const uniphier_pro4_clock_reset_names[] = {
|
||||
@ -177,7 +171,6 @@ MODULE_DEVICE_TABLE(of, uniphier_glue_reset_match);
|
||||
|
||||
static struct platform_driver uniphier_glue_reset_driver = {
|
||||
.probe = uniphier_glue_reset_probe,
|
||||
.remove = uniphier_glue_reset_remove,
|
||||
.driver = {
|
||||
.name = "uniphier-glue-reset",
|
||||
.of_match_table = uniphier_glue_reset_match,
|
||||
|
125
include/dt-bindings/reset/amlogic,meson-s4-reset.h
Normal file
125
include/dt-bindings/reset/amlogic,meson-s4-reset.h
Normal file
@ -0,0 +1,125 @@
|
||||
/* SPDX-License-Identifier: (GPL-2.0+ OR MIT) */
|
||||
/*
|
||||
* Copyright (c) 2021 Amlogic, Inc. All rights reserved.
|
||||
* Author: Zelong Dong <zelong.dong@amlogic.com>
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef _DT_BINDINGS_AMLOGIC_MESON_S4_RESET_H
|
||||
#define _DT_BINDINGS_AMLOGIC_MESON_S4_RESET_H
|
||||
|
||||
/* RESET0 */
|
||||
#define RESET_USB_DDR0 0
|
||||
#define RESET_USB_DDR1 1
|
||||
#define RESET_USB_DDR2 2
|
||||
#define RESET_USB_DDR3 3
|
||||
#define RESET_USBCTRL 4
|
||||
/* 5-7 */
|
||||
#define RESET_USBPHY20 8
|
||||
#define RESET_USBPHY21 9
|
||||
/* 10-15 */
|
||||
#define RESET_HDMITX_APB 16
|
||||
#define RESET_BRG_VCBUS_DEC 17
|
||||
#define RESET_VCBUS 18
|
||||
#define RESET_VID_PLL_DIV 19
|
||||
#define RESET_VDI6 20
|
||||
#define RESET_GE2D 21
|
||||
#define RESET_HDMITXPHY 22
|
||||
#define RESET_VID_LOCK 23
|
||||
#define RESET_VENCL 24
|
||||
#define RESET_VDAC 25
|
||||
#define RESET_VENCP 26
|
||||
#define RESET_VENCI 27
|
||||
#define RESET_RDMA 28
|
||||
#define RESET_HDMI_TX 29
|
||||
#define RESET_VIU 30
|
||||
#define RESET_VENC 31
|
||||
|
||||
/* RESET1 */
|
||||
#define RESET_AUDIO 32
|
||||
#define RESET_MALI_APB 33
|
||||
#define RESET_MALI 34
|
||||
#define RESET_DDR_APB 35
|
||||
#define RESET_DDR 36
|
||||
#define RESET_DOS_APB 37
|
||||
#define RESET_DOS 38
|
||||
/* 39-47 */
|
||||
#define RESET_ETH 48
|
||||
/* 49-51 */
|
||||
#define RESET_DEMOD 52
|
||||
/* 53-63 */
|
||||
|
||||
/* RESET2 */
|
||||
#define RESET_ABUS_ARB 64
|
||||
#define RESET_IR_CTRL 65
|
||||
#define RESET_TEMPSENSOR_DDR 66
|
||||
#define RESET_TEMPSENSOR_PLL 67
|
||||
/* 68-71 */
|
||||
#define RESET_SMART_CARD 72
|
||||
#define RESET_SPICC0 73
|
||||
/* 74 */
|
||||
#define RESET_RSA 75
|
||||
/* 76-79 */
|
||||
#define RESET_MSR_CLK 80
|
||||
#define RESET_SPIFC 81
|
||||
#define RESET_SARADC 82
|
||||
/* 83-87 */
|
||||
#define RESET_ACODEC 88
|
||||
#define RESET_CEC 89
|
||||
#define RESET_AFIFO 90
|
||||
#define RESET_WATCHDOG 91
|
||||
/* 92-95 */
|
||||
|
||||
/* RESET3 */
|
||||
/* 96-127 */
|
||||
|
||||
/* RESET4 */
|
||||
/* 128-131 */
|
||||
#define RESET_PWM_AB 132
|
||||
#define RESET_PWM_CD 133
|
||||
#define RESET_PWM_EF 134
|
||||
#define RESET_PWM_GH 135
|
||||
#define RESET_PWM_IJ 136
|
||||
/* 137 */
|
||||
#define RESET_UART_A 138
|
||||
#define RESET_UART_B 139
|
||||
#define RESET_UART_C 140
|
||||
#define RESET_UART_D 141
|
||||
#define RESET_UART_E 142
|
||||
/* 143 */
|
||||
#define RESET_I2C_S_A 144
|
||||
#define RESET_I2C_M_A 145
|
||||
#define RESET_I2C_M_B 146
|
||||
#define RESET_I2C_M_C 147
|
||||
#define RESET_I2C_M_D 148
|
||||
#define RESET_I2C_M_E 149
|
||||
/* 150-151 */
|
||||
#define RESET_SD_EMMC_A 152
|
||||
#define RESET_SD_EMMC_B 153
|
||||
#define RESET_NAND_EMMC 154
|
||||
/* 155-159 */
|
||||
|
||||
/* RESET5 */
|
||||
#define RESET_BRG_VDEC_PIPL0 160
|
||||
#define RESET_BRG_HEVCF_PIPL0 161
|
||||
/* 162 */
|
||||
#define RESET_BRG_HCODEC_PIPL0 163
|
||||
#define RESET_BRG_GE2D_PIPL0 164
|
||||
#define RESET_BRG_VPU_PIPL0 165
|
||||
#define RESET_BRG_CPU_PIPL0 166
|
||||
#define RESET_BRG_MALI_PIPL0 167
|
||||
/* 168 */
|
||||
#define RESET_BRG_MALI_PIPL1 169
|
||||
/* 170-171 */
|
||||
#define RESET_BRG_HEVCF_PIPL1 172
|
||||
#define RESET_BRG_HEVCB_PIPL1 173
|
||||
/* 174-183 */
|
||||
#define RESET_RAMA 184
|
||||
/* 185-186 */
|
||||
#define RESET_BRG_NIC_VAPB 187
|
||||
#define RESET_BRG_NIC_DSU 188
|
||||
#define RESET_BRG_NIC_SYSCLK 189
|
||||
#define RESET_BRG_NIC_MAIN 190
|
||||
#define RESET_BRG_NIC_ALL 191
|
||||
|
||||
#endif
|
Loading…
Reference in New Issue
Block a user