Commit 0bb43aec authored by Linus Torvalds's avatar Linus Torvalds
Browse files

Merge tag 'riscv-for-linus-5.16-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux

Pull RISC-V fixes from Palmer Dabbelt:

 - A handful of DT updates for the SiFive HiFive Unmatched, that fix the
   regulator handling. These should stop some warning spew.

 - A pair of fixes for both the SiFive Hifive Unleashed and Unmatched,
   that correctly hook up the MMC card detect signal.

* tag 'riscv-for-linus-5.16-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux:
  riscv: dts: sifive unmatched: Link the tmp451 with its power supply
  riscv: dts: sifive unmatched: Fix regulator for board rev3
  riscv: dts: sifive unmatched: Expose the PMIC sub-functions
  riscv: dts: sifive unmatched: Expose the board ID eeprom
  riscv: dts: sifive unmatched: Name gpio lines
  riscv: dts: unmatched: Add gpio card detect to mmc-spi-slot
  riscv: dts: unleashed: Add gpio card detect to mmc-spi-slot
parents fa09ca5e f6f7fbb8
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -76,6 +76,7 @@
		spi-max-frequency = <20000000>;
		voltage-ranges = <3300 3300>;
		disable-wp;
		gpios = <&gpio 11 GPIO_ACTIVE_LOW>;
	};
};

+53 −60
Original line number Diff line number Diff line
@@ -2,6 +2,7 @@
/* Copyright (c) 2020 SiFive, Inc */

#include "fu740-c000.dtsi"
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/interrupt-controller/irq.h>

/* Clock frequency (in Hz) of the PCB crystal for rtcclk */
@@ -54,10 +55,21 @@
	temperature-sensor@4c {
		compatible = "ti,tmp451";
		reg = <0x4c>;
		vcc-supply = <&vdd_bpro>;
		interrupt-parent = <&gpio>;
		interrupts = <6 IRQ_TYPE_LEVEL_LOW>;
	};

	eeprom@54 {
		compatible = "microchip,24c02", "atmel,24c02";
		reg = <0x54>;
		vcc-supply = <&vdd_bpro>;
		label = "board-id";
		pagesize = <16>;
		read-only;
		size = <256>;
	};

	pmic@58 {
		compatible = "dlg,da9063";
		reg = <0x58>;
@@ -65,48 +77,44 @@
		interrupts = <1 IRQ_TYPE_LEVEL_LOW>;
		interrupt-controller;

		regulators {
			vdd_bcore1: bcore1 {
				regulator-min-microvolt = <900000>;
				regulator-max-microvolt = <900000>;
				regulator-min-microamp = <5000000>;
				regulator-max-microamp = <5000000>;
				regulator-always-on;
		onkey {
			compatible = "dlg,da9063-onkey";
		};

		rtc {
			compatible = "dlg,da9063-rtc";
		};

			vdd_bcore2: bcore2 {
				regulator-min-microvolt = <900000>;
				regulator-max-microvolt = <900000>;
				regulator-min-microamp = <5000000>;
				regulator-max-microamp = <5000000>;
		wdt {
			compatible = "dlg,da9063-watchdog";
		};

		regulators {
			vdd_bcore: bcores-merged {
				regulator-min-microvolt = <1050000>;
				regulator-max-microvolt = <1050000>;
				regulator-min-microamp = <4800000>;
				regulator-max-microamp = <4800000>;
				regulator-always-on;
			};

			vdd_bpro: bpro {
				regulator-min-microvolt = <1800000>;
				regulator-max-microvolt = <1800000>;
				regulator-min-microamp = <2500000>;
				regulator-max-microamp = <2500000>;
				regulator-min-microamp = <2400000>;
				regulator-max-microamp = <2400000>;
				regulator-always-on;
			};

			vdd_bperi: bperi {
				regulator-min-microvolt = <1050000>;
				regulator-max-microvolt = <1050000>;
				regulator-min-microvolt = <1060000>;
				regulator-max-microvolt = <1060000>;
				regulator-min-microamp = <1500000>;
				regulator-max-microamp = <1500000>;
				regulator-always-on;
			};

			vdd_bmem: bmem {
				regulator-min-microvolt = <1200000>;
				regulator-max-microvolt = <1200000>;
				regulator-min-microamp = <3000000>;
				regulator-max-microamp = <3000000>;
				regulator-always-on;
			};

			vdd_bio: bio {
			vdd_bmem_bio: bmem-bio-merged {
				regulator-min-microvolt = <1200000>;
				regulator-max-microvolt = <1200000>;
				regulator-min-microamp = <3000000>;
@@ -117,86 +125,66 @@
			vdd_ldo1: ldo1 {
				regulator-min-microvolt = <1800000>;
				regulator-max-microvolt = <1800000>;
				regulator-min-microamp = <100000>;
				regulator-max-microamp = <100000>;
				regulator-always-on;
			};

			vdd_ldo2: ldo2 {
				regulator-min-microvolt = <1800000>;
				regulator-max-microvolt = <1800000>;
				regulator-min-microamp = <200000>;
				regulator-max-microamp = <200000>;
				regulator-always-on;
			};

			vdd_ldo3: ldo3 {
				regulator-min-microvolt = <1800000>;
				regulator-max-microvolt = <1800000>;
				regulator-min-microamp = <200000>;
				regulator-max-microamp = <200000>;
				regulator-min-microvolt = <3300000>;
				regulator-max-microvolt = <3300000>;
				regulator-always-on;
			};

			vdd_ldo4: ldo4 {
				regulator-min-microvolt = <1800000>;
				regulator-max-microvolt = <1800000>;
				regulator-min-microamp = <200000>;
				regulator-max-microamp = <200000>;
				regulator-min-microvolt = <2500000>;
				regulator-max-microvolt = <2500000>;
				regulator-always-on;
			};

			vdd_ldo5: ldo5 {
				regulator-min-microvolt = <1800000>;
				regulator-max-microvolt = <1800000>;
				regulator-min-microamp = <100000>;
				regulator-max-microamp = <100000>;
				regulator-min-microvolt = <3300000>;
				regulator-max-microvolt = <3300000>;
				regulator-always-on;
			};

			vdd_ldo6: ldo6 {
				regulator-min-microvolt = <3300000>;
				regulator-max-microvolt = <3300000>;
				regulator-min-microamp = <200000>;
				regulator-max-microamp = <200000>;
				regulator-min-microvolt = <1800000>;
				regulator-max-microvolt = <1800000>;
				regulator-always-on;
			};

			vdd_ldo7: ldo7 {
				regulator-min-microvolt = <1800000>;
				regulator-max-microvolt = <1800000>;
				regulator-min-microamp = <200000>;
				regulator-max-microamp = <200000>;
				regulator-min-microvolt = <3300000>;
				regulator-max-microvolt = <3300000>;
				regulator-always-on;
			};

			vdd_ldo8: ldo8 {
				regulator-min-microvolt = <1800000>;
				regulator-max-microvolt = <1800000>;
				regulator-min-microamp = <200000>;
				regulator-max-microamp = <200000>;
				regulator-min-microvolt = <3300000>;
				regulator-max-microvolt = <3300000>;
				regulator-always-on;
			};

			vdd_ld09: ldo9 {
				regulator-min-microvolt = <1050000>;
				regulator-max-microvolt = <1050000>;
				regulator-min-microamp = <200000>;
				regulator-max-microamp = <200000>;
				regulator-always-on;
			};

			vdd_ldo10: ldo10 {
				regulator-min-microvolt = <1000000>;
				regulator-max-microvolt = <1000000>;
				regulator-min-microamp = <300000>;
				regulator-max-microamp = <300000>;
				regulator-always-on;
			};

			vdd_ldo11: ldo11 {
				regulator-min-microvolt = <2500000>;
				regulator-max-microvolt = <2500000>;
				regulator-min-microamp = <300000>;
				regulator-max-microamp = <300000>;
				regulator-always-on;
			};
		};
@@ -223,6 +211,7 @@
		spi-max-frequency = <20000000>;
		voltage-ranges = <3300 3300>;
		disable-wp;
		gpios = <&gpio 15 GPIO_ACTIVE_LOW>;
	};
};

@@ -245,4 +234,8 @@

&gpio {
	status = "okay";
	gpio-line-names = "J29.1", "PMICNTB", "PMICSHDN", "J8.1", "J8.3",
		"PCIe_PWREN", "THERM", "UBRDG_RSTN", "PCIe_PERSTN",
		"ULPI_RSTN", "J8.2", "UHUB_RSTN", "GEMGXL_RST", "J8.4",
		"EN_VDD_SD", "SD_CD";
};