Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
159 commits
Select commit Hold shift + click to select a range
0f75706
ADRV906x v0.0.11
woodrowbarlow Mar 19, 2024
02cc1fb
ADRV906x v0.1.0
woodrowbarlow Jul 26, 2024
4d6294e
Post-release updates
woodrowbarlow Aug 7, 2024
e5d3ac7
TPGSWE-17695: Make adjustments to reserved DDR region
bneely-adi Aug 8, 2024
3f0e2ec
TPGSWE-14540: Enable OP-TEE based Random Number Generator support
EduardoGrande Jul 30, 2024
2fd5345
TPGSWE-17695: Resolve name conflicts between the kernel module and so…
slawomirkulig-analog Aug 12, 2024
e19f82a
TPGSWE-16012 : Integrate NDMA loopback test into driver selftest
Jul 31, 2024
e889782
TPGSWE-14521: Rename ToD UIO
kimholdt-analog Aug 19, 2024
1160ace
TPGSWE-18132: Ethernet recovered clock signal divider setting fix
XinXuAnalog Aug 21, 2024
b40dd57
TPGSWE-17449: Update NDMA timestamp timeout value
XinXuAnalog Aug 20, 2024
6465ad8
TPGSWE-18013: Enable support for RS-FEC in PHY driver
slawomirkulig-analog Aug 26, 2024
a02a7c8
TPGSWE-16217: Add Ethernet link status LED
Aug 22, 2024
8cec8c7
MAINT: Change default PHY rate to 25G
kimholdt-analog Sep 4, 2024
74e84cf
TPGSWE-12484: Add NDMA support for fragmented frames
jbngpinto Sep 5, 2024
9f23bf4
TPGSWE-18290: Fix enabling external PPS support
kimholdt-analog Sep 5, 2024
3a55d82
TPGSWE-18269: Change SRAM run-time print to debug
kimholdt-analog Sep 5, 2024
26f2199
TPGSWE-18217: Enable SerDes IP in the EDD
slawomirkulig-analog Sep 6, 2024
8168a77
TPGSWE-18420: Reset PCS data path after PMA Signal OK
kimholdt-analog Sep 13, 2024
1df38cf
MAINT: By default, RS-FEC is turned off in PCS
slawomirkulig-analog Sep 17, 2024
fe3eee7
TPGSWE-16015 Kernel- Add kernel DT check
Sep 16, 2024
cb47ba9
TPGSWE-18237: Disable NFS v4 support
bneely-adi Sep 23, 2024
a9b0818
TPGSWE-18228: Enable HS400 eMMC boot on denali-4 and titan-4
Sep 23, 2024
d384818
TPGSWE-18169: Internal loopback test fix
XinXuAnalog Sep 3, 2024
fe37c51
HOTFIX: Fix errata (broken synchronization between mmc_rescan and eMM…
Sep 24, 2024
5e3af60
TPGSWE-18420: fix for Multicast Filter configuration in MAC IP
slawomirkulig-analog Sep 25, 2024
e5887ff
TPGSWE-17525: Change PPS & ToD output enable procedure
kimholdt-analog Sep 18, 2024
41975d2
TPGSWE-18398: add mutexes to emac_common functions
slawomirkulig-analog Sep 27, 2024
bdb9674
MAINT: Refactor SerDes function and enum names to resolve checkpatch …
slawomirkulig-analog Sep 27, 2024
72ebc56
TPGSWE-10863: Added additional reset causes for DDR ECC
CalebEthridgeADI Sep 17, 2024
5a4b515
TPGSWE-17403: PWM support max output frequency of GPIO
jiez-adi Sep 6, 2024
b205f79
TPGSWE-18560: 1G ethernet - Enable autonegotiation
Sep 25, 2024
4719f31
TPGSWE-18603: Fix ToD ops poll
kimholdt-analog Oct 1, 2024
257f6c9
TPGSWE-11711: MAC address priority
Sep 26, 2024
08214fd
TPGSWE-11439: Remove VLAN PCP support
Oct 4, 2024
865ce75
TPGSWE-18402: Only trigger when PPS pulse is low
kimholdt-analog Oct 3, 2024
1e53bde
TPGSWE-18667: Set drive strength for recovered clock pin
bneely-adi Oct 21, 2024
415f935
TPGSWE-18435: Adjust UIO mapping
woodrowbarlow Oct 21, 2024
d52bb90
MAINT: Enable UART4 (GNSS) for Denali and Titan boards
bneely-adi Oct 21, 2024
2cb7aa2
TPGSWE-18459: Adjust DDE RX config, enhance algorithm for handling MS…
slawomirkulig-analog Oct 24, 2024
ab97c7e
TPGSWE-18098: Refactoring 10G/25G Ethernet Drivers
XinXuAnalog Sep 30, 2024
4fb65f3
HOTFIX: Remove conflicting UART4 pins for Denali and Titan boards
bneely-adi Oct 22, 2024
f00738b
TPGSWE-12730: Set max MTU size limit for 10/25G eth driver
jbngpinto Oct 25, 2024
4a2aa71
HOTFIX: fixed 8t8r device tree
XinXuAnalog Oct 25, 2024
63e6003
TPGSWE-16135: Add RMII support on adrv906x 1G interface
Oct 25, 2024
e741d15
TPGSWE-18035: Update information about supported link modes for Ethtool
slawomirkulig-analog Oct 30, 2024
e7ab903
TPGSWE-18893: Add ToD1 and ToD2 to adrv906x
Oct 30, 2024
e36add0
HOTFIX: Fix extts_enable from userspace
Oct 30, 2024
8515043
TPGSWE-7328: Change CDDC, CDUC, and ORX IRQ types
Oct 9, 2024
0d9d34d
TPGSWE-17081: Calculate TSU static PHY delays
jiez-adi Oct 30, 2024
e3306cc
TPGSWE-15013: Add EAPOL and ESMC trapping to port 2
Oct 28, 2024
5cb089e
TPGSWE-18099: Move HW enable to PHY section
XinXuAnalog Nov 4, 2024
98e778c
TPGSWE-19022: Remove tstamp compensation for 1PPS
kimholdt-analog Nov 4, 2024
84ccd6a
TPGSWE-18653: add pinctrl groups
Nov 1, 2024
ea2086d
TPGSWE-14035: Enable switch for daisy-chaining
kimholdt-analog Oct 29, 2024
d3e205d
HOTFIX: fix checkpatch violations in ethernet driver files
XinXuAnalog Nov 8, 2024
169f436
HOTFIX: Fix PHY LED DT node in 8T8R
kimholdt-analog Nov 12, 2024
b8fa48d
HOTFIX: Add missing 'clear' of counter reset bit
kimholdt-analog Nov 11, 2024
2d6b296
TPGSWE-19076: Streamline trigger procedure
kimholdt-analog Nov 11, 2024
c011a26
TPGSWE-19076: Fix setting default value
kimholdt-analog Nov 12, 2024
e37d7f7
TPGSWE-19039: Fix PPS operation WA
kimholdt-analog Nov 14, 2024
e699faa
TPGSWE-15440: sysfs files to get/set configs,e.g. drive strength...
johnnyhuang99 Nov 5, 2024
d07b3eb
TPGSWE-19119: Move emac-common register access functions into a separ…
XinXuAnalog Nov 11, 2024
b5f59d5
MAINT: Configure GPIOs 22/23 for stream processor fault handling
bneely-adi Nov 19, 2024
f013507
TPGSWE-19026: Fix ADJTIME implementation
kimholdt-analog Nov 19, 2024
578e584
TPGSWE-18847: Reset PCS RX data path upon LOS detection
slawomirkulig-analog Nov 22, 2024
8947279
TPGSWE-19299: Fix Ethernet recovery clock pin strength
XinXuAnalog Dec 2, 2024
7f8bc1c
TPGSWE-19209: Fix PTP packet trapping
slawomirkulig-analog Dec 4, 2024
8c603fe
TPGSWE-19267: Disable switch port when associated link is down
slawomirkulig-analog Dec 5, 2024
6f49a51
HOTFIX: fix ethernet led gpio pins in device tree
XinXuAnalog Dec 5, 2024
490316d
TPGSWE-19196: Fix for passing incorrect argument to Switch’s ISR
slawomirkulig-analog Dec 5, 2024
1de8b82
TPGSWE-17959: Fix switch learning age time for 25G speed
XinXuAnalog Dec 5, 2024
d8e9871
TPGSWE-13981: Adding primary's eth config to 8T8R dt sources
jbngpinto Dec 9, 2024
deeda51
TPGSWE-18824: Not able to flash eMMC on SS parts - HS400 - disk size …
Dec 9, 2024
564b70d
MAINT: Remove unused phy-mode property from device tree
slawomirkulig-analog Dec 17, 2024
63929c0
TPGSWE-19457: Add the ability to set the default link speed in the de…
slawomirkulig-analog Dec 18, 2024
ae68edf
TPGSWE-19163: Avoid missing count of MSP dropped packets
jiez-adi Nov 27, 2024
341eacf
TPGSWE-19294: Fix 1G autoneg use case for RMII
Dec 3, 2024
41fc6fa
TPGSWE-14951: add DT node for SFPs
jiez-adi Nov 20, 2024
cca79cf
TPGSWE-19532: pinctrl output to stdout, add pin file attribute
johnnyhuang99 Jan 8, 2025
669e3eb
TPGSWE-19388: Enable loopback test with switch in between
XinXuAnalog Jan 7, 2025
556148b
TPGSWE-19343: Add uio entries to device tree
Jan 17, 2025
ed3b7c6
TPGSWE-19248 add mmc1_sd pinctrl to denali-8.dts
Jan 23, 2025
b52dbbc
TPGSWE-13257: Update boot/error handling reporting
Jan 28, 2025
8bf11f1
MAINT: Device tree fixes for dual-tile
adi-doates Feb 5, 2025
870851f
TPGSWE-19006: Add coredump for memdump
kimholdt-analog Jan 8, 2025
2016150
TPGSWE-12736: Enhancement for 8T8R Ethernet
XinXuAnalog Feb 4, 2025
78d9b1e
TPGSWE-19309: Change recovered clock output name
jiez-adi Feb 6, 2025
a898aeb
MAINT: Denali-8 board device tree updates
adi-doates Feb 17, 2025
045500c
TPGSWE-18824: Ignore CRC error on CMD13 after switching to HS400ES
Feb 14, 2025
e1b4bef
TPGSWE-15411: Add support in ToD for dual-tile
kimholdt-analog Feb 10, 2025
f89f731
TPGSWE-15411: Add UIO devices for debug
kimholdt-analog Feb 13, 2025
94182a5
MAINT: Streamline Ethernet pinctrl definitions
kimholdt-analog Feb 18, 2025
e3d6964
MAINT: Updating titan-8 platform device tree for 2nd tile support
adi-doates Feb 19, 2025
8dff32d
TPGSWE-19697: Update denali-8 device tree
Feb 20, 2025
873e16d
TPGSWE-19697: Update secondary i2c/pwm nodes
Feb 24, 2025
e3f079e
TPGSWE-19888: Add cold boot and warm boot reset causes
Feb 25, 2025
1d116be
MAINT: Add function docs
kimholdt-analog Feb 28, 2025
9e933e5
MAINT: Add 'U' to unsigned assignments and remove unused include
kimholdt-analog Feb 28, 2025
2cbea0b
TPGSWR-19884: LED integration for 8T8R
XinXuAnalog Feb 24, 2025
d333d5e
TPGSWE-19958: Add null check for skb to avoid pointer issues
slawomirkulig-analog Mar 6, 2025
f3f8ec4
TPGSWE-19582: DT configurable fronthaul interface name
jbngpinto Mar 7, 2025
fda01c0
TPGSWE-12737: Document 8t8r configuration
XinXuAnalog Mar 5, 2025
683490b
TPGSWE-19583: DT configurable 1g interface name
jbngpinto Mar 11, 2025
6723f41
TPGSWE-19958: Remove the check for TX status timeout
slawomirkulig-analog Mar 12, 2025
c0b1fd0
TPGSWE-15445: Add TX tstamp compensation
kimholdt-analog Mar 7, 2025
9058d84
TPGSWE-15445: Update delay calculation with serdes
kimholdt-analog Mar 12, 2025
ce0a9eb
TPGSWE-15445: Add PCB delays for eval platforms
kimholdt-analog Mar 13, 2025
c37e55d
TPGSWE-20087: UART1 is Not Functional in Linux
Mar 14, 2025
4970cfc
TPGSWE-20045: Add ability to use xcorr internal memory
XinXuAnalog Mar 17, 2025
1c71b87
TPGSWE-18557: Fix our new devicetree binding yaml files
Feb 28, 2025
c188738
HOTFIX: Fix missing write for dual-tile
kimholdt-analog Mar 20, 2025
4a4150c
HOTFIX: Fix typo in DT pinctrl reference
kimholdt-analog Mar 21, 2025
f34d83c
TPGSWE-7543: Enhance Eth driver RX performance
slawomirkulig-analog Apr 2, 2025
245d21b
HOTFIX: Fix condition for DMA descriptor list population
slawomirkulig-analog Apr 4, 2025
27f7d44
TPGSWE-16972: Sequencing ethernet driver using rtnl_lock
XinXuAnalog Apr 2, 2025
0c74504
TPGSWE-13578: use ADI copyright header
jiez-adi Apr 3, 2025
004e696
TPGSWE-19694: Review denali-X and titan-X gpios pinmux configuration
EduardoGrande Mar 17, 2025
05e6b13
TPGSWE-20221: Fix pinctrl SMC Service
CalebEthridgeADI Apr 9, 2025
018b343
TPGSWE-20270: Add UIO window and configure interrupts
Apr 14, 2025
e51effb
compile OK
jiez-adi Apr 18, 2025
383bac7
add devicetree node for xcorr memories
jiez-adi Apr 23, 2025
6e6c356
TPGSWE-20368: improve ADI SRAM drivers
jiez-adi Apr 23, 2025
e289deb
Use platform_get_irq()
jiez-adi Apr 24, 2025
29817e1
Implement new C45 interface functions
jiez-adi Apr 24, 2025
e7b54f3
rename adrv reboot sysfs dir to adrv-reboot
jiez-adi Apr 25, 2025
278f84b
Revert some changes from Comcores
jiez-adi Apr 25, 2025
54f95fb
TPGSWE-20431: Revert workaround for TPGSWE-14585
jiez-adi Apr 26, 2025
2a2c603
Replace "linux,spidev" with specific device names
jiez-adi May 23, 2025
b909ca6
TPGSWE-14042: Expose switch port statistics to userspace
XinXuAnalog Apr 8, 2025
cffffa7
TPGSWE-19343: Add secondary UIO interrupts
woodrowbarlow Apr 18, 2025
f548b0b
MAINT: Remove GPIO configurations
woodrowbarlow Apr 17, 2025
005f6c3
TPGSWE-20270: Removed core transmuter from the device tree profile
Apr 22, 2025
62f16eb
TPGSWE-20355: Add optional PTP packets trapping for Eth switch
slawomirkulig-analog Apr 24, 2025
028d710
HOTFIX: Remove update of DMA descriptor list on the fly
slawomirkulig-analog Apr 25, 2025
ab0e1b4
TPGSWE-18311: Add support for extended message flow in PHY driver
slawomirkulig-analog Apr 24, 2025
91e4ebd
TPGSWE-20410: Move ToD read in adjust time function
Apr 28, 2025
34ef547
MAINT: Remove redundant print
kimholdt-analog May 7, 2025
7363794
TPGSWE-20519: Fix link instability after toggling
slawomirkulig-analog May 14, 2025
d970302
TPGSWE-20462: Add UIO access to PIMC on the secondary tile
kimholdt-analog May 13, 2025
9eaca29
MAINT: Fix config conditions when carrier is changed
slawomirkulig-analog May 15, 2025
e010966
TPGSWE-20390: Enhance Ethernet driver RX performance
slawomirkulig-analog May 23, 2025
c65c8c7
TPGSWE-20367: improve device tree for sram drivers
jiez-adi May 21, 2025
7cddbd4
TPGSWE-19343: Add secondary UIO interrupts
woodrowbarlow May 6, 2025
37ecf53
TPGSWE-13408: ADRV906x Ethernet: add RMON support
jiez-adi Jun 2, 2025
5942be2
TPGSWE-19748: add DPD IN/OUT PMs interrupts of 2nd tile into device tree
May 22, 2025
a881f73
TPGSWE-20642: Post-merge cleanup of PHY and Ethernet drivers
slawomirkulig-analog Jun 6, 2025
2232214
HOTFIX: Fix DMA unmapping for unaligned buffer
slawomirkulig-analog Jun 9, 2025
2b5a733
TPGSWE-17870: Add missing secondary tile switch interrupt to DT
slawomirkulig-analog Jun 10, 2025
4a98d99
TPGSWE-20697: Fix irq value overlow
kimholdt-analog Jun 13, 2025
3d40a04
TPGSWE-20726: Remove outdated UIO interrupts
Jun 17, 2025
4832531
TPGSWE-20667: Enable PHY RS-FEC by default
jiez-adi Jun 30, 2025
ea06e25
TPGSWE-20738: Fix error detection in I2C driver
slawomirkulig-analog Jul 1, 2025
a8934c5
MAINT: Remove SerDes and PLL config from emac_common init
slawomirkulig-analog Jun 5, 2025
e285362
TPGSWE-20835: Replace deprecated ndo_do_ioctl with ndo_eth_ioctl
Jul 2, 2025
aca6afa
TPGSWE-20672: Remove error message from ptp driver
jiez-adi Jun 3, 2025
19922d7
TPGSWE-20811: Configure repeat ratio after PLL reset
slawomirkulig-analog Jul 4, 2025
278f1b4
TPGSWE-20852: Disable FH Eth switch port in driver probe
slawomirkulig-analog Jul 3, 2025
8a6ca27
TPGSWE-20881: Set promisc mode as default in Eth MAC
slawomirkulig-analog Jul 9, 2025
2642c25
TPGSWE-20915: Fix ethernet LEDs
Jul 11, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -177,3 +177,7 @@ sphinx_*/

# Rust analyzer configuration
/rust-project.json

# Yocto symlinks
oe-logs
oe-workdir
113 changes: 113 additions & 0 deletions Documentation/devicetree/bindings/dma/adi-dma.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,113 @@
* Analog Devices Direct Memory Access (DMA) Controller for ADRV906X-series processors

This document will only describe differences to the generic DMA Controller and
DMA request bindings as described in dma/dma.txt

* DMA controller

Required properties:
- compatible : Should be "adi,mdma-controller" or "adi,dma-controller".
- reg : Should contain DMA registers location and length
- #dma-cells : Has to be 1. Does not support anything else.
- interrupts : subnode, containing:
adi,id:
adi,src-offset: Offset from base address
adi,skip-interrupts: Set to 0 usually. Setting to 1 will skip handling interrupts,
so the SHARC cores may handle them instead.
interrupts: list of interrupts, from processor's GIC interrupt list
interrupt-names: list of interrupt names
Optional properties:
- dde-descriptor-mode : this is optionally specified for a dma channel. A dma channel with this
property runs in descriptor list mode. otherwise the dma channel

Check failure on line 21 in Documentation/devicetree/bindings/dma/adi-dma.txt

View workflow job for this annotation

GitHub Actions / checks / checks

checkpatch: trailing whitespace + property runs in descriptor list mode. otherwise the dma channel $
runs in register based mode.
- dde-sync-bit-disable: disable the DDE sync bit for a dma channel. A sync bit is used to synchronize
work unit transitions.

Check failure on line 25 in Documentation/devicetree/bindings/dma/adi-dma.txt

View workflow job for this annotation

GitHub Actions / checks / checks

checkpatch: trailing whitespace + $
Example (DMA):

sport0_dma_cluster: dma@0x31022000 {
compatible = "adi,dma-controller";
reg = <0x31022000 0x1000>;
status = "okay";
#dma-cells = <1>;

sport0a: channel@0 {
adi,id = <0>;
adi,src-offset = <0>;
adi,skip-interrupts = <0>;
interrupts = <GIC_SPI 81 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 297 IRQ_TYPE_LEVEL_HIGH>;
interrupt-names = "complete", "error";
};

sport0b: channel@1 {
adi,id = <1>;
adi,src-offset = <0x80>;
adi,skip-interrupts = <0>;
interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 298 IRQ_TYPE_LEVEL_HIGH>;
interrupt-names = "complete", "error";
};
};

Example (MDMA):

mdma: dma@0x3109a000 {
compatible = "adi,mdma-controller";
reg = <0x3109a000 0x1000>;
status = "okay";

sdma2: channel@40 {
adi,id = <40>;
// The destination interrupts are used for primary complete detection
interrupts = <GIC_SPI 207 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 286 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 206 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 285 IRQ_TYPE_LEVEL_HIGH>;
interrupt-names = "complete", "error", "complete2", "error2";
adi,src-offset = <0>;
adi,dest-offset = <0x80>;
};
};

* DMA client

Clients have to specify the DMA requests with phandles in a list.

Required properties:
- dmas: List of one or more DMA request specifiers. One DMA request specifier
consists of a phandle to the DMA controller followed by the integer
specifying the request line.
- dma-names: List of string identifiers for the DMA requests. For the correct
names, have a look at the specific client driver.

Example:

i2s0: i2s0@0 {
...
dmas = <&sport0_dma_cluster 0>, <&sport0_dma_cluster 1>;
dma-names = "tx", "rx";
...
};

From a driver level, additional configuration of things like bus width can set via:

dma_config.direction = DMA_DEV_TO_MEM;
dma_config.src_addr_width = DMA_SLAVE_BUSWIDTH_4_BYTES;
dma_config.dst_addr_width = DMA_SLAVE_BUSWIDTH_4_BYTES;
dma_config.src_maxburst = 1;
dma_config.dst_maxburst = 1;

dmaengine_slave_config(crc->dma_ch, &dma_config);

Or cyclic mode can be enabled via something like:
(a cyclic descriptor will reuse itself, triggering callbacks as expected, * and will not free itself when it finishes)

desc = dmaengine_prep_dma_cyclic(uart->rx_dma_channel, uart->rx_dma_phy,
UART_XMIT_SIZE, DMA_RX_XCOUNT, DMA_DEV_TO_MEM, DMA_PREP_INTERRUPT);
desc->callback = adi_uart4_serial_dma_rx;
desc->callback_param = uart;

MDMA controllers can be found automatically through the kernel's standard DMA memcpy API:

struct dma_chan *chan = dma_find_channel(DMA_MEMCPY);
21 changes: 21 additions & 0 deletions Documentation/devicetree/bindings/gpio/gpio-adi-adrv906x.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
Analog Device Inc. ADRV906x SoC GPIO Controller

Required properties:
- compatible: Compatible property value should be "adi,adrv906x-gpio".
- reg: Physical base address of the controller and length of memory mapped
region.
- #gpio-cells: Should be two. For consumer use see gpio.txt.
- ngpios: Number of GPIO lines (0..n-1)
- gpio-controller: Specifies that the node is a gpio controller.
- pintmux: Specifies the base address for the pin interrupt mux associated with the GPIO controller

Example:

gpio1: gpio@2021B000 {
compatible = "adi,adrv906x-gpio";
reg = <0x2021B000 0x1000>;
pintmux = <0x20102200>;
gpio-controller;
#gpio-cells = <2>;
ngpios = <ADI_ADRV906X_PIN_COUNT>;
};

Check failure on line 21 in Documentation/devicetree/bindings/gpio/gpio-adi-adrv906x.txt

View workflow job for this annotation

GitHub Actions / checks / checks

checkpatch: trailing whitespace + }; $
69 changes: 69 additions & 0 deletions Documentation/devicetree/bindings/i2c/adi,twi.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/i2c/adi,twi.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Analog Devices Inter IC (I2C) controller

maintainers:
- Slawomir Kulig <[email protected]>

properties:
compatible:
enum:
- adi,twi

"#address-cells":
const: 1

"#size-cells":
const: 0

reg:
maxItems: 1

interrupts:
maxItems: 1

clocks:
maxItems: 1

clock-khz:
description: Desired I2C bus clock frequency in kHz. If not specified,
frequency defined by CONFIG_I2C_ADI_TWI_CLK_KHZ will be
used (default 50 kHz).
If timing parameters match, the bus clock frequency can
be from 21 to 400 kHz.
default: 50
minimum: 21
maximum: 400

required:
- compatible
- "#address-cells"
- "#size-cells"
- reg
- interrupts
- clock-khz
- clocks

additionalProperties: false

examples:
- |
#include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/gpio/gpio.h>
#define I2C_0_BASE 0x20760000
#define I2C_IRQ_S2F_PIPED_0 149

i2c0: twi@I2C_0_BASE_UADDR {
#address-cells = <1>;
#size-cells = <0>;
compatible = "adi,twi";
reg = <I2C_0_BASE 0xFF>;
interrupts = <GIC_SPI I2C_IRQ_S2F_PIPED_0 IRQ_TYPE_LEVEL_HIGH>;
clock-khz = <100>;
clocks = <&sysclk>;
status = "disabled";
};
54 changes: 54 additions & 0 deletions Documentation/devicetree/bindings/iio/dac/adi,pwm-dac.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/iio/dac/adi,pwm-dac.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Analog Devices PWM DAC

maintainers:
- Jie Zhang <[email protected]>

properties:
compatible:
const: adi,pwm-dac

reg:
maxItems: 1

clocks:
items:
- description: Clock phandle for input clock

adi,iovdd-microvolt:
description: |
The IOVDD voltagge [mV]
minimum: 0
maximum: 5000000

adi,gpio-max-frequency:
description: |
The maximum frequency of GPIO [Hz]
minimum: 0
maximum: 0xffffffff

additionalProperties: false

required:
- compatible
- reg
- clocks
- adi,iovdd-microvolt
- adi,gpio-max-frequency

examples:
- |
#define PWM_BASE 0x20727000
dac@PWM_BASE_UADDR {
compatible = "adi,pwm-dac";
reg = <PWM_BASE 0x100>;
clocks = <&hsdigclk>;
adi,iovdd-microvolt = <3300000>;
adi,gpio-max-frequency = <122880000>;
};
...
65 changes: 65 additions & 0 deletions Documentation/devicetree/bindings/misc/adi,tru.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/misc/adi,tru.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Analog Devices Trigger Routing Unit (TRU)

maintainers:
- Jie Zhang <[email protected]>

properties:
compatible:
const: adi,tru

reg:
maxItems: 1

adi,tru-last-source-id:
description: |
The last TRU trigger source ID
minimum: 0
maximum: 0xff

adi,tru-last-target-id:
description: |
The last TRU trigger target ID
minimum: 0
maximum: 0xffffffff

adi,tru-connections-preset:
description: |
Preset connections between TRU sources and targets

adi,tru-connections-preset-locked:
description: |
The preset connections between TRU sources and targets are locked.

additionalProperties: false

required:
- compatible
- reg
- adi,tru-last-source-id
- adi,tru-last-target-id

examples:
- |
#define TRU_BASE 0x20052000

tru0: tru@TRU_BASE_UADDR {
compatible = "adi,tru";
reg = <TRU_BASE 0x800>;
/* TODO replace 100 with actual last trigger source ID */
adi,tru-last-source-id = <100>;
adi,tru-last-target-id = <79>;
/* each connection is <source target> */
/*
adi,tru-connections-preset = <1 2>,
<25 32>,
<3 4>;
adi,tru-connections-preset-locked;
*/
};
...
Loading
Loading