I agree there is no real need for more than one NVME. From my side it is only pure interest what is possible. To have one in Amiga is really great thing!
I have always admired your pioneering spirit, and tecnical knowledge which make it possible for you to search new solutions. The same is true for Geenam, of course!
Please keep us informed what you find out of these NVMe drives and adapters!-)
Testing a Lexar Professional NM700 M.2 2280 PCIe Gen3x4 NVMe 256GB SSD on a Sam460le, with a PCIe 1x adapter, into the PCIe 1x slot.
U-Boot and AOS4.1 recognize the device, but on the AOS4.1 side I cannot format nor partition it.
Tried with different FS and different partition size, without results.
When I put the same NVMe and adapter into a PC, it works correctly. After formatting it (FAT32 or NTFS for example) and put back in the Sam460, the icon device is showed on WB, but cannot copy any file, got the following error on the serial:
I can trace the error to an IO completion queue timeout.
Completion queue timeout is triggered by a violation of the maximum timeout (reported by the NVMe drive itself) or by a missing interrupt.
I do not have a sanity check on this timeout value. But maybe I should add it.
Weird because the whole discovery of the NVMe drive works. And the Admin queue is the same construction which is depending on the same timeout value and same interrupt.
(If someone can tell me how MSI or MSI-X works on AmigaOS4 then I can differentiate with interrupt vectors)
I will try my NVMe drive in my SAM440 and see if I can reproduce the issue.
geennaam wrote:@m3x (If someone can tell me how MSI or MSI-X works on AmigaOS4 then I can differentiate with interrupt vectors)
Just for curiosity - do AmigaOS 4 use MSI-(X) interupts on more modern machines? I learned it on XE when I played with correcting of PCI settings, and there is only PCI legacy interrupt system ( i.e. pre - MSI )
AmigaOS3: Amiga 1200 AmigaOS4: Micro A1-C, AmigaOne XE, Pegasos II, Sam440ep, Sam440ep-flex, AmigaOne X1000 MorphOS: Efika 5200b, Pegasos I, Pegasos II, Powerbook, Mac Mini, iMac, Powermac Quad
Would be nice if it can also boot the Amigaos4 kernel with modules from microSD
Tried that some years ago. Added to AmigaBoot the ability to read a single file containing all the Kickstart modules. Problem was that reading the microSD card is slow, slower than reading a physical disk. Best improvement I could get was about half a second (in 35 sec), so the idea was abandoned.
Tried that some years ago. Added to AmigaBoot the ability to read a single file containing all the Kickstart modules. Problem was that reading the microSD card is slow, slower than reading a physical disk. Best improvement I could get was about half a second (in 35 sec), so the idea was abandoned.
Using a 7-zip LZMA2 archive with the kickstart files, or if LZMA2 decompression is too slow in U-Boot (IIRC CPU caches were disabled in U-Boot on the AmigaOne SE/XE/µA1 and therefore using strong compression was way too slow, no idea about the Sam4x0 and X5000 versions of U-Boot) maybe LZHAM could help?
(If someone can tell me how MSI or MSI-X works on AmigaOS4 then I can differentiate with interrupt vectors)
You can use FindCapability() to find the PCI_CAPABILITYID_MSI and PCI_CAPABILITYID_MSIX capabilities in config space. Then check if the enable bit is set for each of them. That'll tell you if they're enabled or not.
The kernel (i.e., exec.library) version needs to be at least 53.61 for FindCapability() to be available.
I have problem on X1000 with RadeonHD.chip v5.14: - with PCIe card installed on x8 slot ( slot 2 in Nemo manual ) I allways receive black screen after start. Doesn't matter if it is secondary Radeon or NVME adapter:
Loader:elf Filesys:amigafs Dev:ide0.0 File:amigaboot.of Options:(null)
Loading: 0x0000000000200000/61536 Entry at 0x0000000000200000
Starting program at 0x0000000000200000
[RUN!]RadeonHD (2): Identified the chipset as: TAHITI
RadeonHD (2): Graphics card name is: Radeon HD 7900 Series
RadeonHD (2): If - and only if - your card does not work or does not work optimally please submit a bug report at: http://www.amiga.org/developer/bugreports Remember to include the driver version, and the following card details: 0x6798:0x174B:0xE208: <name of board> and *please* describe the problems you are seeing in detail.
RadeonRX (2): Could not identify the chipset
graphics.library AltiVec/VMX enabled
graphics.library PA6T optimizations enabled
RadeonHD (0): RadeonHD.chip 5.14 (24.8.2022)
RadeonHD (2): Identified the chipset as: TAHITI
RadeonHD (2): Graphics card name is: Radeon HD 7900 Series
RadeonHD (2): If - and only if - your card does not work or does not work optimally please submit a bug report at: http://www.amiga.org/developer/bugreports Remember to include the driver version, and the following card details: 0x6798:0x174B:0xE208: <name of board> and *please* describe the problems you are seeing in detail.
... and black screen continues.
With debuglevel=10 no change, no additional debug output from RadeonHD v5.
When I revert to RadeonHD v3.7 - it works normally, second card is visible.
Please, howto report the bug? Do you have debug version of RadeonHD v5? There are no in package...
AmigaOS3: Amiga 1200 AmigaOS4: Micro A1-C, AmigaOne XE, Pegasos II, Sam440ep, Sam440ep-flex, AmigaOne X1000 MorphOS: Efika 5200b, Pegasos I, Pegasos II, Powerbook, Mac Mini, iMac, Powermac Quad
First testing NVME on X1000: NVME was in PCIe x8 slot, SATA2 is internal sb600, both SFS are /02 from Enhancer and has 5000 buffers Both tested with and without diskcache.library.kmod
see: DiskSpeed ( disk subsystem incl. filesystem + caches ) - without diskcache module SFS is far slower - in average read is NVME faster by 45 MiB/s
see: SCSISpeed ( something like bus speed ) - nothing special, diskcace have ( of course ) no effect - theoretically NVME should be faster
I will do also copy 1GB file ( for comparison with geennaam numbers), and also test NVME in PCIe x1 and in x8 with PCIe switch ( x4 + x4 )
And I am not tested NGFS - I cannot find it on my X1000 AmigaOS 4.1FE installation disk - maybe it is limited to X5000 installation .iso?
Edited by sailor on 2023/3/31 9:00:39 Edited by sailor on 2023/3/31 9:02:43
AmigaOS3: Amiga 1200 AmigaOS4: Micro A1-C, AmigaOne XE, Pegasos II, Sam440ep, Sam440ep-flex, AmigaOne X1000 MorphOS: Efika 5200b, Pegasos I, Pegasos II, Powerbook, Mac Mini, iMac, Powermac Quad
I have problem on X1000 with RadeonHD.chip v5.14: - with PCIe card installed on x8 slot ( slot 2 in Nemo manual ) I allways receive black screen after start. Doesn't matter if it is secondary Radeon or NVME adapter:
I gave up on dual graphics cards in the X5000. UBoot seems to allocate overlapping resource ranges to multiple PCIe cards (e.g., the graphics card and the sound card). IIRC, I had to at least remove the sound driver to stop it freezing. Removing the sound card also helped. However, dual graphics cards simply wouldn't work properly.
Quote:
With debuglevel=10 no change, no additional debug output from RadeonHD v5.
The kernel debug level isn't used by the drivers.
Quote:
When I revert to RadeonHD v3.7 - it works normally, second card is visible.
Interesting...
Quote:
Please, howto report the bug? Do you have debug version of RadeonHD v5? There are no in package...
Such results are to be expected with diskspeed. It is using small transfer sizes of 512 bytes up to 128k.
Buffer sizes are configurable with the BUF1-BUF4 arguments.
Quote:
I was not able to get scsispeed running.
Try something like scsispeed DRIVE=nvme.device:0 BUF1=65536 BUF2=262144 BUF3=1048576 BUF4=16777216
Quote:
Not sure why it is called scsi speed but I don't implement scsi commands except for acquiring drive geometry.
It's an OS4 port of a very old program (1989-1992), from a time when SATA didn't exist yet and everyone was using SCSI controllers and drives in Amigas (except for onboard A1200/A4000 PATA IDE maybe).
Sources are included, it doesn't use HD_SCSICmd but CMD_READ.
for testing under AmigaOS I am using this: DiskSpeed v.4.4, here SCSISpeed v.4.2, here
I forgot why I am not using scsispeed v4.4 from diskspeed package - there were some problems...
I am using this commands: diskspeed DRIVE System: FAST LONG ALL ... sometimes is necessary select Work: or other disk ( Error: Could not create test directory )
scsispeed DRIVE sii3114ide.device:0 ALL FAST
AmigaOS3: Amiga 1200 AmigaOS4: Micro A1-C, AmigaOne XE, Pegasos II, Sam440ep, Sam440ep-flex, AmigaOne X1000 MorphOS: Efika 5200b, Pegasos I, Pegasos II, Powerbook, Mac Mini, iMac, Powermac Quad
My NVMe is arrived. So here my impressions from installation on the X1000: There were a few problems here. At first it only worked with the HD graphics card, with the RX the computer stopped when booting. Then I moved the RX from the top slot to the next and the nvme to the top slot and then it boots. Load Kickstart from ssd and then load the Workbench from the nvme does not work here. The partition shows in the boot menu and had a higher priority but does not boot from it. Only if you select it yourself it boots the Workbench from the NVMe. Testet with FFS and SFS. Strange.
P.S.: And now that I had the HD in again with which the soft reset still works, I'm reminded even more that it's really stupid without one :(
Load Kickstart from ssd and then load the Workbench from the nvme does not work here. The partition shows in the boot menu and had a higher priority but does not boot from it. Only if you select it yourself it boots the Workbench from the NVMe. Testet with FFS and SFS. Strange.
Unless nvme.device includes own RDB parsing and partition mounting support, like the X1000, X5000 and Sam460 SATA drivers seem to do, you have to add nvme.device to diskboot.config - if you are either using a very old AmigaOS 4.1 version which still included my diskboot.kmod (Hyperion has no licence to use it in 4.1FE or any newer version of AmigaOS) or the Enhancer Software, which might include a legal version of it as well.
TearsOfMe wrote:My NVMe is arrived. So here my impressions from installation on the X1000: There were a few problems here. At first it only worked with the HD graphics card
Please if you succesfully tested it with HD graphics card: - what version of RadeonHD.chip do you have: the latest v.5.47, v.3.7 or other? - what PCIe config do you have? 1st full slot HDcard + second full slot NVME? or other
thanks. I am asking, becouse RadeonHD v5.47 not works for me, if some other card is in second full slot ( =x8 slot, slot nr.2 according to Nemo manual )
AmigaOS3: Amiga 1200 AmigaOS4: Micro A1-C, AmigaOne XE, Pegasos II, Sam440ep, Sam440ep-flex, AmigaOne X1000 MorphOS: Efika 5200b, Pegasos I, Pegasos II, Powerbook, Mac Mini, iMac, Powermac Quad