PCIE SATA controller ASM1062 problems or software
#15
What is the difference? This is what I see:

1. There is different time of ATA initialization. Good is at 2.91 seconds, bad is at 2.61 seconds.

2. The file system mounting in bad case is performed at 2.87s without of additional log messages, none changes from defaults. In bad case the RAID is not detected, the data access is failing.

3. Good case file system mounting is preceded by RAID detection, then ATA information is printed and only then the file system is mounted at 3.51s.

4. May be a key difference: the SATA is trained at 3.0Gbps speed, not at 6Gbps as it may be default for 6Gbps controller and 6Gbps HDDs. The SStatus=123 means "Interface in active state", "Generation 2 communication rate negotiated" and "Device presence detected and Phy communication established".

5. Bad case is falling in a loop with hard resetting and complete link down. SStatus=1 means that interface is in active state, but no device detected and communication is not present.

6. After first link down, see 5.317967, the warning about FAT-FS was issued. The same warning as at good start. That means the file system trying to operate between the interface failures.

7. First failure interface control status is SControl=300 which is meaning no speed negotiation restrictions. This is obvious difference between bad start (no restrictions, 6Gbps) and good start (with a restriction of 3Gbps). Then, next failures are happening with SControl=310, which is meaning to limit speed negotiation to Generation 1 (i.e. SATA I, 1.5Gbps). But the failures repeating

8. Four milliseconds after each interface failure the CommWake signal is detected by a SATA controller. This means the HDD is trying to get online. And the gap between the failures is about 2.1s. It seems to me the file system is trying to operate between the failures.

It is obvious that the SATA controller and HDD both are supporting 6Gpbs Generation 3 speed. But in together they are working normally at 3Gbps.
In is unclear why the failures of bad start are repeating even at lowest interface speed, 1.5Gbps.
I think there is some kind of hardware problem. The interface failures between the SATA controller chip and the HDDs are definitely hardware. May be power supply problem, may be signal integrity (bad cable, noise).

Looking at "ROCKPro64 PCI-e to Dual SATA-II Interface Card" photo (have not received mine yet) I see ugly jumpers in... Taram! 6Gbps signal path! This is the same kind, may be even worse, of design error as SBC mounting holes without of metalization. It seems to me I found a deal for your soldering iron!
If you not planning to return the board (or can't by some reason), try to de-solder the jumper pins completely. You may heat the pad on controller PCB until the solder is melting, same time pulling the pin by a tweezers. You need to delete alien parts from very fast and gentle signal path. After removing the jumper pins, solder-in small U-shaped, short, solid wire braces instead of jumpers of needed direction. The solid wire jumpers should be short. The U-shape is needed just for convenience of soldering to keep the wire jumpers in PCB holes. Before inserting new jumpers you need to clear the holes from the solder by Wire Solder Remover Wick. Keep care to not desolder or destroy something else on board.

(05-31-2019, 03:32 PM)vecnar Wrote: I just tried to connect hard drives to atx power supply, turn on power supply and wait for hard drives to spinup and plugin dc power supply into socket which turned on rockpro64 and same problem, bad start.

So, this is not a power quantity problem. Your HDDs requiring 1.75A each peak. This is 3.5A at 12V peak. Any 5A-rated power supply should be mighty enough to start your drives. Make sure the HDD's cases have good contact to SBC ground. This is important because ATX power supply is different device and you may "catch" a ground loop with a plenty of high frequency noise between the power supplies. The absence of ground metalization at SBC holes plays bad here.

Quote:I tried the same thing an hour ago but I couldn't reproduce so it has to be time related as sometimes i need to leave it off for 5-10 minutes and sometimes for an hour or overnight.

I think this may be a hardware problem. When the devices are operating over their limits (6Gbps through 1/10" though hole mounted jumpers) any valid subtle software difference may produce a failure. At this moment I still think the problem is hardware. The SATA signal path (with jumpers - for sure) and, may be, power supply decoupling (a lack of good capacitors on controller board). The ground loops and their noise may play theirs role too.

Quote:Do you think i just need to find same size dc jack and connect to atx power supply to be 100% that it is not power issue?


No. First of all remove ugly (at 6Gpbs) jumpers.

BTW, armbian initializing the ata subsystem at 1.8 second. And initializing the drives at 6Gbps:

[ 3.288364] ata1: SATA link up 6.0 Gbps (SStatus 133 SControl 300)
[ 3.808325] ata2: SATA link up 6.0 Gbps (SStatus 133 SControl 300)

And works then without of throwing error into the system log.

Also an interesting thing, look Serial ATA specification:

Page 77. SATA interface can tolerate with operation warranty only 100mV of common mode noise (a voltage difference between the controller and HDD). This is enough for good grounded system. But may be sensitive for ground noise in case of bad chassis grounding.
Page 88, paragraph "Matching". It says that both sides, controller and HDD, shall perform impedance matching. And I believe that a jumpers in SATA path may introduce too large impedance violation than certain integrated circuits can compensate. Usually impedance matching or time domain reflectometry (more complex than simple impedance matching) are tuned with a rough increment, not gradually. And sometimes the correction will allow to receive the signal, sometimes will not.

More verbose level of the logs is needed. May be some ATA code is tuning SATA controller somehow differently? I do not know, not at expert (yet).
Anyway with good signal path the SATA interface will work on default settings.


Messages In This Thread
RE: PCIE SATA controller ASM1062 problems or software - by Nikolay_Po - 05-31-2019, 03:45 PM

Possibly Related Threads…
Thread Author Replies Views Last Post
  Which SATA card should I use my NAS server RAID5 Louysa 3 1,516 09-24-2023, 04:40 AM
Last Post: JPT223
  SATA keeps crashing JPT223 1 999 09-21-2023, 10:52 PM
Last Post: tllim
  SATA hotplug not working? JPT223 0 759 09-15-2023, 04:20 AM
Last Post: JPT223
  Compatible PCIe Sata Controller spacebricker 1 1,949 02-06-2023, 10:03 AM
Last Post: diizzy
  ROCKPro64 with 16 ports SATA controller ZeblodS 19 29,109 12-18-2022, 06:25 PM
Last Post: heyghoge
  PCIe bifurcation support (on RK3399) Arn 1 1,759 11-28-2022, 05:12 PM
Last Post: tllim
  Existings disks and using a StarTech SATA Controller jkugler 1 2,437 12-09-2021, 06:41 AM
Last Post: SVDSHRDJD
  RockPro64 doesn't boot when PCIe to M.2 adapter is installed Cerberus 3 4,179 11-27-2021, 11:38 PM
Last Post: Cerberus
  Rockpro64 Sata Card kills itself jerry110 33 49,718 10-20-2021, 04:36 AM
Last Post: fieni
  Right direction SATA card corax 2 3,472 09-15-2021, 12:46 PM
Last Post: corax

Forum Jump:


Users browsing this thread: 6 Guest(s)