Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
35 commits
Select commit Hold shift + click to select a range
fe4db96
Revert "irqchip/plic: fix DP1000 PLIC claim register hardware bug"
WangJia-UR Jan 7, 2026
4d54526
irqchip/sifive-plic: Use for_each_present_cpu() instead of for_each_c…
Aug 11, 2025
5161934
irqchip/sifive-plic: Cache the interrupt enable state
Oct 24, 2025
714d624
irqchip/sifive-plic: Add support for UltraRISC DP1000 PLIC
Oct 24, 2025
e820da8
dt-bindings: interrupt-controller: Add UltraRISC DP1000 PLIC
Oct 24, 2025
1d21f28
irqchip/sifive-plic: Fix call to __plic_toggle() in M-Mode code path
Nov 3, 2025
c85276f
riscv: dts: ultrarisc: Update DP1000 series device tree files
WangJia-UR Dec 18, 2025
1a5d525
hwmon: corepvt-ultrarisc: Add UltraRISC Core PVT sensor driver
WangJia-UR Dec 18, 2025
0c93dcb
dt-bindings: hwmon: Add UltraRISC DP1000 Core PVT sensor binding
WangJia-UR Sep 16, 2025
5cfaf46
riscv: defconfig: Enable COREPVT_ULTRARISC and GPIO_KEY
WangJia-UR Dec 18, 2025
d73c9da
riscv: dts: ultrarisc: Fix naming inconsistencies in dp1000 files
WangJia-UR Dec 22, 2025
d1858eb
dt-bindings: pinctrl: Rename pinctrl header ur-dp1000-pinctrl.h to ul…
WangJia-UR Dec 22, 2025
4db6bf6
riscv: defconfig: Enable some DRM and RTC configs
WangJia-UR Dec 23, 2025
180152c
leds: trigger: Load trigger modules on-demand if used as default trigger
hkallweit Dec 21, 2023
9b049d8
leds: trigger: netdev: Skip setting baseline state in activate if hw-…
hkallweit Dec 21, 2023
9879762
leds: trigger: netdev: Add module alias ledtrig:netdev
hkallweit Dec 21, 2023
3c77cb3
leds: class: If no default trigger is given, make hw_control trigger …
hkallweit Dec 22, 2023
f394f9b
leds: trigger: netdev: Extend speeds up to 10G
dangowrt Nov 28, 2023
653dc15
docs: ABI: sysfs-class-led-trigger-netdev: Add new modes and entry
dangowrt Nov 28, 2023
75c6560
leds: trigger: netdev: Display only supported link speed attribute
Ansuel Jan 11, 2024
f6e0921
docs: ABI: sysfs-class-led-trigger-netdev: Document now hidable link_*
Ansuel Jan 11, 2024
548ae7d
leds: trigger: netdev: Check offload ability on interface up
Dec 16, 2024
83451b6
leds: led-triggers: Improvements for default trigger
cmcqueen Mar 17, 2025
ba9d9c5
leds: trigger: panic: Simplify led_trigger_set_panic
hkallweit Dec 9, 2023
4bd026d
leds: trigger: Stop exporting trigger_list
hkallweit Jan 31, 2024
f0d47ba
leds: triggers: Add helper led_match_default_trigger
hkallweit Jan 31, 2024
00330fe
net: phy: realtek: Add support for PHY LEDs on RTL8211F
Jun 25, 2024
9d4c767
net: phy: realtek: Fix setting of PHY LEDs Mode B bit on RTL8211F
sava-msli Aug 21, 2024
372f584
leds: core: Omit set_brightness error message for a LED supporting hw…
lag-linaro Jun 12, 2024
3536d53
net: phy: realtek: Check the index value in led_hw_control_get
jason77-wang Sep 27, 2024
7187b72
riscv: dts: dp1000-titan-v1: add phy leds support
WangJia-UR Jan 8, 2026
d58ab77
riscv: dts: ultrarisc: Add model and compatible properties
WangJia-UR Jan 8, 2026
c513210
PCI: dwc: ultrarisc: Update compatible string for DP1000 SoC
WangJia-UR Dec 29, 2025
597509f
riscv: dts: ultrarisc: Update pcie and gmac compatible strings
WangJia-UR Jan 6, 2026
e860567
riscv: dts: ultrarisc: remove 'bootargs' property in 'chosen'
WangJia-UR Jan 8, 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
6 changes: 6 additions & 0 deletions Documentation/ABI/testing/sysfs-class-led
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,12 @@ Description:
/sys/class/leds/<led> once a given trigger is selected. For
their documentation see `sysfs-class-led-trigger-*`.

Writing "none" removes the trigger for this LED.

Writing "default" sets the trigger to the LED's default trigger
(which would often be configured in the device tree for the
hardware).

What: /sys/class/leds/<led>/inverted
Date: January 2011
KernelVersion: 2.6.38
Expand Down
51 changes: 51 additions & 0 deletions Documentation/ABI/testing/sysfs-class-led-trigger-netdev
Original file line number Diff line number Diff line change
Expand Up @@ -88,6 +88,8 @@ Description:
speed of 10MBps of the named network device.
Setting this value also immediately changes the LED state.

Present only if the named network device supports 10Mbps link speed.

What: /sys/class/leds/<led>/link_100
Date: Jun 2023
KernelVersion: 6.5
Expand All @@ -101,6 +103,8 @@ Description:
speed of 100Mbps of the named network device.
Setting this value also immediately changes the LED state.

Present only if the named network device supports 100Mbps link speed.

What: /sys/class/leds/<led>/link_1000
Date: Jun 2023
KernelVersion: 6.5
Expand All @@ -114,6 +118,53 @@ Description:
speed of 1000Mbps of the named network device.
Setting this value also immediately changes the LED state.

Present only if the named network device supports 1000Mbps link speed.

What: /sys/class/leds/<led>/link_2500
Date: Nov 2023
KernelVersion: 6.8
Contact: [email protected]
Description:
Signal the link speed state of 2500Mbps of the named network device.

If set to 0 (default), the LED's normal state is off.

If set to 1, the LED's normal state reflects the link state
speed of 2500Mbps of the named network device.
Setting this value also immediately changes the LED state.

Present only if the named network device supports 2500Mbps link speed.

What: /sys/class/leds/<led>/link_5000
Date: Nov 2023
KernelVersion: 6.8
Contact: [email protected]
Description:
Signal the link speed state of 5000Mbps of the named network device.

If set to 0 (default), the LED's normal state is off.

If set to 1, the LED's normal state reflects the link state
speed of 5000Mbps of the named network device.
Setting this value also immediately changes the LED state.

Present only if the named network device supports 5000Mbps link speed.

What: /sys/class/leds/<led>/link_10000
Date: Nov 2023
KernelVersion: 6.8
Contact: [email protected]
Description:
Signal the link speed state of 10000Mbps of the named network device.

If set to 0 (default), the LED's normal state is off.

If set to 1, the LED's normal state reflects the link state
speed of 10000Mbps of the named network device.
Setting this value also immediately changes the LED state.

Present only if the named network device supports 10000Mbps link speed.

What: /sys/class/leds/<led>/half_duplex
Date: Jun 2023
KernelVersion: 6.5
Expand Down
90 changes: 90 additions & 0 deletions Documentation/devicetree/bindings/hwmon/ultrarisc,dp1000-pvt.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,90 @@
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/hwmon/ultrarisc,dp1000-pvt.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: UltraRISC DP1000 Core PVT Sensor

maintainers:
- Jia Wang <[email protected]>

description: |
UltraRISC DP1000 SoC provides a voltage and temperature (PVT) sensor to
monitor the internal SoC environment including chip temperature and supply voltage.
properties:
compatible:
const: ultrarisc,dp1000-pvt

reg:
maxItems: 1
description: Register space of the PVT controller

interrupts:
maxItems: 1
description: Optional interrupt number for the PVT controller. This property is optional and can be omitted if not used.
Copy link

Copilot AI Jan 9, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The interrupts property documentation states it is optional, but the 'required' section at line 57 does not list it, which is correct. However, the description on line 26 should more clearly indicate it's optional by starting with "Optional:" or similar wording for clarity.

Suggested change
description: Optional interrupt number for the PVT controller. This property is optional and can be omitted if not used.
description: Optional: interrupt number for the PVT controller. This property can be omitted if not used.

Copilot uses AI. Check for mistakes.

clock-frequency:
description: Clock frequency of the PVT controller in Hz

channels:
description: Total number of PVT channels supported

patternProperties:
"^channel@[0-9a-f]+$":
type: object
description: Child node describing a PVT channel
properties:
reg:
description: Channel index
minimum: 0
maximum: 63

label:
description: Name for this channel, typically indicating its purpose

trim:
description: Trim value for calibration
default: 7
minimum: 0
maximum: 15

required:
- reg
- label

required:
- compatible
- reg
- clock-frequency
- channels

additionalProperties: false

examples:
- |
core_pvt: pvt@20008000 {
compatible = "ultrarisc,dp1000-pvt";
reg = <0x20008000 0x1000>;
clock-frequency = <4000000>;
channels = <13>;
channel@0 {
reg = <0>;
label = "Core temp0";
trim = <7>;
};
channel@1 {
reg = <1>;
label = "Core temp1";
trim = <7>;
};
channel@2 {
reg = <2>;
label = "Core temp2";
trim = <7>;
};
};
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,9 @@ properties:
- allwinner,sun20i-d1-plic
- thead,th1520-plic
- const: thead,c900-plic
- items:
- const: ultrarisc,dp1000-plic
- const: ultrarisc,cp100-plic
Comment on lines +71 to +72
Copy link

Copilot AI Jan 9, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The compatible string ordering in the PLIC binding documentation is incorrect. According to the binding pattern, the compatible should list the most specific first, then the fallback. The code shows "ultrarisc,cp100-plic", "ultrarisc,dp1000-plic" but the binding documentation shows them in reverse order. This mismatch needs to be corrected.

Suggested change
- const: ultrarisc,dp1000-plic
- const: ultrarisc,cp100-plic
- const: ultrarisc,cp100-plic
- const: ultrarisc,dp1000-plic

Copilot uses AI. Check for mistakes.
- items:
- const: sifive,plic-1.0.0
- const: riscv,plic0
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ maintainers:

description: |
UltraRISC RISC-V SoC DP1000 pin controller.
<dt-bindings/pinctrl/ur-dp1000-pinctrl.h> contains the pinmux definitions.
<dt-bindings/pinctrl/ultrarisc,dp1000-pinctrl.h> contains the pinmux definitions.

properties:
compatible:
Expand Down
2 changes: 1 addition & 1 deletion arch/riscv/boot/dts/ultrarisc/Makefile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# SPDX-License-Identifier: GPL-2.0
dtb-$(CONFIG_ARCH_ULTRARISC) += dp1000-evb-v1.dtb
dtb-$(CONFIG_ARCH_ULTRARISC) += dp1000-mo-v1.dtb
dtb-$(CONFIG_ARCH_ULTRARISC) += dp1000-m0-v1.dtb
dtb-$(CONFIG_ARCH_ULTRARISC) += dp1000-titan-v1.dtb
2 changes: 1 addition & 1 deletion arch/riscv/boot/dts/ultrarisc/dp1000-evb-pinctrl.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
* Copyright(C) 2025 UltraRISC Technology (Shanghai) Co., Ltd.
*/

#include <dt-bindings/pinctrl/ur-dp1000-pinctrl.h>
#include <dt-bindings/pinctrl/ultrarisc,dp1000-pinctrl.h>
#include "dp1000.dtsi"

&pmx0 {
Expand Down
39 changes: 29 additions & 10 deletions arch/riscv/boot/dts/ultrarisc/dp1000-evb-v1.dts
Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,14 @@

#include "dp1000-evb-pinctrl.dtsi"
#include <dt-bindings/iio/temperature/thermocouple.h>
#include <dt-bindings/gpio/gpio.h>

/ {
model = "UltraRISC EVB v1";
compatible = "ultrarisc,evb-v1", "ultrarisc,dp1000";

chosen {
bootargs = "earlycon=sbi console=ttyS1,115200";
stdout-path = &uart1;
stdout-path = "serial1:115200n8";
};
};

Expand All @@ -21,6 +24,16 @@
&i2c1 {
pinctrl-names = "default";
pinctrl-0 = <&i2c1_pins>;

rtc@68 {
compatible = "dallas,ds1339";
reg = <0x68>;
};
};

&i2c2 {
pinctrl-names = "default";
pinctrl-0 = <&i2c2_pins>;
};

&i2c3 {
Expand All @@ -31,14 +44,6 @@
&spi0 {
pinctrl-names = "default";
pinctrl-0 = <&spi0_pins>;

mmc0: mmc@0 {
compatible = "mmc-spi-slot";
spi-max-frequency = <15625000>;
reg = <0x00>;
voltage-ranges = <3300 3300>;
disable-wp;
};
};

&spi1 {
Expand All @@ -62,3 +67,17 @@
pinctrl-names = "default";
pinctrl-0 = <&uart2_pins>;
};

&ethernet {
phy-handle = <&phy0>;
mdio {
#address-cells = <0x01>;
#size-cells = <0x00>;
compatible = "snps,dwmac-mdio";
phy0: phy@0{
phandle = <0x04>;
reg = <0x00>;
status = "okay";
};
};
};
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
* Copyright(C) 2025 UltraRISC Technology (Shanghai) Co., Ltd.
*/

#include <dt-bindings/pinctrl/ur-dp1000-pinctrl.h>
#include <dt-bindings/pinctrl/ultrarisc,dp1000-pinctrl.h>
#include "dp1000.dtsi"

&pmx0 {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,13 +3,32 @@
* Copyright(C) 2025 UltraRISC Technology (Shanghai) Co., Ltd.
*/

#include "dp1000-mo-pinctrl.dtsi"
#include "dp1000-m0-pinctrl.dtsi"
#include <dt-bindings/iio/temperature/thermocouple.h>
#include <dt-bindings/gpio/gpio.h>

/ {
model = "Rongda M0 Board v1";
compatible = "rongda,m0-v1", "ultrarisc,dp1000";

chosen {
bootargs = "earlycon=sbi console=ttyS0,115200";
stdout-path = &uart0;
stdout-path = "serial0:115200n8";
};

gpio-poweroff {
compatible = "gpio-poweroff";
gpios = <&portb 0 GPIO_ACTIVE_HIGH>;
active-delay-ms = <100>;
line-name = "power-off";
status = "okay";
};

gpio-restart {
compatible = "gpio-restart";
gpios = <&portb 1 GPIO_ACTIVE_HIGH>;
active-delay-ms = <100>;
line-name = "reset-system";
status = "okay";
};
};

Expand Down Expand Up @@ -64,3 +83,17 @@
pinctrl-names = "default";
pinctrl-0 = <&uart2_pins>;
};

&ethernet {
phy-handle = <&phy0>;
mdio {
#address-cells = <0x01>;
#size-cells = <0x00>;
compatible = "snps,dwmac-mdio";
phy0: phy@0{
phandle = <0x04>;
reg = <0x00>;
status = "okay";
};
};
};
8 changes: 1 addition & 7 deletions arch/riscv/boot/dts/ultrarisc/dp1000-titan-pinctrl.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
* Copyright(C) 2025 UltraRISC Technology (Shanghai) Co., Ltd.
*/

#include <dt-bindings/pinctrl/ur-dp1000-pinctrl.h>
#include <dt-bindings/pinctrl/ultrarisc,dp1000-pinctrl.h>
#include "dp1000.dtsi"

&pmx0 {
Expand Down Expand Up @@ -129,23 +129,19 @@
UR_DP1000_IOMUX_A 1 UR_FUNC0
UR_DP1000_IOMUX_A 2 UR_FUNC0
UR_DP1000_IOMUX_A 3 UR_FUNC0
UR_DP1000_IOMUX_A 4 UR_FUNC0
>;

pinconf-pins = <
UR_DP1000_IOMUX_A 0 UR_DP1000_BIAS(UR_PULL_UP, UR_DRIVE_DEF)
UR_DP1000_IOMUX_A 1 UR_DP1000_BIAS(UR_PULL_UP, UR_DRIVE_DEF)
UR_DP1000_IOMUX_A 2 UR_DP1000_BIAS(UR_PULL_UP, UR_DRIVE_DEF)
UR_DP1000_IOMUX_A 3 UR_DP1000_BIAS(UR_PULL_UP, UR_DRIVE_DEF)
UR_DP1000_IOMUX_A 4 UR_DP1000_BIAS(UR_PULL_UP, UR_DRIVE_DEF)
>;
};

gpios_pin: gpios_pin {
pinctrl-pins = <
UR_DP1000_IOMUX_A 10 UR_FUNC_DEF
UR_DP1000_IOMUX_A 11 UR_FUNC_DEF
UR_DP1000_IOMUX_A 14 UR_FUNC_DEF
UR_DP1000_IOMUX_A 15 UR_FUNC_DEF

UR_DP1000_IOMUX_B 0 UR_FUNC_DEF
Expand All @@ -158,8 +154,6 @@

pinconf-pins = <
UR_DP1000_IOMUX_A 10 UR_DP1000_BIAS(UR_PULL_UP, UR_DRIVE_DEF)
UR_DP1000_IOMUX_A 11 UR_DP1000_BIAS(UR_PULL_UP, UR_DRIVE_DEF)
UR_DP1000_IOMUX_A 14 UR_DP1000_BIAS(UR_PULL_UP, UR_DRIVE_DEF)
UR_DP1000_IOMUX_A 15 UR_DP1000_BIAS(UR_PULL_UP, UR_DRIVE_DEF)

UR_DP1000_IOMUX_B 0 UR_DP1000_BIAS(UR_PULL_UP, UR_DRIVE_DEF)
Expand Down
Loading