Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
102 commits
Select commit Hold shift + click to select a range
e1f6c9c
scripts: Add pre-generated copy for arm-nilrt-linux-gnueabi-elfconfig.h
gratian Nov 4, 2013
ca1a7bc
scripts: Add pre-generated copy for x86_64
Nov 13, 2013
e74d4fd
shared: Adding mcopy syscall for Zynq
Apr 1, 2014
4918d56
nirtfeatures: set HARD_BOOT_N if necessary when the driver loads
Mar 14, 2014
aac93a2
nirtfeatures: BIOS writes HARD_BOOT_N, so driver doesn't need to
Apr 10, 2014
d1a9df4
leds-ni793x: Add leds-ni793x driver to control the RT User 1 LED
franram4 Mar 26, 2015
2aed524
leds-ni793x: Add documentation for leds-ni793x devicetree bindings
franram4 Apr 3, 2015
19cdfd1
fpgaperipheral: Add driver to notify clients on FPGA downloads
kteske Aug 28, 2012
615bd22
fpgaperipheral: Add notification for failure
Oct 27, 2016
6f78d52
fpgaperipheral: Add dev_info message if probe succeeded
Jun 10, 2014
ee41560
mtd: nand: pl353: add snapshot of driver from linux-xlnx tree
Jun 3, 2015
9487613
Zynq NAND: enable subpage reads and writes
Dec 4, 2013
73d528d
Xilinx: ARM: nand: Replace READ0 of the last read page with RNDOUT
Apr 19, 2013
68163ac
Xilinx: ARM: nand: Check read status when using on-die ECC
Apr 22, 2013
d0c7b04
Xilinx: ARM: nand: Deassert CS when the chip is no longer in use
Apr 22, 2013
d3d67cb
mtd: nand: xilinx: Rename the pl353 NAND driver to match bootloader
gratian Sep 25, 2014
51c072c
nand: pl353: Fix private data's use of mtd_info
Jun 21, 2016
325cb97
pl353_nand: Add module params to disable subpage read and write
harisokanovic Sep 7, 2016
3bc908f
pl353_nand: Add dsb(st) (store-only data sync barrier) after reg writes
harisokanovic Sep 12, 2016
b9327ab
HACK: ARM: zynq: established early fixed mapping for PL353 NAND region
Feb 3, 2016
105d017
mtd: nand: pl353: Convert nand_ecclayout structs to mtd_ooblayout_ops
gratian Aug 3, 2017
cbdf0fc
mtd: nand: pl353: Use mtd_ooblayout_xxx() helpers
gratian Aug 3, 2017
792e13c
nizynqcpld: Add support for the NI Zynq CPLD
Mar 5, 2012
09c937c
nizynqcpld: Add scratchpad read and write
Mar 5, 2012
056778e
nizynqcpld: Add 'bootmode' attribute
Aug 20, 2012
089ef1b
nizynqcpld: Add support for LEDs
Mar 5, 2012
1e4612b
nizynqcpld: Add reboot support
Mar 5, 2012
0170882
nizynqcpld: Add attributes to query switches
Aug 20, 2012
78ff412
nizynqcpld: Add NI Watchdog support
Oct 9, 2012
4a423ad
nizynqcpld: Add support for wifi button on myRIO
ioancornea82 Oct 17, 2013
e7e9c27
nizynqcpld: Add cRIO-906[6,7] CPLD support
kengsooncheah Aug 28, 2013
b0b165b
nizynqcpld: Add Tecate CPLD support
Patater Oct 17, 2013
a86301e
nizynqcpld: clean up tecate LEDs
Jan 24, 2014
ffcb5d5
nizynqcpld: Use correct register to detect switches
jhershbe Feb 20, 2014
2f7d35a
nizynqcpld: Add support for reading soft-reset state
jhershbe Feb 20, 2014
69fd016
nizynqcpld: Expose power status to user-mode
jhershbe Feb 20, 2014
43e7fbb
nizynqcpld: Replace recovery boot mode with install
jhershbe Feb 21, 2014
e5e8d72
nizynqcpld: Add attribute for reset source
jhershbe Feb 21, 2014
35292a7
nizynqcpld: Change LED prefix to "nilrt"
Feb 24, 2014
0ee8473
nizynqcpld: myRIO WiFi LEDs are poorly named
Feb 25, 2014
26751c6
sbZynq: Add sbZynq to nizynq CPLD driver
chenyeechew Nov 25, 2014
4e3f620
nizynqcpld: Update LED triggers to match macb mdio name
natesully Dec 3, 2014
15f0613
nizynqcpld: Strobe the watchdog control register
Patater Feb 26, 2015
f96bc63
nizynqcpld: Remove THIS_MODULE
Patater Mar 6, 2015
3ef61d5
nizynqcpld: Use module_i2c_driver macro
Patater Mar 6, 2015
731df75
nizynqcpld: Read LED information from device tree
Patater Mar 6, 2015
9da604d
nizynqcpld: Remove tecate_leds
Patater Mar 6, 2015
a3f0dc5
nizynqcpld: Use oneshot interrupt flag
kroeschl Feb 17, 2016
f35934e
nizynqcpld: make poll() and ioctl() functions static
Feb 26, 2015
d499e59
nizynqcpld: use restart_handler mechanism for triggering restart
Mar 20, 2015
b491d60
nizynqcpld: Document device tree bindings
Patater Mar 6, 2015
a1a6259
nizynqcpld: Unblock poll() callers on highly-loaded systems
kroeschl Dec 9, 2016
c747da8
nizynqcpld: Code style cleanup
Oct 18, 2016
362f8fd
nizynqcpld: Request IRQ on probe instead of miscdevice open
kroeschl Aug 2, 2017
c0ca407
myRIO: fix argument passed to free_irq called in wifi_sw_close
apaqq Jan 22, 2014
006c2eb
myRIO: add inversion support to the LED driver
Jan 17, 2014
815d3a1
i2c: cadence: Support reading the bus number from the device tree
Apr 29, 2014
f470fe4
xiic: Read the bus number from the device tree
jhershbe Aug 30, 2013
8b11fb9
i2c: xiic: Handle devices that do not specify a clock
Feb 16, 2017
10b16d6
Revert "irqchip/gic: Kill the xlate method"
Aug 16, 2016
9d88ce6
watchdog: nic7018_wdt: Add support for timeout interrupt
Jul 8, 2017
5128ee2
auxdisplay: sh1107: Sino Wealth SH1107 OLED driver
Dec 20, 2017
1f311e7
doc: auxdisplay: sh1107: Documentation of Sino Wealth SH1107 driver
Dec 20, 2017
848a3be
auxdisplay: oel9m1027: Truly OEL9M1027 OLED module driver
Dec 20, 2017
cf2fa1c
doc: auxdisplay: oel9m1027: Documentation of Truly OEL9M1027 driver
Dec 20, 2017
1566c31
nizynqcpld: Add NI ELVIS III/III+ CPLD support
Aug 15, 2017
aa06138
driver core: add device_poll interface
Feb 13, 2014
9af0087
net: add device_poll functionality common to all net devices
Feb 13, 2014
62235ab
driver core: NI backwards compatibility for device_poll interface
Feb 13, 2014
db64972
macb: Handle FPGA reprogramming notifications
natesully Dec 9, 2014
d7c1ef4
HACK net/macb: Totally disable TX checksum offloading
Mar 12, 2015
ca23b9e
net: macb: Disable phy interrupts during FPGA load
natesully May 19, 2015
e2aa3ee
phy: add phy_stop_machine_nolink
natesully Jan 4, 2018
85984ad
macb: call phy_stop_machine_nolink
natesully Jan 4, 2018
99d2e0e
macb: deactivate queues in fpga notifier
natesully Jan 30, 2018
f1b97e2
wl12xx: Disable uncalibrated channel 14 (not supported on LSR)
Mar 2, 2015
ce3e55c
wl12xx: Disallow channels above 11 until beacons are seen
Mar 3, 2015
464f640
wl12xx: Switch to using nl80211_band enum
gratian Mar 3, 2015
057f2b7
mmc: core: Wait for Vdd to settle on card power off
kroeschl Sep 1, 2017
01198e1
mmc: sdhci: Disable SD card clock before changing parameters
kroeschl Apr 24, 2018
9dcb30b
mmc: sdhci: Add quirk for delay between clock disable and param change
kroeschl May 14, 2018
3b91786
mmc: sdhci: Add quirk work around double rescan
kroeschl May 16, 2018
27a2488
mmc: sdhci-pci: Use two delay quirks for Baytrail SD
kroeschl May 17, 2018
c5cd064
Marvell 88E151x PHY: Configure interrupt output
Jul 11, 2012
2447ccf
mmc: sdhci: Do not disable interrupts in sdhci_set_clock
kroeschl Nov 20, 2018
e2e9fee
nizynqcpld: Add NI roboRIO 2.0 CPLD support
kimkhiam Jan 27, 2021
c44a960
ARM: dts: ni: Import Zynq device trees from Linux 4.14
chaitu236 Jul 21, 2026
7853e13
ARM: dts: ni: Remove unused dts
chaitu236 Jul 21, 2026
1a13ba3
ARM: dts: ni: Adapt boards to the current Zynq hierarchy
chaitu236 Jul 21, 2026
ee9f4d6
dts: ni: Define NAND child address format
chaitu236 Jul 18, 2026
edfc218
dts: ni: Disable inaccessible CoreSight devices
chaitu236 Jul 21, 2026
f71dcdb
net: macb: Replace removed PHY interrupt helpers
chaitu236 Jul 18, 2026
8969762
misc: nizynqcpld: Update I2C driver callbacks
chaitu236 Jul 21, 2026
38e45fa
serial: 8250_ni: Map MMIO registers before probe-time access
chaitu236 Jul 21, 2026
face27d
nati_zynq_defconfig: Refresh for Linux 6.18
chaitu236 Jul 27, 2026
0603e51
nati*defconfig: Enable CONFIG_RCU_NOCB_CPU_DEFAULT_ALL
chaitu236 Jul 22, 2026
1b1b4f3
ni-pkg: Add NI FIT image packaging target
chaitu236 Jul 18, 2026
b6a32e0
net/phy: micrel: Add workaround for autoneg failure
natesully Nov 4, 2015
a1d2c0a
net/phy: micrel: Init workaround work in probe
natesully Aug 28, 2018
f176459
macb: Send link speed to the PL via GPIOs
Aug 31, 2012
7fbd0b4
github-actions: Add ARM checks
chaitu236 Aug 3, 2026
68ddbbb
nati*defconfig: Disable CONFIG_LOCALVERSION_AUTO
chaitu236 Aug 3, 2026
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
40 changes: 36 additions & 4 deletions .github/workflows/pr-checks.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,16 +23,48 @@ jobs:
sudo apt install libelf-dev
sudo apt install python3-ply
sudo apt install python3-git
sudo apt install gcc-arm-linux-gnueabihf
sudo apt install u-boot-tools

- name: "[TEST] Build nati_x86_64_defconfig"
run: |
make nati_x86_64_defconfig
make -j8 bzImage modules
make O=build-x64 nati_x86_64_defconfig
make O=build-x64 -j8 bzImage modules

- name: "[TEST] Does nati_x86_64_defconfig need update"
run: |
make savedefconfig
diff defconfig arch/x86/configs/nati_x86_64_defconfig
make O=build-x64 savedefconfig
diff build-x64/defconfig arch/x86/configs/nati_x86_64_defconfig

- name: "[TEST] Build nati_zynq_defconfig"
run: |
make O=build-zynq ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- nati_zynq_defconfig
make O=build-zynq ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- -j8 ni-pkg

- name: "[TEST] Does nati_zynq_defconfig need update"
run: |
make O=build-zynq ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- savedefconfig
diff build-zynq/defconfig arch/arm/configs/nati_zynq_defconfig

- name: "[TEST] Build nati_bluefin_defconfig"
run: |
make O=build-bluefin ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- nati_bluefin_defconfig
make O=build-bluefin ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- -j8 ni-pkg

- name: "[TEST] Does nati_bluefin_defconfig need update"
run: |
make O=build-bluefin ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- savedefconfig
diff build-bluefin/defconfig arch/arm/configs/nati_bluefin_defconfig

- name: "[TEST] Build nati_slsc_defconfig"
run: |
make O=build-slsc ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- nati_slsc_defconfig
make O=build-slsc ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- -j8 ni-pkg

- name: "[TEST] Does nati_slsc_defconfig need update"
run: |
make O=build-slsc ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- savedefconfig
diff build-slsc/defconfig arch/arm/configs/nati_slsc_defconfig

- name: "[TEST] Is rebase required"
run: |
Expand Down
5 changes: 5 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -96,6 +96,11 @@ modules.order
#
/tar-install/

#
# ni specific install directory
#
/ni-install/

#
# pacman files (make pacman-pkg)
#
Expand Down
15 changes: 15 additions & 0 deletions Documentation/devicetree/bindings/auxdisplay/oel9m1027.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
Binding for OEL9M1027 OLED display module manufactured by Truly

Required properties:
- compatible : Compatibility string. Must be "truly,oel9m1027".

Example:

oleddriver@3C {
compatible = "sinowealth,sh1107";
reg = <0x3C>;

oledmodule {
compatible = "truly,oel9m1027";
};
};
12 changes: 12 additions & 0 deletions Documentation/devicetree/bindings/auxdisplay/sh1107.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
Binding for Sinowealth OLED driver

Required properties:
- compatible: Compatibility string. Must be "sinowealth,sh1107".
- reg : i2c address of Truly OLED module (0x3C or 0x3D)

Example:

oleddriver@3C {
compatible = "sinowealth,sh1107";
reg = <0x3C>;
};
21 changes: 21 additions & 0 deletions Documentation/devicetree/bindings/leds/leds-ni793x.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
LEDs connected to NI-793xR

Required properties:
- compatible : should be : "ni,led-793x".
- reg: base address of LED control register space.

The ni,led-793x device node only contains a single sub-node, 'user1'.

LED sub-node properties:
- label : (optional) see leds/common.txt
- linux,default-trigger : (optional) see leds/common.txt

Examples:

leds-ni793x@4020F000 {
compatible = "ni,led-793x";
reg = <0x4020F000 4>;
user1 {
label = "nilrt:user1:green";
};
};
156 changes: 156 additions & 0 deletions Documentation/devicetree/bindings/misc/ni,cpld.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,156 @@
National Instruments CPLD

National Instruments (NI) boards often have CPLDs on them to handle
board-specific tasks like LED control, board switches and buttons,
power sequencing, and CPU-independent watchdogs.

NI's CPLDs are connected over i2c. As such, 'nicpld' must be a child
of an i2c node.

nicpld properties:
- compatible : (required)
Should be "ni,cpld"
- reg: (required)
Address of the CPLD on the i2c bus

Required sub-nodes:
- watchdogs : A node containing sub-nodes describing watchdogs

Optional sub-nodes:
- switches : A node containing sub-nodes describing switches
- leds : A node containing sub-nodes describing LEDs


Watchdogs Child Node
====================

Each watchdog controlled by the CPLD is represented as a sub-node of
the nicpld's 'watchdogs' node. Each sub-node of 'watchdogs' has the
following properties.

Required properties:
- interrupts : Should be the CPLD watchdog interrupt specifier

Optional properties:
- label: A name for the CPLD switch


Switches Child Node
===================

Each switch or button controlled by the CPLD is represented as a
sub-node of the nicpld's 'switches' node. Each sub-node of 'switches'
has the following properties.

Required properties:
- interrupts : The CPLD switch interrupt specifier


LEDs Child Node
===============

Each LED controlled by the CPLD is represented as a sub-node of the
nicpld's 'leds' node. The name of each LED node corresponds to an
LED type. The "-0" or "-1" suffixes specify an LED element (single
color) within a multi-color LED.

Possible LED types:
- user1-0
- user1-1
- status-0
- status-1
- temp-alert-0
- wifi-0
- wifi-1
- eth0-0
- eth0-1
- eth1-0
- eth1-1

Different CPLDs support different LED types. The set of LEDs that
various CPLDs support can be determined by examining their product
code. The product code for a CPLD can be determined by reading the
"NICPLD_PRODUCT" (0x1D) register of the CPLD over i2c. Below is a
list of which CPLDs support which LED types.

CPLD Products 0x00 and 0x01
---------------------------
user1-0
user1-1
status-0
status-1
wifi-0
wifi-1
eth0-0
eth0-1
eth1-0
eth1-1

CPLD Product 0x02
-----------------
status-0
temp-alert-0
eth0-0
eth0-1
eth1-0
eth1-1

CPLD Products 0x03 and 0x04
---------------------------
user1-0
status-0
eth0-0
eth0-1
eth1-0
eth1-1


LED sub-node properties:
- label : (optional)
see bindings/leds/common.txt
- max-brightness : (optional)
The number of possible special blinking patterns. Selecting a
brightness will pick the blink pattern.
- linux,default-trigger : (optional)
see bindings/leds/common.txt

Example:

nicpld@40 {
compatible = "ni,cpld";
reg = <0x40>;

watchdogs {
boot-watchdog {
interrupt-parent = <&gpio>;
interrupts = <24 0>;
};
};

switches {
wifi-switch {
interrupt-parent = <&gpio>;
interrupts = <25 0>;
};
};

leds {
user1-0 {
label = "nilrt:user1:green";
};
status-0 {
label = "nilrt:status:yellow";
max-brightness = <0xFFFF>;
};
eth0-0 {
label = "nilrt:eth0:green";
linux,default-trigger =
"e000b000.etherne:00:100Mb";
};
eth0-1 {
label = "nilrt:eth0:yellow";
linux,default-trigger =
"e000b000.etherne:00:Gb";
};
};
};
15 changes: 15 additions & 0 deletions MAINTAINERS
Original file line number Diff line number Diff line change
Expand Up @@ -18763,6 +18763,14 @@ F: drivers/misc/ocxl/
F: include/misc/ocxl*
F: include/uapi/misc/ocxl.h

OEL9M1027 TRULY OLED MODULE DRIVER
M: Wilson Lee <wilson.lee@ni.com>
S: Maintained
F: Documentation/devicetree/bindings/auxdisplay/oel9m1027.txt
F: drivers/auxdisplay/oel9m1027.c
F: drivers/auxdisplay/oel9m1027fb.c
F: drivers/auxdisplay/oel9m1027.h

OMAP AUDIO SUPPORT
M: Peter Ujfalusi <peter.ujfalusi@gmail.com>
M: Jarkko Nikula <jarkko.nikula@bitmer.com>
Expand Down Expand Up @@ -23452,6 +23460,13 @@ S: Orphan
F: drivers/media/platform/renesas/sh_vou.c
F: include/media/drv-intf/sh_vou.h

SH1107 OLED CONTROLLER DRIVER
M: Wilson Lee <wilson.lee@ni.com>
S: Maintained
F: Documentation/devicetree/bindings/auxdisplay/sh1107.txt
F: drivers/auxdisplay/sh1107.c
F: drivers/auxdisplay/sh1107.h

SI2157 MEDIA DRIVER
L: linux-media@vger.kernel.org
S: Orphan
Expand Down
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -1592,7 +1592,7 @@ endif # CONFIG_MODULES
CLEAN_FILES += vmlinux.symvers modules-only.symvers \
modules.builtin modules.builtin.modinfo modules.nsdeps \
modules.builtin.ranges vmlinux.o.map vmlinux.unstripped \
compile_commands.json rust/test \
compile_commands.json rust/test ni-install \
rust-project.json .vmlinux.objs .vmlinux.export.c \
.builtin-dtbs-list .builtin-dtbs.S

Expand Down
23 changes: 22 additions & 1 deletion arch/arm/boot/dts/xilinx/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -14,4 +14,25 @@ dtb-$(CONFIG_ARCH_ZYNQ) += \
zynq-zturn.dtb \
zynq-zturn-v5.dtb \
zynq-zybo.dtb \
zynq-zybo-z7.dtb
zynq-zybo-z7.dtb \
ni-762F.dtb \
ni-76D3.dtb \
ni-76D6.dtb \
ni-76F2.dtb \
ni-7740.dtb \
ni-7741.dtb \
ni-7742.dtb \
ni-7743.dtb \
ni-7744.dtb \
ni-774C.dtb \
ni-774E.dtb \
ni-775E.dtb \
ni-77AC.dtb \
ni-77B1.dtb \
ni-77B2.dtb \
ni-77D4.dtb \
ni-77D5.dtb \
ni-77D6.dtb \
ni-7885.dtb \
ni-793C.dtb \
ni-7AAE.dtb
6 changes: 6 additions & 0 deletions arch/arm/boot/dts/xilinx/ni-762F.dts
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
/dts-v1/;
/include/ "ni-myrio.dtsi"

/ {
model = "NI myRIO-1900";
};
6 changes: 6 additions & 0 deletions arch/arm/boot/dts/xilinx/ni-76D3.dts
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
/dts-v1/;
/include/ "ni-myrio.dtsi"

/ {
model = "NI myRIO-1950";
};
Loading
Loading