I'm having similar issues with on-board SATA-2 controller.
Tried swapping the drives back and forth. Checked mobo and drive specs all-around.
Seems to be either drive feature or firmware related.
The same speeds seem to follow the drives, definitely not per-port, they will all happily adjust to their drive
Let me know your thoughts.
SSD #1 (Crucial M4 SATA-3)
"camcontrol identify ada5"
pass5: <M4-CT256M4SSD2 040H> ATA-9 SATA 3.x device
pass5: 150.000MB/s transfers (SATA 1.x, UDMA5, PIO 8192bytes)
...
WAY OFF
SSD#2 (Samsung PM810 SATA-2)
"camcontrol identify ada4"
pass4: <SAMSUNG SSD PM810 2.5" 256GB AXM08D1Q> ATA-8 SATA 2.x device
pass4: 300.000MB/s transfers (SATA 2.x, UDMA5, PIO 8192bytes)
...
MAXED!
HDD#1 (WD Velociraptor 10K SATA-2)
"camcontrol identify ada7"
pass7: <WDC WD6000HLHX-01JJPV0 04.05G04> ATA-8 SATA 3.x device
pass7: 150.000MB/s transfers (SATA 1.x, UDMA5, PIO 8192bytes)
...
NOT MAX
HDD#2 (using old SATA-2 Hitachi just as a test or reference for curiosity)
"camcontrol identify ada6"
pass6: <Hitachi HDS721050CLA362 JP2OA3MA> ATA-8 SATA 2.x device
pass6: 300.000MB/s transfers (SATA 2.x, UDMA5, PIO 8192bytes)
...
MAXED!