arm: mvebu : sata_mv should probe all ports
authorTony Dinh <mibodhi@gmail.com>
Sun, 5 Sep 2021 21:48:25 +0000 (14:48 -0700)
committerStefan Roese <sr@denx.de>
Fri, 10 Sep 2021 07:01:51 +0000 (09:01 +0200)
commit5df1ee459452e29d39cf717cd0719146427709d9
treedacf58aaea38134a5159bc1a819c2e4a1e638a21
parenta4a06a180d622b86183b0825891d2bdd37f3b4db
arm: mvebu : sata_mv should probe all ports

While a board could have multiple SATA ports, some of the ports might
not have a disk attached to them. So while probing for disks,
sata_mv_probe() should continue probing all ports, and skip one with
no disk attached.

Tests with:

- Seagate Goflex Net (Marvell Kirkwood 88F6281) out-of-tree u-boot.
- Zyxel NSA325 (Marvell Kirkwood 88F6282 out-of-tree u-boot.

Observation:

If a board has 2 or more SATA ports, and there is only one disk
attached to one of the ports, sata_mv_probe() does not return
a successful probe status. And if only one disk is attached to the
2nd port (i.e. port 1), it is not probed at all.

Patch Description:

Let sata_mv_probe() continues probing all ports, even if there
is error in probing a given port, and then return a successful
status if there is at least one port was probed successfully.

Signed-off-by: Tony Dinh <mibodhi@gmail.com>
Reviewed-by: Stefan Roese <sr@denx.de>
drivers/ata/sata_mv.c