Jump to content
XPEnology Community

TinyCore RedPill Loader (TCRP)


pocopico

Recommended Posts

 

 

yes this is the driver for Intel x520 Nic and i had  Kernel Panic when i add this driver to 3622xs  7.1.42661 without doing this Manual that the driver is not added then all is working fine see the steps below thank you

 

 

24 minutes ago, Peter Suh said:

 

As in the log
It appears that ixgbe ext has a problem.
Isn't this 10GB Ethernet card an additional NIC?

If you can remove it and boot to another NIC, please use it like that.
If you have a NIC built-in, disable it in the BIOS.


For errors in "ixgbe ext", take this log now
I think it would be better to contact the topic "Redfill-extension driver/modules request" separately.

 

16 hours ago, nemesis122 said:

- Outcome of the update: SUCCESSFUL

- DSM version prior update: RedPill  TinyCore DS3622xs+ DSM 7.0.1-42218

- Loader version and model: RedPill  TinyCore broadwellnk-7.1.0-42661

- Using custom extra.lzma: NO

- Installation type: BAREMETAL - HP Gen8 Microserver  - Intel Xeon E3-1220L V2, 16GB RAM, NIC: Intel X520 SFP+ 10Gbit

- Additional comments: Doing this Manual that the Network Driver  ixgbe  is NOT Additional  added

- Command for 3622 XS

- [DS3622xs+]

./rploader.sh update now

./rploader.sh fullupgrade now

./rploader.sh serialgen DS3622xs+

./rploader.sh identifyusb now

./rploader.sh satamap now

./rploader.sh build broadwellnk-7.0.1-42218 manual

./rploader.sh clean now

./rploader.sh build broadwellnk-7.1.0-42661 manual

 

-and it is working :-)

 without "manual" there was Kernel Panic because from the ixgbe Driver or you can disable the network adapater during the loader building 

-Onboard SATA ports and the SSD in the obbe Slot Found all drives and they are listed in order.

 

Link to comment
Share on other sites

5 hours ago, Peter Suh said:

 

 

Is it a bare metal environment? It is a function that automatically finds ata_port in the patchdtc function,

 

a new function that @pocopico added about 6 hours ago.

 

@pocopico , Can you check this out?

 

Success reports continue to appear on VM, but bare metal is not.

I have a baremetal environment

How to test this function? What is the script?

I want to try for DS920+

Link to comment
Share on other sites

4 hours ago, Peter Suh said:

 

@pocopico

 

I found the location of the problem. LINE 763, 764

 

 

In your script, you're looking for the eighth "/"

In my bare metal, the target is found at the seventh "/".

I don't know why, but is this position different between VM and bare metal?

 

udevadm info --query path --name sdb | awk -F "\/" '{print $8  }' | awk -F: '{print $1}' | cut -c 1-6

 

tc@box:~$ udevadm info --query path --name sdb
/devices/pci0000:00/0000:00:1f.2/ata6/host5/target5:0:0/5:0:0:0/block/sdb
tc@box:~$ udevadm info --query path --name sdb | awk -F "\/" '{print $7  }' | awk -F: '{print $1}' | cut -c 1-6
target
tc@box:~$ 

 

I doubt that the target will be on the same position so i changed it a bit. 

 

Link to comment
Share on other sites

4 hours ago, Peter Suh said:

 

@pocopico

 

I found the location of the problem. LINE 763, 764

 

 

In your script, you're looking for the eighth "/"

In my bare metal, the target is found at the seventh "/".

I don't know why, but is this position different between VM and bare metal?

 

udevadm info --query path --name sdb | awk -F "\/" '{print $8  }' | awk -F: '{print $1}' | cut -c 1-6

 

tc@box:~$ udevadm info --query path --name sdb
/devices/pci0000:00/0000:00:1f.2/ata6/host5/target5:0:0/5:0:0:0/block/sdb
tc@box:~$ udevadm info --query path --name sdb | awk -F "\/" '{print $7  }' | awk -F: '{print $1}' | cut -c 1-6
target
tc@box:~$ 

 

@pocopico

This is the result of logging to five disks.

According to these results, the internal Sata has a "/" at the 7th
External Sata appears to have "/" back on the eighth.

Wouldn't it be more accurate to find the "target" phrase instead of counting "/" ?

 

lrwxrwxrwx 1 root root 0 Apr 19 06:30 sda -> ../devices/pci0000:00/0000:00:1f.2/ata1/host0/target0:0:0/0:0:0:0/block/sda
lrwxrwxrwx 1 root root 0 Apr 19 06:30 sdb -> ../devices/pci0000:00/0000:00:1f.2/ata2/host1/target1:0:0/1:0:0:0/block/sdb
lrwxrwxrwx 1 root root 0 Apr 19 06:30 sdc -> ../devices/pci0000:00/0000:00:1f.2/ata3/host2/target2:0:0/2:0:0:0/block/sdc
lrwxrwxrwx 1 root root 0 Apr 19 06:30 sdd -> ../devices/pci0000:00/0000:00:01.0/0000:01:00.0/ata7/host6/target6:0:0/6:0:0:0/block/sdd
lrwxrwxrwx 1 root root 0 Apr 19 06:30 sde -> ../devices/pci0000:00/0000:00:01.0/0000:01:00.0/ata9/host8/target8:0:0/8:0:0:0/block/sde

 

 

The reason why the build was successful in Bear Metal was because I modified rploader.sh to change the eighth to the seventh.

 

Collecting disk paths
Found local disk sda with path 00:1f.2, adding into internal_slot 1 with portnumber 0
Found local disk sdb with path 00:1f.2, adding into internal_slot 2 with portnumber 1
Found local disk sdc with path 00:1f.2, adding into internal_slot 3 with portnumber 2
Found local disk sdd with path 00:01.0,00.0, adding into internal_slot 4 with portnumber 2
Found local disk sde with path 00:01.0,00.0, adding into internal_slot 5 with portnumber 2
NO NVME disks found, returning
Patching USB to include your loader. Loader found in 3-3 port
Converting dts file : ds920p.dts to dtb file : >ds920p.dtb 
Copying patched dtb file ds920p.dtb to /home/tc/redpill-load/custom/extensions/redpill-dtb/ds920p_42661/model_ds920p.dtb -> OK ! File copied and verified 

 

 

Edited by Peter Suh
Link to comment
Share on other sites

21 minutes ago, Peter Suh said:

 

@pocopico

This is the result of logging to five disks.

According to these results, the internal Sata has a "/" at the 7th
External Sata appears to have "/" back on the eighth.

Wouldn't it be more accurate to find the "target" phrase instead of counting "/" ?

 

lrwxrwxrwx 1 root root 0 Apr 19 06:30 sda -> ../devices/pci0000:00/0000:00:1f.2/ata1/host0/target0:0:0/0:0:0:0/block/sda
lrwxrwxrwx 1 root root 0 Apr 19 06:30 sdb -> ../devices/pci0000:00/0000:00:1f.2/ata2/host1/target1:0:0/1:0:0:0/block/sdb
lrwxrwxrwx 1 root root 0 Apr 19 06:30 sdc -> ../devices/pci0000:00/0000:00:1f.2/ata3/host2/target2:0:0/2:0:0:0/block/sdc
lrwxrwxrwx 1 root root 0 Apr 19 06:30 sdd -> ../devices/pci0000:00/0000:00:01.0/0000:01:00.0/ata7/host6/target6:0:0/6:0:0:0/block/sdd
lrwxrwxrwx 1 root root 0 Apr 19 06:30 sde -> ../devices/pci0000:00/0000:00:01.0/0000:01:00.0/ata9/host8/target8:0:0/8:0:0:0/block/sde

 

 

The reason why the build was successful in Bear Metal was because I modified rploader.sh to change the eighth to the seventh.

 

Collecting disk paths
Found local disk sda with path 00:1f.2, adding into internal_slot 1 with portnumber 0
Found local disk sdb with path 00:1f.2, adding into internal_slot 2 with portnumber 1
Found local disk sdc with path 00:1f.2, adding into internal_slot 3 with portnumber 2
Found local disk sdd with path 00:01.0,00.0, adding into internal_slot 4 with portnumber 2
Found local disk sde with path 00:01.0,00.0, adding into internal_slot 5 with portnumber 2
NO NVME disks found, returning
Patching USB to include your loader. Loader found in 3-3 port
Converting dts file : ds920p.dts to dtb file : >ds920p.dtb 
Copying patched dtb file ds920p.dtb to /home/tc/redpill-load/custom/extensions/redpill-dtb/ds920p_42661/model_ds920p.dtb -> OK ! File copied and verified 

 

 

 

Thats right,  i modified that to find the word instead

Link to comment
Share on other sites

@nemesis122

Quote

- Outcome of the update: SUCCESSFUL

- DSM version prior update: RedPill  TinyCore DS3622xs+ DSM 7.0.1-42218

- Loader version and model: RedPill  TinyCore broadwellnk-7.1.0-42661

- Using custom extra.lzma: NO

- Installation type: BAREMETAL - HP Gen8 Microserver  - Intel Xeon E3-1220L V2, 16GB RAM, NIC: Intel X520 SFP+ 10Gbit

- Additional comments: Doing this Manual that the Network Driver  ixgbe  is NOT Additional  added

- Command for 3622 XS

- [DS3622xs+]

./rploader.sh update now

./rploader.sh fullupgrade now

./rploader.sh serialgen DS3622xs+

./rploader.sh identifyusb now

./rploader.sh satamap now

./rploader.sh build broadwellnk-7.0.1-42218 manual

./rploader.sh clean now

./rploader.sh build broadwellnk-7.1.0-42661 manual

 

-and it is working

 without "manual" there was Kernel Panic because from the ixgbe Driver or you can disable the network adapater during the loader building 

-Onboard SATA ports and the SSD in the obbe Slot Found all drives and they are listed in order.

What does MANUAL do? I have not seen that command.

Link to comment
Share on other sites

Hi,

I’m trying to install DSM918+ on a real Synology NAS via VMM (Virtual Machine Manager) with the Redpill loader.

The bootloader is build just fine and I can find the install page with Synology Assistant, but the installation of DSM just fails every time. After uploading the pat file the installer starts and at 55-56% I get an error message that the file is probably corrupted. I have downloaded the pat file from the Synology site.

These are my steps to build the loader:

sudo ./rploader.sh update now

sudo ./rploader.sh fullupgrade now

sudo ./rploader.sh serialgen DS918+ now

sudo ./rploader.sh satamap now

sudo ./rploader.sh ext apollolake-7.0.1-42218 add https://raw.githubusercontent.com/pocopico/rp-ext/master/e1000/rpext-index.json

sudo ./rploader.sh build apollolake-7.0.1-42218 #DS918+

reboot



When I start the installer I get a message the the disks will be wiped, there is no other choice than accept. Maybe  that has something to do with it?

Anyone a solution for me how to fix this?

TIA

Link to comment
Share on other sites

 

49 minutes ago, Bobwin said:

Hi,

I’m trying to install DSM918+ on a real Synology NAS via VMM (Virtual Machine Manager) with the Redpill loader.

The bootloader is build just fine and I can find the install page with Synology Assistant, but the installation of DSM just fails every time. After uploading the pat file the installer starts and at 55-56% I get an error message that the file is probably corrupted. I have downloaded the pat file from the Synology site.

These are my steps to build the loader:


sudo ./rploader.sh update now

sudo ./rploader.sh fullupgrade now

sudo ./rploader.sh serialgen DS918+ now

sudo ./rploader.sh satamap now

sudo ./rploader.sh ext apollolake-7.0.1-42218 add https://raw.githubusercontent.com/pocopico/rp-ext/master/e1000/rpext-index.json

sudo ./rploader.sh build apollolake-7.0.1-42218 #DS918+

reboot



When I start the installer I get a message the the disks will be wiped, there is no other choice than accept. Maybe  that has something to do with it?

Anyone a solution for me how to fix this?

TIA

 

 

I have the same issue with 3622 3615 etc on VMM i think this happen because there is en other vid and pid as is mentioned in the grub.cfg also this is happen with sata boot

 

Link to comment
Share on other sites

7 hours ago, Peter Suh said:

 

 

Is it a bare metal environment? It is a function that automatically finds ata_port in the patchdtc function,

 

a new function that @pocopico added about 6 hours ago.

 

@pocopico , Can you check this out?

 

Success reports continue to appear on VM, but bare metal is not.


First info:

image.png.9966fcb4297b3e577ba8067c03d44a38.png


I connected 6 HDD in two different controllers as you see:

 

image.thumb.png.26f1cefcbf7cd35cdb2e423fe0cad263.png

 

But...

 

	internal_slot@1 {
		protocol_type = "sata";
		power_pin_gpio = <0x14 0x0>;
		detect_pin_gpio = <0x23 0x1>;
		led_type = "lp3943";

		ahci {
pcie_root = "00:1f.2";
ata_port = <0x0>;
		};

		led_green {
			led_name = "syno_led0";
		};

		led_orange {
			led_name = "syno_led1";
		};
	};

	internal_slot@2 {
		protocol_type = "sata";
		power_pin_gpio = <0x15 0x0>;
		detect_pin_gpio = <0x24 0x1>;
		led_type = "lp3943";

		ahci {
pcie_root = "00:1f.2";
ata_port = <0x1>;
		};

		led_green {
			led_name = "syno_led2";
		};

		led_orange {
			led_name = "syno_led3";
		};
	};

	internal_slot@3 {
		protocol_type = "sata";
		power_pin_gpio = <0x16 0x0>;
		detect_pin_gpio = <0x25 0x1>;
		led_type = "lp3943";

		ahci {
pcie_root = "00:1f.2";
ata_port = <0x2>;
		};

		led_green {
			led_name = "syno_led4";
		};

		led_orange {
			led_name = "syno_led5";
		};
	};

	internal_slot@4 {
		protocol_type = "sata";
		power_pin_gpio = <0x17 0x0>;
		detect_pin_gpio = <0x26 0x1>;
		led_type = "lp3943";

		ahci {
pcie_root = "00:1f.2";
ata_port = <0x3>;
		};

		led_green {
			led_name = "syno_led6";
		};

		led_orange {
			led_name = "syno_led7";
		};
	};

Only puts the info of one controller: the Intel one.

The other 2 HDD on ASMedia aren't showed...

This is a baremetal build

Link to comment
Share on other sites

18 minutes ago, OUTSIDE said:


First info:

image.png.9966fcb4297b3e577ba8067c03d44a38.png


I connected 6 HDD in two different controllers as you see:

 

image.thumb.png.26f1cefcbf7cd35cdb2e423fe0cad263.png

 

But...

 





	internal_slot@1 {
		protocol_type = "sata";
		power_pin_gpio = <0x14 0x0>;
		detect_pin_gpio = <0x23 0x1>;
		led_type = "lp3943";

		ahci {
pcie_root = "00:1f.2";
ata_port = <0x0>;
		};

		led_green {
			led_name = "syno_led0";
		};

		led_orange {
			led_name = "syno_led1";
		};
	};

	internal_slot@2 {
		protocol_type = "sata";
		power_pin_gpio = <0x15 0x0>;
		detect_pin_gpio = <0x24 0x1>;
		led_type = "lp3943";

		ahci {
pcie_root = "00:1f.2";
ata_port = <0x1>;
		};

		led_green {
			led_name = "syno_led2";
		};

		led_orange {
			led_name = "syno_led3";
		};
	};

	internal_slot@3 {
		protocol_type = "sata";
		power_pin_gpio = <0x16 0x0>;
		detect_pin_gpio = <0x25 0x1>;
		led_type = "lp3943";

		ahci {
pcie_root = "00:1f.2";
ata_port = <0x2>;
		};

		led_green {
			led_name = "syno_led4";
		};

		led_orange {
			led_name = "syno_led5";
		};
	};

	internal_slot@4 {
		protocol_type = "sata";
		power_pin_gpio = <0x17 0x0>;
		detect_pin_gpio = <0x26 0x1>;
		led_type = "lp3943";

		ahci {
pcie_root = "00:1f.2";
ata_port = <0x3>;
		};

		led_green {
			led_name = "syno_led6";
		};

		led_orange {
			led_name = "syno_led7";
		};
	};

Only puts the info of one controller: the Intel one.

The other 2 HDD on ASMedia aren't showed...

This is a baremetal build


The ds920p supports 4 internal disks. You can edit manualy to add two more sections of internal_slot@x and see if that works. 
e.g. 

internal_slot@5 {
        protocol_type = "sata";
        power_pin_gpio = <0x18 0x0>;
        detect_pin_gpio = <0x27 0x1>;
        led_type = "lp3943";

        ahci {
        pcie_root = "00:1c.3,00.0";
        ata_port = <0x6>;
        };

        led_green {
            led_name = "syno_led8";
        };

        led_orange {
            led_name = "syno_led9";
        };
    };

internal_slot@6 {
        protocol_type = "sata";
        power_pin_gpio = <0x19 0x0>;
        detect_pin_gpio = <0x28 0x1>;
        led_type = "lp3943";

        ahci {
        pcie_root = "00:1c.3,00.0";
        ata_port = <0x7>;
        };

        led_green {
            led_name = "syno_led10";
        };

        led_orange {
            led_name = "syno_led11";
        };
    };


 

Edited by pocopico
  • Thanks 1
Link to comment
Share on other sites

24 minutes ago, pocopico said:


The ds920p supports 4 internal disks. You can edit manualy to add two more sections of internal_slot@x and see if that works. 
e.g. 

internal_slot@5 {
        protocol_type = "sata";
        power_pin_gpio = <0x18 0x0>;
        detect_pin_gpio = <0x27 0x1>;
        led_type = "lp3943";

        ahci {
        pcie_root = "00:1c.3,00.0";
        ata_port = <0x6>;
        };

        led_green {
            led_name = "syno_led8";
        };

        led_orange {
            led_name = "syno_led9";
        };
    };

internal_slot@6 {
        protocol_type = "sata";
        power_pin_gpio = <0x19 0x0>;
        detect_pin_gpio = <0x28 0x1>;
        led_type = "lp3943";

        ahci {
        pcie_root = "00:1c.3,00.0";
        ata_port = <0x7>;
        };

        led_green {
            led_name = "syno_led10";
        };

        led_orange {
            led_name = "syno_led11";
        };
    };


 

Would it be possible to guide us through the process of manual edit of ds920p.dts in combination with TC build?v Perhaps such a manual has been already created earlier, then please redirect. 

 

I did try to update it manually on /home/tc/redpill-load/ds920p.dts right after first build, then changed file (changed data order), run build again and everything has been rewritten to automatic value. After booting, still no drives are detected in DSM.

Link to comment
Share on other sites

23 minutes ago, TomY said:

Would it be possible to guide us through the process of manual edit of ds920p.dts in combination with TC build?v Perhaps such a manual has been already created earlier, then please redirect. 

 

I did try to update it manually on /home/tc/redpill-load/ds920p.dts right after first build, then changed file (changed data order), run build again and everything has been rewritten to automatic value. After booting, still no drives are detected in DSM.

 

Well the most accurate process will include booting into junior and run the following command 

 

cat /sys/block/sata*/device/syno_block_info


pciepath=00:11.0,06.0
ata_port_no=0
driver=ahci

 

With the above output, you have all the required information for manually editing the internal_slotx information. 

 

Then once in TCRP again, please edit the file and overwrite the file in /home/tc/redpill-load/custom/extensions/redpill-dtb/

 

then execute ./rploader.sh build <platform> manual 

 

 

 

 

  • Like 2
  • Thanks 2
Link to comment
Share on other sites

This is the test result of using the ds920+ automatic pcie_root / ata_port mapping function with TC today.

Tested with internal SATA 6 ports + external SATA 4 ports.

With internal SATA alone, all six ports were recognized when the disk was installed.

However, external SATA does not detect any hard drives.

pcie_root = "00:01.0,00.0";

It has that value.

TC records pcie_root / ata_port values exactly as below.

I wonder how it will work if there are two internal SATA ports and two external SATA ports. I'll try this again when I get a chance.

 

lrwxrwxrwx 1 root root 0 Apr 19 10:21 sda -> ../devices/pci0000:00/0000:00:1f.2/ata1/host0/target0:0:0/0:0:0:0/block/sda
lrwxrwxrwx 1 root root 0 Apr 19 10:21 sdb -> ../devices/pci0000:00/0000:00:01.0/0000:01:00.0/ata7/host6/target6:0:0/6:0:0:0/block/sdb
lrwxrwxrwx 1 root root 0 Apr 19 10:21 sdc -> ../devices/pci0000:00/0000:00:01.0/0000:01:00.0/ata9/host8/target8:0:0/8:0:0:0/block/sdc
lrwxrwxrwx 1 root root 0 Apr 19 10:21 sdd -> ../devices/pci0000:00/0000:00:01.0/0000:01:00.0/ata10/host9/target9:0:0/9:0:0:0/block/sdd
 

[Internal Sata]

tc@box:~$ udevadm info --query path --name sda

/devices/pci0000:00/0000:00:1f.2/ata1/host0/target0:0:0/0:0:0:0/block/sda

 

tc@box:~$ udevadm info --query path --name sda | awk -F "\/" '{print $4 ":" $5 }' | awk -F ":" '{print $2 ":" $3 "," $6}' | sed 's/,*$//'
00:1f.2

 

[External Sata]

tc@box:~$ udevadm info --query path --name sdb

/devices/pci0000:00/0000:00:01.0/0000:01:00.0/ata7/host6/target6:0:0/6:0:0:0/block/sdb

 

tc@box:~$ udevadm info --query path --name sdb | awk -F "\/" '{print $4 ":" $5 }' | awk -F ":" '{print $2 ":" $3 "," $6}' | sed 's/,*$//'
00:01.0,00.0

 

tc@box:~$ lspci -tvnnq

-[0000:00]-+-00.0  Intel Corporation Xeon E3-1200 v3 Processor DRAM Controller [8086:0c08]

           +-01.0-[01]----00.0  Marvell Technology Group Ltd. 88SE9215 PCIe 2.0 x1 4-port SATA 6 Gb/s Controller [1b4b:9215]

           +-14.0  Intel Corporation 8 Series/C220 Series Chipset Family USB xHCI [8086:8c31]

           +-19.0  Intel Corporation Ethernet Connection I217-LM [8086:153a]

           +-1a.0  Intel Corporation 8 Series/C220 Series Chipset Family USB EHCI #2 [8086:8c2d]

           +-1c.0-[02]--

           +-1c.4-[03]----00.0  Intel Corporation I210 Gigabit Network Connection [8086:1533]

           +-1c.7-[04-05]----00.0-[05]----00.0  ASPEED Technology, Inc. ASPEED Graphics Family [1a03:2000]

           +-1d.0  Intel Corporation 8 Series/C220 Series Chipset Family USB EHCI #1 [8086:8c26]

           +-1f.0  Intel Corporation C222 Series Chipset Family Server Essential SKU LPC Controller [8086:8c52]

           +-1f.2  Intel Corporation 8 Series/C220 Series Chipset Family 6-port SATA Controller 1 [AHCI mode] [8086:8c02]

           \-1f.3  Intel Corporation 8 Series/C220 Series Chipset Family SMBus Controller [8086:8c22]

 

 

 

Link to comment
Share on other sites

 

1 hour ago, pocopico said:

Then once in TCRP again, please edit the file and overwrite the file in /home/tc/redpill-load/custom/extensions/redpill-dtb/

 

the ds920p.dts is found only at these two locations:

/home/tc/redpill-load/ds920p.dts

/home/tc/ds920p.dts

 

I added that one manually, but this is ignored and build still automatically writes the drives.

/home/tc/redpill-load/custom/extensions/redpill-dtb/ds920p.dts

 

Should I edit one of the first two instead of creating new file?

Link to comment
Share on other sites

 

4 minutes ago, TomY said:

 

 

the ds920p.dts is found only at these two locations:

/home/tc/redpill-load/ds920p.dts

/home/tc/ds920p.dts

 

I added that one manually, but this is ignored and build still automatically writes the drives.

/home/tc/redpill-load/custom/extensions/redpill-dtb/ds920p.dts

 

Should I edit one of the first two instead of creating new file?

Neither /home/tc/redpill-load/ds920p.dts nor /home/tc/redpill-load/custom/extensions/redpill-dtb/ds920p.dts change give the expected outcome.

Link to comment
Share on other sites

7 minutes ago, TomY said:

 

 

the ds920p.dts is found only at these two locations:

/home/tc/redpill-load/ds920p.dts

/home/tc/ds920p.dts

 

I added that one manually, but this is ignored and build still automatically writes the drives.

/home/tc/redpill-load/custom/extensions/redpill-dtb/ds920p.dts

 

Should I edit one of the first two instead of creating new file?

 

Unfortunatelly the extensions are downloaded and expanded during the build process. Thats why you dont see the location for overwriting the file.

 

In order to download and expand the extensions, you need to execute the following : 

 

 cd /home/tc/redpill-load/

./ext-manager.sh add https://github.com/pocopico/redpill-load/raw/master/redpill-dtb/rpext-index.json
sudo ./ext-manager.sh _update_platform_exts ds920p_42661

 

the dtb that will be used during the build process is located at : 

 

/home/tc/redpill-load/custom/extensions/redpill-dtb/ds920p_42661/model_ds920p.dtb

 

***These are the actions that are executed with rploader.sh also but, i have also included the patching before i copy it over.

 

 

 

Edited by pocopico
Link to comment
Share on other sites

5 minutes ago, pocopico said:

In order to download and expand the extensions, you need to execute the following : 

 

 cd /home/tc/redpill-load/

./ext-manager.sh _update_platform_exts ds920p_42661

Downloaded. All extensions up to date. Modified ds920p.dts file at /home/tc/redpill-load/ and /home/tc/redpill-load/custom/extensions/redpill-dtb/ still ignored.

Link to comment
Share on other sites

46 minutes ago, Peter Suh said:

This is the test result of using the ds920+ automatic pcie_root / ata_port mapping function with TC today.

Tested with internal SATA 6 ports + external SATA 4 ports.

With internal SATA alone, all six ports were recognized when the disk was installed.

However, external SATA does not detect any hard drives.

pcie_root = "00:01.0,00.0";

It has that value.

TC records pcie_root / ata_port values exactly as below.

I wonder how it will work if there are two internal SATA ports and two external SATA ports. I'll try this again when I get a chance.

 

lrwxrwxrwx 1 root root 0 Apr 19 10:21 sda -> ../devices/pci0000:00/0000:00:1f.2/ata1/host0/target0:0:0/0:0:0:0/block/sda
lrwxrwxrwx 1 root root 0 Apr 19 10:21 sdb -> ../devices/pci0000:00/0000:00:01.0/0000:01:00.0/ata7/host6/target6:0:0/6:0:0:0/block/sdb
lrwxrwxrwx 1 root root 0 Apr 19 10:21 sdc -> ../devices/pci0000:00/0000:00:01.0/0000:01:00.0/ata9/host8/target8:0:0/8:0:0:0/block/sdc
lrwxrwxrwx 1 root root 0 Apr 19 10:21 sdd -> ../devices/pci0000:00/0000:00:01.0/0000:01:00.0/ata10/host9/target9:0:0/9:0:0:0/block/sdd
 

[Internal Sata]

tc@box:~$ udevadm info --query path --name sda

 

tc@box:~$ udevadm info --query path --name sda | awk -F "\/" '{print $4 ":" $5 }' | awk -F ":" '{print $2 ":" $3 "," $6}' | sed 's/,*$//'
00:1f.2

 

[External Sata]

tc@box:~$ udevadm info --query path --name sdb

 

tc@box:~$ udevadm info --query path --name sdb | awk -F "\/" '{print $4 ":" $5 }' | awk -F ":" '{print $2 ":" $3 "," $6}' | sed 's/,*$//'
00:01.0,00.0

 

tc@box:~$ lspci -tvnnq

-[0000:00]-+-00.0  Intel Corporation Xeon E3-1200 v3 Processor DRAM Controller [8086:0c08]

           +-01.0-[01]----00.0  Marvell Technology Group Ltd. 88SE9215 PCIe 2.0 x1 4-port SATA 6 Gb/s Controller [1b4b:9215]

           +-14.0  Intel Corporation 8 Series/C220 Series Chipset Family USB xHCI [8086:8c31]

           +-19.0  Intel Corporation Ethernet Connection I217-LM [8086:153a]

           +-1a.0  Intel Corporation 8 Series/C220 Series Chipset Family USB EHCI #2 [8086:8c2d]

           +-1c.0-[02]--

           +-1c.4-[03]----00.0  Intel Corporation I210 Gigabit Network Connection [8086:1533]

           +-1c.7-[04-05]----00.0-[05]----00.0  ASPEED Technology, Inc. ASPEED Graphics Family [1a03:2000]

           +-1d.0  Intel Corporation 8 Series/C220 Series Chipset Family USB EHCI #1 [8086:8c26]

           +-1f.0  Intel Corporation C222 Series Chipset Family Server Essential SKU LPC Controller [8086:8c52]

           +-1f.2  Intel Corporation 8 Series/C220 Series Chipset Family 6-port SATA Controller 1 [AHCI mode] [8086:8c02]

           \-1f.3  Intel Corporation 8 Series/C220 Series Chipset Family SMBus Controller [8086:8c22]

 

 

 

 

@pocopico

 

@dolbycat   told me this
The original guide for "ata_port"
It asked for a format of 0x##

ata_port = <0x06>;

But in TC,

It is generated in the format 0x# as follows.

ata_port = <0x6>;

In the middle, I thought "0" was a very meaningless number, so I thought it didn't matter if I removed it, but the actual test results show different results.

I changed the format to 0x## according to the original guide and built it

The external sata has started to work.

Not all drives were detected, but at least one operation was successful.

I will test a little more about what rules there are and then report additionally.

 

Link to comment
Share on other sites

1 hour ago, Peter Suh said:

 

@pocopico

 

@dolbycat   told me this
The original guide for "ata_port"
It asked for a format of 0x##

ata_port = <0x06>;

But in TC,

It is generated in the format 0x# as follows.

ata_port = <0x6>;

In the middle, I thought "0" was a very meaningless number, so I thought it didn't matter if I removed it, but the actual test results show different results.

I changed the format to 0x## according to the original guide and built it

The external sata has started to work.

Not all drives were detected, but at least one operation was successful.

I will test a little more about what rules there are and then report additionally.

 

 

Well that is not true, the original file has single digit values for port numbers. Bellow the snip taken from original /etc/model.dtb

 

      ahci {
                        pcie_root = "00:13.0,00.0";
                        ata_port = <0x2>;
                };
 

Also the linuxrc.syno.impl refers to two different hardware revisions of ds920p. Depends on HW_VERSION and HW_REVISION

 

linuxrc.syno.impl-      HW_VERSION=`cat /proc/sys/kernel/syno_hw_version`
linuxrc.syno.impl-      HW_REVISION=`cat /proc/sys/kernel/syno_hw_revision`
linuxrc.syno.impl-
linuxrc.syno.impl-      if [ "xr1" = "x${HW_REVISION}" ] && [ -e /etc.defaults/model_r1.dtb ]; then
linuxrc.syno.impl:              cp -vf /etc.defaults/model_r1.dtb /var/run/model.dtb
linuxrc.syno.impl-      else
linuxrc.syno.impl:              cp -vf /etc.defaults/model.dtb /var/run/
linuxrc.syno.impl-      fi
 

 

------------- 

More on that issue. /proc/sys/kernel/syno_hw_revision is empty so the  /etc.defaults/model.dtb is always copied to /var/run.

 

Jumkeys extension should work as designed.

Edited by pocopico
Link to comment
Share on other sites

1 hour ago, pocopico said:

 

Well that is not true, the original file has single digit values for port numbers. Bellow the snip taken from original /etc/model.dtb

 

      ahci {
                        pcie_root = "00:13.0,00.0";
                        ata_port = <0x2>;
                };
 

Also the linuxrc.syno.impl refers to two different hardware revisions of ds920p. Depends on HW_VERSION and HW_REVISION

 

linuxrc.syno.impl-      HW_VERSION=`cat /proc/sys/kernel/syno_hw_version`
linuxrc.syno.impl-      HW_REVISION=`cat /proc/sys/kernel/syno_hw_revision`
linuxrc.syno.impl-
linuxrc.syno.impl-      if [ "xr1" = "x${HW_REVISION}" ] && [ -e /etc.defaults/model_r1.dtb ]; then
linuxrc.syno.impl:              cp -vf /etc.defaults/model_r1.dtb /var/run/model.dtb
linuxrc.syno.impl-      else
linuxrc.syno.impl:              cp -vf /etc.defaults/model.dtb /var/run/
linuxrc.syno.impl-      fi
 

 

------------- 

More on that issue. /proc/sys/kernel/syno_hw_revision is empty so the  /etc.defaults/model.dtb is always copied to /var/run.

 

Jumkeys extension should work as designed.

 

 

I have not converted the model.dtb, model_r1.dtb file to dts

The conclusion is that it will fall into "else" and only use the "0x0" format?

 

Link to comment
Share on other sites

4 minutes ago, Peter Suh said:

 

 

I have not converted the model.dtb, model_r1.dtb file to dts

The conclusion is that it will fall into "else" and only use the "0x0" format?

 

 

No, i was thinking that maybe there is a chance that model_r1 is used instead of model.dtb but that not the case. model.dtb is always used. 

 

Is has nothing to do with the 0x0 vs 0x00 but anyway the correct one is <0x0>; 

Edited by pocopico
Link to comment
Share on other sites

21 hours ago, RedCat said:

I tired and install 2 new VM system on proxmox. All hardware are same (4 cpu, 4 GB ram, sata0=redpill, sata1= 100GB virtual disk and Virtio lan card)

VM1: 918+ 7.0.1 The Redpill auto detect Virtio lan card, build loader, 7.0.1 starting, no need any extension

VM2: 918+ 7.1.0 The Redpill dont "see" the Virtio lan card, build loader, boot, but the loader dont has IP address, I cant access the DSM

 

Why, and what happend?

 

I spent so long on this issue myself.
It seems that for some reason 7.1.0 42661 does not install the default virtio (9pfs was never included by default) extension anymore.

Logging into DSM the console and doing: "ip a" revealed only the loopback interface present.

 

I had to manually add the extension then it worked.

If i remember correctly ThorGroup left it as a default ext to be installed since they had a boot time check for wether virtio needed to be loaded or not anyways.

Check here: https://github.com/RedPill-TTG/redpill-virtio
So if this was an intentional change i think it should be reverted? @pocopico (if u are the right person to at for this, since i'm now using TC for building the loader)

 

You can install the extension you need manually, by using "./rploader ext" with the urls in the quoted post below.

I don't think v9fs is always needed, you should check wether you actually need it.

 

20 hours ago, pocopico said:

 

i think, there are already these two different extensions that can cover your needs

 

https://github.com/pocopico/redpill-load/raw/master/redpill-virtio/rpext-index.json

and 

https://github.com/pocopico/rp-ext/raw/main/v9fs/rpext-index.json

 

Link to comment
Share on other sites

Also isn't it possible to define additional extensions to be installed in the user_config.json?

I remember seeing in scripts that this is possibly already doable but i'm unsure.

It's much more convenient and intuitive to have all the options needed to build an image inside a singular file (or two for the cases wich need the DTC files).

Since if the config file for extensions is stored in the lkm build folder then it would be wiped everytime you do ./rploader clean.

 

It would be cool to have the model and version be optionally defined by the filename or json options for example: user_config.ds918p-42661.json instead of being manually specified everytime.

Then scripts could just be pointed at the right user_config file for building an image and so on.

Edited by luckcolors
  • Like 1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...