...
HW/IP features
PL block
- 10-bit resolution
- 0.2 MSPS sample rate
- Support external analog input
- External mux supports
- 16 auxiliary channels
- 16 alarm output
- Interface supported JTAG, DRP or dedicated PS DRP, I2C and PMBus
- 2 temperature sensors
- VCCINT, VCCAUX, VCCBRAM, VCC_PSINTLP, VCC_PSINTFP, VCC_PSAUX system supply sensors
- 4 USER supply channels
PS block
- 10-bit resolution
- 1.0 MSPS sample rate
- 16 alarm output
- Interface supported JTAG or APB
- 1 temperature sensors
- VCCINT, VCCAUX, VCCBRAM, VCC_PSINTLP, VCC_PSINTFP, VCC_PSAUX system supply sensors
Missing features, known Issues, limitations
- Single pass sequence mode
- Bipolar channel modes
- External mux mode
Kernel configurations
To compile a kernel with a driver for the AMS enable the following kernel config option:Code Block | ||
---|---|---|
| ||
CONFIG_XILINX_AMS |
Device Tree Settings
Device Tree Bindings Doc: https://gitenterprise.xilinxgithub.com/LinuxXilinx/linux-xlnx/blob/master/Documentation/devicetree/bindings/iio/adc/xilinx-ams.txt
The above doc will provide details into what full configuration will look like.
The following Device Tree shows minimal configuration.
Code Block | ||
---|---|---|
| ||
xilinx_ams: ams@ffa50000 { compatible = "xlnx,zynqmp-ams"; interrupt-parent = <&&gic>; interrupts = <0 56 4>; interrupt-names = "ams-irq"; reg = <0x0 0xffa50000 0x0 0x800>; reg-names = "ams-base"; #address-cells = <2>; #size-cells = <2>; ranges; ams_ps: ams_ps@ffa50800 { compatible = "xlnx,zynqmp-ams-ps"; reg = <0x0 0xffa50800 0x0 0x400>; }; ams_pl: ams_pl@ffa50c00 { compatible = "xlnx,zynqmp-ams-pl"; reg = <0x0 0xffa50c00 0x0 0x400>; }; }; |
Test Procedure
Test Case 1: Read channel value via sysfs
Test Case 2: Get rising event for channel using sample application
iio_event_monitor is a program that is located in tools/iio/iio_event_monitor.c inside the linux kernel source.
This application is being used here for monitoring sysmon events.
Test Case 3: Rising event – negative test using sample application
Test Case 4: Get falling event for voltage channel using sample application
Test Case 5: Falling event for voltage channel – negative test using sample application
Change Log
2017.1- Add Xilinx AMS driver
- Enable the clock through CCF
- fix temperature offset
- fix false alarm event
- Fix error handling
- Disable interrupts at boot up
- fix module unload crash
- enable clock before device initialization
...