RISC-V is a new CPU architecture aimed to be fully free and open. This
target will add support for it, based on 5.15.
Supports running on:
 - HiFive Unleashed - FU540, first generation
 - HiFive Unmatched - FU740, current latest generation, PCIe
SD-card images are generated, where the partitions are required to have
specific type codes. As it is commonplace nowadays, OpenSBI is used as the
first stage, with U-boot following as the proper bootloader.
Specifications:
HiFive Unleashed:
 - CPU: SiFive FU540 quad-core RISC-V (U54, RV64IMAFDC or RV64GC)
 - Memory: 8Gb
 - Ethernet: 1x 10/100/1000
 - Console: via microUSB
HiFive Unmatched:
 - CPU: SiFive FU740 quad-core RISC-V (U74, RV64IMAFDCB or RV64GCB)
 - Memory: 16Gb
 - Ethernet: 1x 10/100/1000
 - USB: 4x USB 3.2
 - PCIe:  - 1x PCIe Gen3 x8
          - 1x M.2 key M (PCIe x4)
          - 1x M.2 Key E (PCIe x1 / USB2.0)
 - Console: via microUSB
Installation:
Standard SD-card installation via dd-ing the generated image to
an SD-card of at least 256Mb.
Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
		
	
		
			
				
	
	
		
			105 lines
		
	
	
		
			3.3 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			105 lines
		
	
	
		
			3.3 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
From 657819ff477dd73cd71075609698aa57ba098d8c Mon Sep 17 00:00:00 2001
 | 
						|
From: David Abdurachmanov <david.abdurachmanov@sifive.com>
 | 
						|
Date: Wed, 15 Sep 2021 07:10:02 -0700
 | 
						|
Subject: [PATCH 2/7] riscv: sifive: unmatched: update regulators values
 | 
						|
 | 
						|
These are the regulators values from the schematics for Rev3{A,B} boards.
 | 
						|
 | 
						|
Note this is not fully correct as bcore1/bcore2 and bmem/bio are merged, but
 | 
						|
it's only supported in v5.15 kernel. See:
 | 
						|
 | 
						|
541ee8f640327f951e7039278057827322231ab0 ("regulator: da9063: Add support for
 | 
						|
full-current mode.")
 | 
						|
 | 
						|
This will be changed for v5.15 kernel based on the patch above.
 | 
						|
 | 
						|
Signed-off-by: David Abdurachmanov <david.abdurachmanov@sifive.com>
 | 
						|
---
 | 
						|
 .../riscv/boot/dts/sifive/hifive-unmatched-a00.dts | 32 +++++++++++-----------
 | 
						|
 1 file changed, 16 insertions(+), 16 deletions(-)
 | 
						|
 | 
						|
--- a/arch/riscv/boot/dts/sifive/hifive-unmatched-a00.dts
 | 
						|
+++ b/arch/riscv/boot/dts/sifive/hifive-unmatched-a00.dts
 | 
						|
@@ -73,16 +73,16 @@
 | 
						|
 
 | 
						|
 		regulators {
 | 
						|
 			vdd_bcore1: bcore1 {
 | 
						|
-				regulator-min-microvolt = <900000>;
 | 
						|
-				regulator-max-microvolt = <900000>;
 | 
						|
+				regulator-min-microvolt = <1050000>;
 | 
						|
+				regulator-max-microvolt = <1050000>;
 | 
						|
 				regulator-min-microamp = <5000000>;
 | 
						|
 				regulator-max-microamp = <5000000>;
 | 
						|
 				regulator-always-on;
 | 
						|
 			};
 | 
						|
 
 | 
						|
 			vdd_bcore2: bcore2 {
 | 
						|
-				regulator-min-microvolt = <900000>;
 | 
						|
-				regulator-max-microvolt = <900000>;
 | 
						|
+				regulator-min-microvolt = <1050000>;
 | 
						|
+				regulator-max-microvolt = <1050000>;
 | 
						|
 				regulator-min-microamp = <5000000>;
 | 
						|
 				regulator-max-microamp = <5000000>;
 | 
						|
 				regulator-always-on;
 | 
						|
@@ -137,48 +137,48 @@
 | 
						|
 			};
 | 
						|
 
 | 
						|
 			vdd_ldo3: ldo3 {
 | 
						|
-				regulator-min-microvolt = <1800000>;
 | 
						|
-				regulator-max-microvolt = <1800000>;
 | 
						|
+				regulator-min-microvolt = <3300000>;
 | 
						|
+				regulator-max-microvolt = <3300000>;
 | 
						|
 				regulator-min-microamp = <200000>;
 | 
						|
 				regulator-max-microamp = <200000>;
 | 
						|
 				regulator-always-on;
 | 
						|
 			};
 | 
						|
 
 | 
						|
 			vdd_ldo4: ldo4 {
 | 
						|
-				regulator-min-microvolt = <1800000>;
 | 
						|
-				regulator-max-microvolt = <1800000>;
 | 
						|
+				regulator-min-microvolt = <2500000>;
 | 
						|
+				regulator-max-microvolt = <2500000>;
 | 
						|
 				regulator-min-microamp = <200000>;
 | 
						|
 				regulator-max-microamp = <200000>;
 | 
						|
 				regulator-always-on;
 | 
						|
 			};
 | 
						|
 
 | 
						|
 			vdd_ldo5: ldo5 {
 | 
						|
-				regulator-min-microvolt = <1800000>;
 | 
						|
-				regulator-max-microvolt = <1800000>;
 | 
						|
+				regulator-min-microvolt = <3300000>;
 | 
						|
+				regulator-max-microvolt = <3300000>;
 | 
						|
 				regulator-min-microamp = <100000>;
 | 
						|
 				regulator-max-microamp = <100000>;
 | 
						|
 				regulator-always-on;
 | 
						|
 			};
 | 
						|
 
 | 
						|
 			vdd_ldo6: ldo6 {
 | 
						|
-				regulator-min-microvolt = <3300000>;
 | 
						|
-				regulator-max-microvolt = <3300000>;
 | 
						|
+				regulator-min-microvolt = <1800000>;
 | 
						|
+				regulator-max-microvolt = <1800000>;
 | 
						|
 				regulator-min-microamp = <200000>;
 | 
						|
 				regulator-max-microamp = <200000>;
 | 
						|
 				regulator-always-on;
 | 
						|
 			};
 | 
						|
 
 | 
						|
 			vdd_ldo7: ldo7 {
 | 
						|
-				regulator-min-microvolt = <1800000>;
 | 
						|
-				regulator-max-microvolt = <1800000>;
 | 
						|
+				regulator-min-microvolt = <3300000>;
 | 
						|
+				regulator-max-microvolt = <3300000>;
 | 
						|
 				regulator-min-microamp = <200000>;
 | 
						|
 				regulator-max-microamp = <200000>;
 | 
						|
 				regulator-always-on;
 | 
						|
 			};
 | 
						|
 
 | 
						|
 			vdd_ldo8: ldo8 {
 | 
						|
-				regulator-min-microvolt = <1800000>;
 | 
						|
-				regulator-max-microvolt = <1800000>;
 | 
						|
+				regulator-min-microvolt = <3300000>;
 | 
						|
+				regulator-max-microvolt = <3300000>;
 | 
						|
 				regulator-min-microamp = <200000>;
 | 
						|
 				regulator-max-microamp = <200000>;
 | 
						|
 				regulator-always-on;
 |