TinyCore m shell DS920+/DS1621+ Sata 16포트 jumkey 동적 매핑 가능하도록 기능 변경되었습니다.
원래 DS920+ 의 권장 포트는 4개 인데
핫포사이님이 시험하신대로 6개까지 늘려도 동작엔 문제 없습니다.
금일 다시 16개까지 늘려서 사용가능 하도록 다시 변경했습니다..
그래서, 기본 4개 밖에 지원되지 않는 TCRP DS920+, DS1621+(6포트) Jun mode 에서
jumkey 옵션으로 동적 dtb 매핑 기능을 사용하는 경우 16포트까지 확장해서 자동 매핑 인식되도록 가능하도록 구현했습니다.
jumkey님 jumkey.qjs.dtb ext 를 조금 변형해서 16포트용 dtb 파일을 강제로 사용하도록 했습니다.
수동으로 파일 활용하고 싶으신 분은 제 깃헙 참조해서 다운받아 사용하셔도 좋을것 같습니다.
https://github.com/PeterSuh-Q3/tinycore-redpill
아래처럼 다운로드 및 설치후에
로드를 다시 빌드하시고
curl --location "https://github.com/PeterSuh-Q3/tinycore-redpill/raw/main/my.sh.gz" --output my.sh.gz; tar -zxvf my.sh.gz;
./my.sh DS920+J jumkey noclean
./my.sh DS1621+J jumkey noclean
ll 커맨드로 model.dtb 파일이 리스트에 있는지 1차 확인하시고
ll /home/tc/redpill-load/custom/extensions/jumkey.qjs.dtb/ds920p_42218
ll /home/tc/redpill-load/custom/extensions/jumkey.qjs.dtb/ds1621p_42218
cat 커맨드로 아래 스크립트가 제가 수정한 사항으로 바꿔어 보이는지만 한번더 체크해 주시면 확실하게 적용된 것입니다.
cat /home/tc/redpill-load/custom/extensions/jumkey.qjs.dtb/ds920p_42218/install_rd.sh
cat /home/tc/redpill-load/custom/extensions/jumkey.qjs.dtb/ds1621p_42218/install_rd.sh
#!/bin/sh
tar -zxvf patch.tar.gz
# install dtc
chmod +x dtc
cp dtc /usr/sbin/dtc
# copy 16 ports dts file to /etc.defaults
#echo $PLATFORM_ID
if [ "${PLATFORM_ID}" = "ds920p_42218" ]; then
echo "copy DS920+'s 16 ports ds920p_16ports.dts to /etc.defaults"
./dtc -I dts -O dtb -o model.dtb ds920p_16ports.dts
cp -vf model.dtb /etc.defaults/model.dtb
elif [ "${PLATFORM_ID}" = "ds1621p_42218" ]; then
echo "copy DS1621+'s 16 ports ds1621p_16ports.dts to /etc.defaults"
./dtc -I dts -O dtb -o model.dtb ds1621p_16ports.dts
cp -vf model.dtb /etc.defaults/model.dtb
fi
# copy file
if [ ! -f model_${PLATFORM_ID%%_*}.dtb ]; then
# Dynamic generation
./dtc -I dtb -O dts -o output.dts /etc.defaults/model.dtb
qjs --std ./dts.js output.dts output.dts.out
if [ $? -ne 0 ]; then
echo "auto generated dts file is broken"
exit 0
fi
./dtc -I dts -O dtb -o model_r2.dtb output.dts.out
cp -vf model_r2.dtb /etc.defaults/model.dtb
cp -vf model_r2.dtb /var/run/model.dtb
else
cp -vf model_${PLATFORM_ID%%_*}.dtb /etc.defaults/model.dtb
cp -vf model_${PLATFORM_ID%%_*}.dtb /var/run/model.dtb
fi
좋은 정보 감사합니다 4개에서 6개가 인식 되는거군요
궁금한게 있는데요 화정큐삼님 그럼 사타카드 6개 짜리도 전부 인식되는건가요
외부 장착 SATA 카드에는 잘 동작이 안되는 문제가 있던걸로 압니다.
이따가 시험은 한번 해보겠습니다.
마블칩셋4포트 + ASM칩셋2포트(인식불가) 인 알리산 SATA 카드에 시험해 봤습니다.
메인보드쪽 SATA 케이블을 이 SATA 카드의 마블칩셋쪽으로 2개 전환시켜 봤는데, 아래 로그처럼 잘 인식되네요.
SATA 카드마다 케바케 일수는 있지만 일단 성공했습니다.
pciepath = 00:1f.2
ata_port_no = 2
driver = ahci
modify path /internal_slot@1/ahci/pcie_root
[ok] value "00:1f.2"
modify path /internal_slot@1/ahci/ata_port
[ok] value <0x02>
start processing path:/sys/block/sata2
pciepath = 00:1f.2
ata_port_no = 3
driver = ahci
modify path /internal_slot@2/ahci/pcie_root
[ok] value "00:1f.2"
modify path /internal_slot@2/ahci/ata_port
[ok] value <0x03>
start processing path:/sys/block/sata3
pciepath = 00:1f.2
ata_port_no = 4
driver = ahci
modify path /internal_slot@3/ahci/pcie_root
[ok] value "00:1f.2"
modify path /internal_slot@3/ahci/ata_port
[ok] value <0x04>
start processing path:/sys/block/sata4
pciepath = 00:1f.2
ata_port_no = 5
driver = ahci
modify path /internal_slot@4/ahci/pcie_root
[ok] value "00:1f.2"
modify path /internal_slot@4/ahci/ata_port
[ok] value <0x05>
start processing path:/sys/block/sata5
pciepath = 00:1c.0,00.0
ata_port_no = 2
driver = ahci
modify path /internal_slot@5/ahci/pcie_root
[ok] value "00:1c.0,00.0"
modify path /internal_slot@5/ahci/ata_port
[ok] value <0x02>
start processing path:/sys/block/sata6
pciepath = 00:1c.0,00.0
ata_port_no = 3
driver = ahci
modify path /internal_slot@6/ahci/pcie_root
[ok] value "00:1c.0,00.0"
modify path /internal_slot@6/ahci/ata_port
[ok] value <0x03>
admin2@ds920p_6ports:/$ lspci -tvnnq
-+-[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 Xeon E3-1200 v3 Processor DRAM Controller [8086:0c08]
+-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-[01]----00.0 Marvell Technology Group Ltd. 88SE9215 PCIe 2.0 x1 4-port SATA 6 Gb/s Controller [1b4b:9215]
+-1c.4-[02]----00.0 Intel Corporation I210 Gigabit Network Connection [8086:1533]
+-1c.7-[03-04]----00.0-[04]----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]
pcilib: Cannot write to /var/services/homes/admin2/.pciids-cache: No such file or directory
admin2@ds920p_6ports:/$ ll /sys/block | grep sata
lrwxrwxrwx 1 root root 0 Jun 22 17:07 sata1 -> ../devices/pci0000:00/0000:00:1f.2/ata3/host2/target2:0:0/2:0:0:0/block/sata1
lrwxrwxrwx 1 root root 0 Jun 22 17:07 sata2 -> ../devices/pci0000:00/0000:00:1f.2/ata4/host3/target3:0:0/3:0:0:0/block/sata2
lrwxrwxrwx 1 root root 0 Jun 22 17:07 sata3 -> ../devices/pci0000:00/0000:00:1f.2/ata5/host4/target4:0:0/4:0:0:0/block/sata3
lrwxrwxrwx 1 root root 0 Jun 22 17:07 sata4 -> ../devices/pci0000:00/0000:00:1f.2/ata6/host5/target5:0:0/5:0:0:0/block/sata4
lrwxrwxrwx 1 root root 0 Jun 22 17:07 sata5 -> ../devices/pci0000:00/0000:00:1c.0/0000:01:00.0/ata9/host8/target8:0:0/8:0:0:0/block/sata5
lrwxrwxrwx 1 root root 0 Jun 22 17:07 sata6 -> ../devices/pci0000:00/0000:00:1c.0/0000:01:00.0/ata10/host9/target9:0:0/9:0:0:0/block/sata6
고맙습니다 :)
와우
이거 DS1621+ 에 적용가능하다면
DS1621+는 내장SATA 8개까지 인식 가능할까요?
두 모델다 그냥 16까지 늘려볼까요? ㅎㅎ
저는 시험가능한 드라이브가 현재로선 10개인데요.
아, Sata 카드 한개더 올리면 14개까지는 되겠네요.
가능하다면 완전 대박인데 말이죠 ㅎㅎ
16개로 늘리고 지금 시험중입니다. 결과 오늘중 알려드릴수 있을것 같습니다.^^
14개까지 성공했습니다. 16개도 무난할것 같습니다.^^
https://svrforum.com/nas/327897
오... 역시 능력자십니다..ㅎㅎ 좋은업데이트 감사합니다!
고맙습니다 :)
cmt alert