Jump to content
XPEnology Community

Redpill - extension driver/modules request


pocopico

Recommended Posts

Hi,

 

Based on this post: 

 

 

I request to create a redpill-extension that adds the PCI addresses in the "/etc.defaults/extensionPorts" file, based on the results of the "udevadm info" tool. I've tested that we can add multiple "pci" lines like:

[pci]
pci1="0000:00:01.0"
pci2="0000:01:02.0"
pci3="0000:02:01.0"

 

And then the system (DS3622xs+) will detect automatically the NVMe devices on these addresses.

 

Regards.

Link to comment
Share on other sites

First of all i would like to thank all the devs for working on this tirelessly!

 

I have been able to update from 1.04b loader 6.2.3 up3 to TC redpill UEFI loader 7.0.1-42218 up3 on DS 918+. All my extensions and HDDs work (mlx4_core and e1000e) and there was no issue with the satamap etc as well.

 

One thing that is bugging me is that hw transcoding isnt available. i have an i3 10100 CPU (9BC8) on Gigabyte H470 DS3H motherboard.

I have tried using doing insmod on the patched i915.ko file, but i get a kernel panic and the system reboots.

 

VT-d & C1E have been disabled.

 

 lspci -tnnvq
-+-[0001:03]---00.0  Intel Corporation I211 Gigabit Network Connection [8086:1539]
 +-[0001:02]---00.0  Intel Corporation I211 Gigabit Network Connection [8086:1539]
 +-[0001:01]---00.0  Marvell Technology Group Ltd. 88SE9215 PCIe 2.0 x1 4-port SATA 6 Gb/s Controller [1b4b:9215]
 +-[0001:00]-+-12.0  Intel Corporation Celeron N3350/Pentium N4200/Atom E3900 Series SATA AHCI Controller [8086:5ae3]
 |           +-13.0  Intel Corporation Celeron N3350/Pentium N4200/Atom E3900 Series PCI Express Port A #1 [8086:5ad8]
 |           +-14.0  Intel Corporation Celeron N3350/Pentium N4200/Atom E3900 Series PCI Express Port B #1 [8086:5ad6]
 |           +-15.0  Intel Corporation Celeron N3350/Pentium N4200/Atom E3900 Series USB xHCI [8086:5aa8]
 |           +-16.0  Intel Corporation Celeron N3350/Pentium N4200/Atom E3900 Series I2C Controller #1 [8086:5aac]
 |           +-18.0  Intel Corporation Celeron N3350/Pentium N4200/Atom E3900 Series HSUART Controller #1 [8086:5abc]
 |           +-19.0  Intel Corporation Celeron N3350/Pentium N4200/Atom E3900 Series SPI Controller #3 [8086:5ac6]
 |           +-19.2  Intel Corporation Celeron N3350/Pentium N4200/Atom E3900 Series SPI Controller #3 [8086:5ac6]
 |           +-1f.0  Intel Corporation Celeron N3350/Pentium N4200/Atom E3900 Series SMBus Controller [8086:5ad4]
 |           \-1f.1  Intel Corporation Celeron N3350/Pentium N4200/Atom E3900 Series SMBus Controller [8086:5ad4]
 \-[0000:00]-+-00.0  Intel Corporation 10th Gen Core Processor Host Bridge/DRAM Registers [8086:9b63]
             +-01.0-[01]----00.0  Mellanox Technologies MT27500 Family [ConnectX-3] [15b3:1003]
             +-02.0  Intel Corporation CometLake-S GT2 [UHD Graphics 630] [8086:9bc8]
             +-12.0  Intel Corporation Comet Lake PCH Thermal Controller [8086:06f9]
             +-14.0  Intel Corporation Comet Lake USB 3.1 xHCI Host Controller [8086:06ed]
             +-14.2  Intel Corporation Comet Lake PCH Shared SRAM [8086:06ef]
             +-16.0  Intel Corporation Comet Lake HECI Controller [8086:06e0]
             +-17.0  Intel Corporation Comet Lake SATA AHCI Controller [8086:06d2]
             +-1b.0-[02]--
             +-1b.4-[03]--
             +-1c.0-[04]----00.0  JMicron Technology Corp. JMB58x AHCI SATA controller [197b:0585]
             +-1d.0-[05]--
             +-1d.4-[06]--
             +-1f.0  Intel Corporation H470 Chipset LPC/eSPI Controller [8086:0684]
             +-1f.4  Intel Corporation Comet Lake PCH SMBus Controller [8086:06a3]
             +-1f.5  Intel Corporation Comet Lake PCH SPI Controller [8086:06a4]
             \-1f.6  Intel Corporation Ethernet Connection (11) I219-V [8086:0d4d]

 

 

oops.txt

Link to comment
Share on other sites

On 3/31/2022 at 11:35 PM, blackmanga said:

First of all i would like to thank all the devs for working on this tirelessly!

 

I have been able to update from 1.04b loader 6.2.3 up3 to TC redpill UEFI loader 7.0.1-42218 up3 on DS 918+. All my extensions and HDDs work (mlx4_core and e1000e) and there was no issue with the satamap etc as well.

 

One thing that is bugging me is that hw transcoding isnt available. i have an i3 10100 CPU (9BC8) on Gigabyte H470 DS3H motherboard.

I have tried using doing insmod on the patched i915.ko file, but i get a kernel panic and the system reboots.

 

VT-d & C1E have been disabled.

 


 lspci -tnnvq
-+-[0001:03]---00.0  Intel Corporation I211 Gigabit Network Connection [8086:1539]
 +-[0001:02]---00.0  Intel Corporation I211 Gigabit Network Connection [8086:1539]
 +-[0001:01]---00.0  Marvell Technology Group Ltd. 88SE9215 PCIe 2.0 x1 4-port SATA 6 Gb/s Controller [1b4b:9215]
 +-[0001:00]-+-12.0  Intel Corporation Celeron N3350/Pentium N4200/Atom E3900 Series SATA AHCI Controller [8086:5ae3]
 |           +-13.0  Intel Corporation Celeron N3350/Pentium N4200/Atom E3900 Series PCI Express Port A #1 [8086:5ad8]
 |           +-14.0  Intel Corporation Celeron N3350/Pentium N4200/Atom E3900 Series PCI Express Port B #1 [8086:5ad6]
 |           +-15.0  Intel Corporation Celeron N3350/Pentium N4200/Atom E3900 Series USB xHCI [8086:5aa8]
 |           +-16.0  Intel Corporation Celeron N3350/Pentium N4200/Atom E3900 Series I2C Controller #1 [8086:5aac]
 |           +-18.0  Intel Corporation Celeron N3350/Pentium N4200/Atom E3900 Series HSUART Controller #1 [8086:5abc]
 |           +-19.0  Intel Corporation Celeron N3350/Pentium N4200/Atom E3900 Series SPI Controller #3 [8086:5ac6]
 |           +-19.2  Intel Corporation Celeron N3350/Pentium N4200/Atom E3900 Series SPI Controller #3 [8086:5ac6]
 |           +-1f.0  Intel Corporation Celeron N3350/Pentium N4200/Atom E3900 Series SMBus Controller [8086:5ad4]
 |           \-1f.1  Intel Corporation Celeron N3350/Pentium N4200/Atom E3900 Series SMBus Controller [8086:5ad4]
 \-[0000:00]-+-00.0  Intel Corporation 10th Gen Core Processor Host Bridge/DRAM Registers [8086:9b63]
             +-01.0-[01]----00.0  Mellanox Technologies MT27500 Family [ConnectX-3] [15b3:1003]
             +-02.0  Intel Corporation CometLake-S GT2 [UHD Graphics 630] [8086:9bc8]
             +-12.0  Intel Corporation Comet Lake PCH Thermal Controller [8086:06f9]
             +-14.0  Intel Corporation Comet Lake USB 3.1 xHCI Host Controller [8086:06ed]
             +-14.2  Intel Corporation Comet Lake PCH Shared SRAM [8086:06ef]
             +-16.0  Intel Corporation Comet Lake HECI Controller [8086:06e0]
             +-17.0  Intel Corporation Comet Lake SATA AHCI Controller [8086:06d2]
             +-1b.0-[02]--
             +-1b.4-[03]--
             +-1c.0-[04]----00.0  JMicron Technology Corp. JMB58x AHCI SATA controller [197b:0585]
             +-1d.0-[05]--
             +-1d.4-[06]--
             +-1f.0  Intel Corporation H470 Chipset LPC/eSPI Controller [8086:0684]
             +-1f.4  Intel Corporation Comet Lake PCH SMBus Controller [8086:06a3]
             +-1f.5  Intel Corporation Comet Lake PCH SPI Controller [8086:06a4]
             \-1f.6  Intel Corporation Ethernet Connection (11) I219-V [8086:0d4d]

 

 

oops.txt 46.21 kB · 4 downloads


apologies for reposting. Any advice please

Link to comment
Share on other sites

A tale of two Mellanox Single Port cards and different results on different hardware.

They have identical  firmware version

1st Card

ethtool -i enp1s0  grep -i firmware | cut -d ' ' -f 2-
2.42.5000

2nd Card

ethtool -i enp1s0  grep -i firmware | cut -d ' ' -f 2-
2.42.5000

 

Also both cards work fine with TC, Ubuntu, etc

 

The first card works with the default dms - bare metal with no extensions

 

Mellanox CX353A ConnextX-3 FDR Infiniband + 40GB Ethernet
 
06:00.0 Ethernet controller: Mellanox Technologies MT27500 Family [ConnectX-3]
        Subsystem: Mellanox Technologies Device 0051
        Flags: bus master, fast devsel, latency 0, IRQ 32
        Memory at fc300000 (64-bit, non-prefetchable) [size=1M]
        Memory at e2800000 (64-bit, prefetchable) [size=8M]
        Expansion ROM at fc200000 [disabled] [size=1M]
        Capabilities: <access denied>
        Kernel driver in use: mlx4_core

 

 

The second card does not work with bare metal with or without the extension at all just  ("booting the kernel")

 

Mellanox C353A Connectx-3 QRD Infiniband + 40GB Ethernet

 

01:00.0 Ethernet controller: Mellanox Technologies MT27500 Family [ConnectX-3]
        Subsystem: Mellanox Technologies Device 0017
        Flags: bus master, fast devsel, latency 0, IRQ 16
        Memory at dfd00000 (64-bit, non-prefetchable) [size=1M]
        Memory at 2ff0000000 (64-bit, prefetchable) [size=8M]
        Expansion ROM at dfc00000 [disabled] [size=1M]
        Capabilities: <access denied>
        Kernel driver in use: mlx4_core

 

WIth TC

c@box:~$ cat dmesg.log | grep mlx4_en
[    8.647834] mlx4_en: Mellanox ConnectX HCA Ethernet driver v4.0-0
[    8.648064] mlx4_en 0000:06:00.0: Activating port:1
[    8.650005] mlx4_en: 0000:06:00.0: Port 1: Using 8 TX rings
[    8.650006] mlx4_en: 0000:06:00.0: Port 1: Using 8 RX rings
[    8.650417] mlx4_en: 0000:06:00.0: Port 1: Initializing port
[    8.651618] mlx4_en 0000:06:00.0: registered PHC clock
[   11.368809] mlx4_en: eth2: Link Up
[   23.995331] mlx4_en: eth2: Steering Mode 1

 

sudo lsmod > lsmod.log
tc@box:~$ cat lsmod.log | grep mlx4_core
mlx4_core             184320  1 mlx4_en

 

 

Any ideas to help the second card, I can supply more info...

 

 

 

 

 

Edited by RacerX
Link to comment
Share on other sites

Question, when adding ext, you have to build image correct? you can not simply add ext to a working system?

 

./rploader.sh ext apollolake-7.1.0-42661 add https://github.com/jumkey/redpill-load/raw/develop/redpill-acpid/rpext-index.json

 

then ./rploader.sh build apollolake-7.1.0-42661 

 

am I correct?

 

and if yes, can I simply reboot or do I have to do force_junior to reinstall dsm again after building new loader usb?

Link to comment
Share on other sites

On 4/14/2022 at 3:03 AM, phone guy said:

Question, when adding ext, you have to build image correct? you can not simply add ext to a working system?

 

./rploader.sh ext apollolake-7.1.0-42661 add https://github.com/jumkey/redpill-load/raw/develop/redpill-acpid/rpext-index.json

 

then ./rploader.sh build apollolake-7.1.0-42661 

 

am I correct?

 

and if yes, can I simply reboot or do I have to do force_junior to reinstall dsm again after building new loader usb?


Yes 👍 this might change in the future though 

  • Thanks 1
Link to comment
Share on other sites

This is a request from @dolbycat
 

 

Until now, using the below pocopico Ext for DS1621+ for bare metal failed.

I saw a post on the XPENOLOGY forum today

Attempted to attach the 4.4.180plus-denverton expansion driver to the DS1621+.

Pocopico's was modified a little bit and applied as below, and igb, e1000e, r8125 all succeeded with Intel NIC.

./redpill_tool_chain.sh add https://raw.githubusercontent.com/dolbycat/rp-ext/main/r8125/rpext-index.json

./redpill_tool_chain.sh add https://raw.githubusercontent.com/dolbycat/rp-ext/main/igb/rpext-index.json


@pocopico, I would appreciate it if you could change it to 4.4.180plus-denverton when you have time.

 

Link to comment
Share on other sites

Does mvsas support dsm7.1 42661 ?

mvsas.ko    v0.8.16     - Marvell 88SE6440/88SE9480 SAS/SATA controller driver

 

I am going to say no since it is not in @pocopico ext github?

I ordered the wrong item, and ordered a AOC-SAS2LP-H8IR which as I understand uses the Marvell 9480 chip set, not an LSI chip set.  So I can not return the card, so if I can use it great, if not, oh well..... I think I need the mvsas driver if its available for tcrp 7.1 42661

Link to comment
Share on other sites

[mvsas vote] Please add Marvell 88SE9230 for HP GenX

01:00.0 SATA controller: Marvell Technology Group Ltd. 88SE9230 PCIe SATA 6Gb/s Controller (rev 11) (prog-if 01 [AHCI 1.0])
        Subsystem: Marvell Technology Group Ltd. 88SE9230 PCIe SATA 6Gb/s Controller

Edited by nadiva
Link to comment
Share on other sites

8 hours ago, nadiva said:

[mvsas vote] Please add Marvell 88SE9230 for HP GenX

01:00.0 SATA controller: Marvell Technology Group Ltd. 88SE9230 PCIe SATA 6Gb/s Controller (rev 11) (prog-if 01 [AHCI 1.0])
        Subsystem: Marvell Technology Group Ltd. 88SE9230 PCIe SATA 6Gb/s Controller

 

Can you please pass the linux source to that ? 

 

@nadiva @phone guy Added the extension, please test. 

 

https://raw.githubusercontent.com/pocopico/rp-ext/master/mvsas/rpext-index.json

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

 

Pocopico, I  just tested  new card Mellanox MCX414-GCAT it's QSFP28  50gb dual

 

TC finds the card but tries to use the MLX_4 extension which does not wok (127.0.0.1)

 

I tested so far here is the info from Ubuntu 20.04 it works...

lspci -v


01:00.1 Ethernet controller: Mellanox Technologies MT27700 Family [ConnectX-4]
    Subsystem: Mellanox Technologies MT27700 Family [ConnectX-4]
    Flags: bus master, fast devsel, latency 0, IRQ 17
    Memory at 2002000000 (64-bit, prefetchable) [size=32M]
    Expansion ROM at dfc00000 [disabled] [size=1M]
    Capabilities: <access denied>
    Kernel driver in use: mlx5_core
    Kernel modules: mlx5_core

 

Can you add mlx_5.core  to the extensions?

 

 

 

 

Edited by RacerX
Link to comment
Share on other sites

14 hours ago, pocopico said:

 

Can you please pass the linux source to that ? 

 

@nadiva @phone guy Added the extension, please test. 

 

https://raw.githubusercontent.com/pocopico/rp-ext/master/mvsas/rpext-index.json

 

[!] after update, i'm getting -1 extension instead of +1, only Atlantic passes through. Lost tg3:

It looks that you will need the following modules : 

parse error: Expected another key-value pair at line 1209, column 3
Found VGA Controller : pciid 1002d00009874  Required Extension : amdgpu
Searching for matching extension for amdgpu
Found SATA Controller : pciid 1022d00007901  Required Extension : 
No matching extension
parse error: Expected another key-value pair at line 1209, column 3
Found SATA Controller : pciid 1b4bd00009230  Required Extension : ahci
Searching for matching extension for ahci
parse error: Expected another key-value pair at line 1209, column 3

.. here atlantic is succesful .. 

Found Ethernet Interface : pciid 1d6ad000007b1 Required Extension : atlantic
Searching for matching extension for atlantic
Found matching extension : 
"https://raw.githubusercontent.com/pocopico/rp-ext/master/atlantic/rpext-index.json"
parse error: Expected another key-value pair at line 1209, column 3
Found Ethernet Interface : pciid 14e4d0000165f Required Extension : tg3
Searching for matching extension for tg3
parse error: Expected another key-value pair at line 1209, column 3
Found Ethernet Interface : pciid 14e4d0000165f Required Extension : tg3
Searching for matching extension for tg3
------------------------------------------------------------------------------------------------

 

[i] Before each import there's a parse error.

[i] There's one unmatch - that is some ahci again. oh it's the internal 1xSATA:

Quote

00:11.0 0106: 1022:7901 (rev 49) (prog-if 01 [AHCI 1.0])

        SATA controller: Advanced Micro Devices, Inc. [AMD] FCH SATA Controller [AHCI mode] (rev 49) (prog-if 01 [AHCI 1.0])
        Subsystem: Advanced Micro Devices, Inc. [AMD] FCH SATA Controller [AHCI mode]

        Subsystem: 1022:7901
..
        Capabilities: <access denied>
        Kernel driver in use: ahci

 

Link to comment
Share on other sites

@pocopico

 

When installing HP 560SFP+ NIC with DS36xx DSM, there was a phenomenon that stopped at 47%, so I looked at the log, and the error was confirmed as below.

The above NIC uses the INTEL X520-DA2 chipset.

Can you check it?

 

I guess igb already finished copying dca.ko file and ixgbe already exist dca.ko file caused problem in later progress?

 

DiskStation> cat /var/log/junior_reason
Exit on error [99] rp ext init exec failure...
DiskStation> cat /var/log/*rc*
START /linuxrc.syno.impl
Insert Marvell 1475 SATA controller driver
Insert basic USB modules...
:: Loading module usb-common ... [  OK  ]
:: Loading module usbcore ... [  OK  ]
:: Loading module xhci-hcd ... [  OK  ]
:: Loading module xhci-pci ... [  OK  ]
:: Loading module usb-storage ... [  OK  ]
:: Loading kernel modules from extensions ...
Loading kmod #0 "i2c-algo-bit.ko" for pocopico.igb (args: )
Loading kmod #1 "dca.ko" for pocopico.igb (args: )
Loading kmod #2 "igb.ko" for pocopico.igb (args: )
Loading kmod #0 "dca.ko" for pocopico.ixgbe (args: )
insmod: can't insert 'dca.ko': File exists
ERROR: kernel extensions "dca.ko" from pocopico.ixgbe failed to load
Exit on error [99] rp ext init exec failure...
Fri Apr 22 11:11:04 UTC 2022
none /sys/kernel/debug debugfs rw,relatime 0 0

 

Edited by Peter Suh
Link to comment
Share on other sites

11 minutes ago, Peter Suh said:

@pocopico

 

When installing HP 560SFP+ NIC with DS36xx DSM, there was a phenomenon that stopped at 47%, so I looked at the log, and the error was confirmed as below.

The above NIC uses the INTEL X520-DA2 chipset.

Can you check it?

 

I guess igb already finished copying dca.ko file and ixgbe already exist dca.ko file caused problem in later progress?

 

DiskStation> cat /var/log/junior_reason
Exit on error [99] rp ext init exec failure...
DiskStation> cat /var/log/*rc*
START /linuxrc.syno.impl
Insert Marvell 1475 SATA controller driver
Insert basic USB modules...
:: Loading module usb-common ... [  OK  ]
:: Loading module usbcore ... [  OK  ]
:: Loading module xhci-hcd ... [  OK  ]
:: Loading module xhci-pci ... [  OK  ]
:: Loading module usb-storage ... [  OK  ]
:: Loading kernel modules from extensions ...
Loading kmod #0 "i2c-algo-bit.ko" for pocopico.igb (args: )
Loading kmod #1 "dca.ko" for pocopico.igb (args: )
Loading kmod #2 "igb.ko" for pocopico.igb (args: )
Loading kmod #0 "dca.ko" for pocopico.ixgbe (args: )
insmod: can't insert 'dca.ko': File exists
ERROR: kernel extensions "dca.ko" from pocopico.ixgbe failed to load
Exit on error [99] rp ext init exec failure...
Fri Apr 22 11:11:04 UTC 2022
none /sys/kernel/debug debugfs rw,relatime 0 0

 


already solved. Please use pocopico github redpill-load repo 

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...