헤놀 포럼 jumkey님의 새로운 PortMapping 으로 좀 더 오리지널에 충실해졌습니다.
1. 기존과 다르게 pcie 장치들을 최대한 다이렉트로 연결시킴
2. nvme 캐쉬 와 pcie 슬롯 값을 직접 인식시킴
3. 가상화를 최대한 줄여 다이렉트로 작동시킴
가장 중요한 점은 하드 베이 슬롯을 자유자제로 변경시킨수있고, nvme 또한 추가 작업없이 인식시키는 것입니다.
또한 dsm 업데이트 할때 매번 nvme 인식에 대한 걱정도 사라졌습니다.
더이상 Sataportmap , diskidxmap 으로 고민할 필요가 없어졌고 오히려 더욱 빠르고 정확하게 인식및 작동합니다.
* model_ds1621p.dtb 파일을 살펴보겠습니다.
internal_slot@1 {
pcie_root = "00:12.0";
ata_port = <0x00>;
internal_slot@2 {
pcie_root = "00:12.0";
ata_port = <0x01>;
internal_slot@3 {
pcie_root = "00:13.3,00.0";
ata_port = <0x02>;
internal_slot@4 {
pcie_root = "00:13.3,00.0";
ata_port = <0x03>;
internal_slot@5 {
pcie_root = "00:13.1,00.0";
internal_slot@6 {
pcie_root = "00:13.1,00.0";
ata_port = <0x01>;
HDD 인식과 배열을 지정하는 internal_slot은 사용자가 편집해서 늘일수도 줄일수있고 순서를 마음되로 바꿀수도 있으며 실제 pcie 값을 적용해서 더욱 빠르게 작동하며 중간에 꼬이지않도록 만들었습니다.
nvme_slot@1 {
pcie_root = "00:01.3";
port_type = "ssdcache";
};
nvme_slot@2 {
pcie_root = "00:01.4";
port_type = "ssdcache";
nvme 슬롯에 pcie 값을 입력하면 자동으로 정품 DS1621+처럼 인식합니다.
더이상 헥사값을 알아내고 편집할 필요가없으며 업데이트할때도 안전해졌습니다.
pcie_slot@1 {
pcie_root = "00:01.2";
메인보드 내장 슬롯의 pcie값을 적용하는 부분입니다. 정품 DS1621+에 있으니 여기도 있습니다.
장착하는 pci 카드인식을 사용자가 편집하여 정확하게 잡아줍니다.
esata_port@1 {
pcie_root = "00:01.5,00.0";
esata_port@2 {
pcie_root = "00:01.6,00.0";
메인보드가 정품 DS1621+처럼 esata 지원하면 이렇게 지원해줄수있습니다.
DS920은 H/W 트랜스코딩을 지원합니다. DS1621+은 지원하지 않고 CPU트랜스코딩을 하였습니다.
마지막으로 lspci 값으로 ds3622와 ds1621 그리고 DS918과 DS920 가상화를 비교해보겠습니다.
< DS3622 >
root@ds3622:~# lspci -tnnvq
-+-[0001:0c]---00.0 Marvell Technology Group Ltd. 88SE9235 PCIe 2.0 x2 4-port SATA 6 Gb/s Controller [1b4b:9235]
+-[0001:09]---00.0 Marvell Technology Group Ltd. 88SE9235 PCIe 2.0 x2 4-port SATA 6 Gb/s Controller [1b4b:9235]
\-[0000:00]-+-00.0 Intel Corporation 8th Gen Core Processor Host Bridge/DRAM Registers [8086:3ec2]
+-01.0-[01]----00.0 Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller [10ec:8168]
+-02.0 Intel Corporation CoffeeLake-S GT2 [UHD Graphics 630] [8086:3e92]
+-12.0 Intel Corporation Cannon Lake PCH Thermal Controller [8086:a379]
+-14.0 Intel Corporation Cannon Lake PCH USB 3.1 xHCI Host Controller [8086:a36d]
+-14.2 Intel Corporation Cannon Lake PCH Shared SRAM [8086:a36f]
+-16.0 Intel Corporation Cannon Lake PCH HECI Controller [8086:a360]
+-17.0 Intel Corporation Cannon Lake PCH SATA AHCI Controller [8086:a352]
+-1c.0-[02]----00.0 Intel Corporation I211 Gigabit Network Connection [8086:1539]
+-1c.6-[03]----00.0 Intel Corporation Dual Band Wireless-AC 3168NGW [Stone Peak] [8086:24fb]
+-1d.0-[04]----00.0 SK hynix Device [1c5c:1627]
+-1f.0 Intel Corporation H370 Chipset LPC/eSPI Controller [8086:a304]
+-1f.3 Intel Corporation Cannon Lake PCH cAVS [8086:a348]
+-1f.4 Intel Corporation Cannon Lake PCH SMBus Controller [8086:a323]
+-1f.5 Intel Corporation Cannon Lake PCH SPI Controller [8086:a324]
\-1f.6 Intel Corporation Ethernet Connection (7) I219-V [8086:15bc]
root@ds3622:~#
DS3622는 메인보드에는 없는 가상 Marvell를 2개 이용하여 SATA포트를 인식시키주는 것같습니다.
< DS1621 >
root@DS1621:~# lspci -tnnvq
-[0000:00]-+-00.0 Intel Corporation 8th Gen Core Processor Host Bridge/DRAM Registers [8086:3ec2]
+-01.0-[01]----00.0 Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller [10ec:8168]
+-02.0 Intel Corporation CoffeeLake-S GT2 [UHD Graphics 630] [8086:3e92]
+-12.0 Intel Corporation Cannon Lake PCH Thermal Controller [8086:a379]
+-14.0 Intel Corporation Cannon Lake PCH USB 3.1 xHCI Host Controller [8086:a36d]
+-14.2 Intel Corporation Cannon Lake PCH Shared SRAM [8086:a36f]
+-16.0 Intel Corporation Cannon Lake PCH HECI Controller [8086:a360]
+-17.0 Intel Corporation Cannon Lake PCH SATA AHCI Controller [8086:a352]
+-1c.0-[02]----00.0 Intel Corporation I211 Gigabit Network Connection [8086:1539]
+-1c.6-[03]----00.0 Intel Corporation Dual Band Wireless-AC 3168NGW [Stone Peak] [8086:24fb]
+-1d.0-[04]----00.0 SK hynix Device [1c5c:1627]
+-1f.0 Intel Corporation H370 Chipset LPC/eSPI Controller [8086:a304]
+-1f.3 Intel Corporation Cannon Lake PCH cAVS [8086:a348]
+-1f.4 Intel Corporation Cannon Lake PCH SMBus Controller [8086:a323]
+-1f.5 Intel Corporation Cannon Lake P jumkey님의 새로운 PortMappingCH SPI Controller [8086:a324]
\-1f.6 Intel Corporation Ethernet Connection (7) I219-V [8086:15bc]
root@DS1621:~#
DS1621은 가상 Marvell이 없습니다.
직접 다이렉트로 SATA포트에 PCIE 접근을 합니다.
더욱 간결하고 빠를수있는 부분입니다. jumkey님의 새로운 PortMapping의 장점이 돗보는 부분입니다.
< DS918 >
root@ds918:~# 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 8th Gen Core Processor Host Bridge/DRAM Registers [8086:3ec2]
+-01.0-[01]----00.0 Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller [10ec:8168]
+-02.0 Intel Corporation CoffeeLake-S GT2 [UHD Graphics 630] [8086:3e92]
+-12.0 Intel Corporation Cannon Lake PCH Thermal Controller [8086:a379]
+-14.0 Intel Corporation Cannon Lake PCH USB 3.1 xHCI Host Controller [8086:a36d]
+-14.2 Intel Corporation Cannon Lake PCH Shared SRAM [8086:a36f]
+-16.0 Intel Corporation Cannon Lake PCH HECI Controller [8086:a360]
+-17.0 Intel Corporation Cannon Lake PCH SATA AHCI Controller [8086:a352]
+-1c.0-[02]----00.0 Intel Corporation I211 Gigabit Network Connection [8086:1539]
+-1c.6-[03]----00.0 Intel Corporation Dual Band Wireless-AC 3168NGW [Stone Peak] [8086:24fb]
+-1d.0-[04]----00.0 SK hynix Device [1c5c:1627]
+-1f.0 Intel Corporation H370 Chipset LPC/eSPI Controller [8086:a304]
+-1f.3 Intel Corporation Cannon Lake PCH cAVS [8086:a348]
+-1f.4 Intel Corporation Cannon Lake PCH SMBus Controller [8086:a323]
+-1f.5 Intel Corporation Cannon Lake PCH SPI Controller [8086:a324]
\-1f.6 Intel Corporation Ethernet Connection (7) I219-V [8086:15bc]
root@ds918:~#
DS918은 더욱 복잡하게 되어있습니다.
가상Marvell 뿐만아니라 N3350/Pentium N4200/Atom E3900으로도 가상화시켰군요.
< DS920 >
root@DS920:~# lspci -tnnvq
-+-[0001:01]---00.0 Marvell Technology Group Ltd. 88SE9235 PCIe 2.0 x2 4-port SATA 6 Gb/s Controller [1b4b:9235]
\-[0000:00]-+-00.0 Intel Corporation 8th Gen Core Processor Host Bridge/DRAM Registers [8086:3ec2]
+-01.0-[01]----00.0 Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller [10ec:8168]
+-02.0 Intel Corporation CoffeeLake-S GT2 [UHD Graphics 630] [8086:3e92]
+-12.0 Intel Corporation Cannon Lake PCH Thermal Controller [8086:a379]
+-14.0 Intel Corporation Cannon Lake PCH USB 3.1 xHCI Host Controller [8086:a36d]
+-14.2 Intel Corporation Cannon Lake PCH Shared SRAM [8086:a36f]
+-16.0 Intel Corporation Cannon Lake PCH HECI Controller [8086:a360]
+-17.0 Intel Corporation Cannon Lake PCH SATA AHCI Controller [8086:a352]
+-1c.0-[02]----00.0 Intel Corporation I211 Gigabit Network Connection [8086:1539]
+-1c.6-[03]----00.0 Intel Corporation Dual Band Wireless-AC 3168NGW [Stone Peak] [8086:24fb]
+-1d.0-[04]----00.0 SK hynix Device [1c5c:1627]
+-1f.0 Intel Corporation H370 Chipset LPC/eSPI Controller [8086:a304]
+-1f.3 Intel Corporation Cannon Lake PCH cAVS [8086:a348]
+-1f.4 Intel Corporation Cannon Lake PCH SMBus Controller [8086:a323]
+-1f.5 Intel Corporation Cannon Lake PCH SPI Controller [8086:a324]
\-1f.6 Intel Corporation Ethernet Connection (7) I219-V [8086:15bc]
root@DS920:~#
DS918에 비해서 아주 간결합니다. 이렇게 단순해지면 중간에 꼬이는 것도 줄어들겠죠.
jumkey님이 새로운 PortMapping을 적용시킴으로 가상화를 최대한 줄여 헤놀이 더욱 안정화되고 빨라진것 같습니다.
918ÀÇ NVMe Äɽ¬ ÁÖ¼Ò´Â SO¿¡ ÇϵåÄÚµùµÇ¾îÀִµ¥, 920Àº ¿ÜºÎ¿¡¼ Àоî¿À³ª¿ä? (¾Æ´Ï¸é ºÎÆ®½Ã dtb¸¦ ÀÐ¾î¼ ºÎÆ®·Î´õ°¡ ÁּҺκÐÀ» µ¿ÀûÀ¸·Î µ¤¾î¾²³ª¿ä?)
ÀÛ¾÷ÀÚ°¡ lspci -tnnvq·Î ¾òÀº sata , nvme , pci slot °ªÀ» model_ds1621p.dtbÆÄÀÏ¿¡ »ç¿ëÀÚ°¡ ¿¡µðÅÍ·Î ³ÖÀ¸¸é
ÀÚµ¿À¸·Î ÀÎ½ÄµÇ°Ô ¸¸µé¾ú½À´Ï´Ù.
¿¹¸¦ µé¸é lspci -tnnvqÇؼ º¸¸é
+-17.0 Intel Corporation Cannon Lake PCH SATA AHCI Controller [8086:a352] ¿¡¼ sata °ª 00:17.0
+-1d.0-[04]----00.0 SK hynix Device [1c5c:1627] ¿¡¼ nvme°ª 00:1d.0,00.0
À§ µÎ°ªÀ» model_ds1621p.dtbÆÄÀÏ¿¡ Àû¿ë½ÃÅ°¸é ³¡³³´Ï´Ù.
ÀüºÎ 17.0 À» »ç¿ëÇÕ´Ï´Ù.
output.dtb ÆÄÀÏ¿£ ÀÌ°ªÀ» Default ·Î ÀÏ´Ü ÇÏ°í ´Ù½Ã ¹èÆ÷ÇØ ÁÖ½Ã¸é ¾î¶³±î ½Í½À´Ï´Ù.
±âº»ÀûÀ¸·Î 6°³ Æ÷Æ® ÀÖ´Ù°í °¡Á¤ÇÏ°í ÀÏ´Ü 6°³·Î µÎ½Ã°í, 4°³ ÀÖÀ¸½ÅºÐµµ ±×³É ÀÌ´ë·Î ¾²¼Åµµ ¿À·ù´Â ¾È³¯°Í °°Àºµ¥¿ä.
¾Æ, ±×¸®°í LSI Ä«µå°¡ PCIE 1¹ø¿¡ ÀÖ´Ù°í °¡Á¤ÇßÀ»¶§ 00:01.0,00.0 °ªµµ ÀÌ ÆÄÀÏ¿¡ Default ·Î °°ÀÌ ¹Ù²ãÁÖ½Ã¸é ¾î¶³±î ½Í½À´Ï´Ù.
¸î°³ Ç÷§Æû¿¡¼ ¶° ºÃ´Âµ¥ ÀÌ °ªµéµµ µ¿ÀÏÇÏÁö ¾ÊÀ»±î ½Í½À´Ï´Ù.
LSI ¼º°ø¿©ºÎ´Â Á¶±ÝµÚ ¸»¾¸µå¸®°Ú½À´Ï´Ù.
jumkey´Ô ÀÛ¾÷ÇØÁÖ½Ã´Â°Í ¾øÀÌ pocopico´Ô µå¶óÀ̹ö¸¦ °Á¦·Î ³Ö´Â°Ç Àǹ̰¡ ¾øÀ»°Í °°¾Æ¼ ½ÃµµÇØ º¸Áø ¾Ê°Ú½À´Ï´Ù.
¸ÞÀκ¸µå¸¶´Ù ´Ù¸¥ ¸ð¾çÀÔ´Ï´Ù.
³ª¸ÓÁö ³»Àå Sata °¡ 1f.2, PCIE 1¹øÀº µ¿ÀÏÇÏ°Ô LSI °¡ 01.0,00.0 À» »ç¿ëÇÏ°í Àֳ׿ä.
http://www.giadatech.com/index/product/detail/aid/244.html
admin2@NAS5:~$ lspci -tvq
-+-[0001:03]---00.0 Intel Corporation I211 Gigabit Network Connection
+-[0001:02]---00.0 Intel Corporation I211 Gigabit Network Connection
+-[0001:01]---00.0 Marvell Technology Group Ltd. 88SE9215 PCIe 2.0 x1 4-port SATA 6 Gb/s Controller
+-[0001:00]-+-12.0 Intel Corporation Celeron N3350/Pentium N4200/Atom E3900 Series SATA AHCI Controller
| +-13.0 Intel Corporation Celeron N3350/Pentium N4200/Atom E3900 Series PCI Express Port A #1
| +-14.0 Intel Corporation Celeron N3350/Pentium N4200/Atom E3900 Series PCI Express Port B #1
| +-15.0 Intel Corporation Celeron N3350/Pentium N4200/Atom E3900 Series USB xHCI
| +-16.0 Intel Corporation Celeron N3350/Pentium N4200/Atom E3900 Series I2C Controller #1
| +-18.0 Intel Corporation Celeron N3350/Pentium N4200/Atom E3900 Series HSUART Controller #1
| +-19.2 Intel Corporation Celeron N3350/Pentium N4200/Atom E3900 Series SPI Controller #3
| \-1f.1 Intel Corporation Celeron N3350/Pentium N4200/Atom E3900 Series SMBus Controller
\-[0000:00]-+-00.0 Intel Corporation 4th Gen Core Processor DRAM Controller
+-01.0-[01]----00.0 Broadcom / LSI SAS2008 PCI-Express Fusion-MPT SAS-2 [Falcon]
+-02.0 Intel Corporation 4th Generation Core Processor Family Integrated Graphics Controller
+-03.0 Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor HD Audio Controller
+-14.0 Intel Corporation 8 Series/C220 Series Chipset Family USB xHCI
+-16.0 Intel Corporation 8 Series/C220 Series Chipset Family MEI Controller #1
+-1a.0 Intel Corporation 8 Series/C220 Series Chipset Family USB EHCI #2
+-1b.0 Intel Corporation 8 Series/C220 Series Chipset High Definition Audio Controller
+-1c.0-[02]--
+-1c.2-[03]----00.0 Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller
+-1c.5-[04]----00.0 Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller
+-1d.0 Intel Corporation 8 Series/C220 Series Chipset Family USB EHCI #1
+-1f.0 Intel Corporation H81 Express LPC Controller
+-1f.2 Intel Corporation 8 Series/C220 Series Chipset Family 6-port SATA Controller 1 [AHCI mode]
\-1f.3 Intel Corporation 8 Series/C220 Series Chipset Family SMBus Controller
Á¤º¸°øÀ¯¸¦ ÇØÁֽþî
¸®´ª½º ¸í·É¾îÀ» ¹è¿ì°Ô µÇ³×¿ä
ÀúÀÇ Çϵå¿þ¾î Á¤º¸ ÀÔ´Ï´Ù
( ¾Æ·¡ÀÇ ÀúÀÇ ÃÖÀûÀÇ dsm ¸ðµ¨Àº ¾î´À°ÍÀ» »ç¿ëÇØ¾ß Àû´çÇÑ°¡¿ä ????? )
ÇöÀç ds3615xs »ç¿ëÁß // esxi server 7.0 »ç¿ëÁß
º¯°æ : ???????
===============
Å×½ºÆ® ¼¹ö DS3622xs+ Á¤º¸ ÀÔ´Ï´Ù
ash-4.4# lspci -tvq
-+-[0001:0c]---00.0 Marvell Technology Group Ltd. 88SE9235 PCIe 2.0 x2 4-port SATA 6 Gb/s Controller
+-[0001:09]---00.0 Marvell Technology Group Ltd. 88SE9235 PCIe 2.0 x2 4-port SATA 6 Gb/s Controller
\-[0000:00]-+-00.0 Intel Corporation 440BX/ZX/DX - 82443BX/ZX/DX Host bridge
+-01.0-[01]--
+-07.0 Intel Corporation 82371AB/EB/MB PIIX4 ISA
+-07.1 Intel Corporation 82371AB/EB/MB PIIX4 IDE
+-07.3 Intel Corporation 82371AB/EB/MB PIIX4 ACPI
+-07.7 VMware Virtual Machine Communication Interface
+-0f.0 VMware SVGA II Adapter
+-10.0 Broadcom / LSI 53c1030 PCI-X Fusion-MPT Dual Ultra320 SCSI
+-11.0-[02]--+-00.0 VMware USB1.1 UHCI Controller
| +-01.0 Intel Corporation 82545EM Gigabit Ethernet Controller (Copper)
| +-02.0 Intel Corporation 82545EM Gigabit Ethernet Controller (Copper)
| +-03.0 VMware USB2 EHCI Controller
| \-05.0 VMware SATA AHCI controller
+-15.0-[03]--
+-15.1-[04]--
SATA ´Â Æо²½º·ç°¡ ¾ø¾î¼ °¡»ó Æ÷Æ®¸¸ º¸ÀÌ´Â°Í °°½À´Ï´Ù. ( 05.0 VMware SATA AHCI controller )
LSI °¡ mpt3sas µå¶óÀ̹ö°¡ »ç¿ëµÇ´ÂÁö ¸ð¸£°Ú´Âµ¥, ¾ÆÁ÷ LSI °¡ ¾ÈÁ¤ÈµÈ ¸ðµ¨Àº DS3622xs+ »ÓÀΰɷΠ¾Ë°í ÀÖ½À´Ï´Ù.
i915 Æ®·£½ºÄÚµù µå¶óÀ̹ö¿¡ ´ëÇÑ°Ç ¾Æ´Ñ°Í °°±¸¿ä.
°ú°Å jun ·Î´õó·³ Ä¿³ÎÀ» ÄÄÆÄÀÏ ÇÏ·Á ÇÑ´Ù´Â°Í °°½À´Ï´Ù.
°ÅÀÇ Áغñ°¡ ´Ù µÇ¾î °¡´Âµ¥, ¸¶Áö¸· Ä¿³Î ÆÐÄ¡ ÀÛ¾÷ÀÌ ¾ÆÁ÷ ¾ÈµÇ¼ Áö±ÝÀº »ç¿ëÀº ¸øÇÑ´Ù°í ÇÑ°Í °°³×¿ä.
I'm trying to boot with buildroot as the first kernel, then use php to dynamically patch the syno kernel, and finally start the patched vmlinux with kexec, as jun did before.
Now these are all executed successfully and I can enter the installation interface, but when I install I get a kernel panic.
Due to dynamic patching, I did not add the bsp kernel patch file to the configuration of ds2422p, so it is currently unavailable