diff options
| author | TanZheng <tanzheng@kylinos.cn> | 2026-05-28 14:00:50 +0800 |
|---|---|---|
| committer | Niklas Cassel <cassel@kernel.org> | 2026-06-01 19:07:37 +0200 |
| commit | f80cea847028bb9eb1149badebf9f142d96b2e8b (patch) | |
| tree | 914241c449eef6404276b47a894f5bc4af941b96 | |
| parent | aa0ae1c35f7b3e9afed2324bed5f5c87ad55b92c (diff) | |
ata: ahci: use hweight_long() to count port_map bits
Replace the open loop used to calculate the number of set bits
in the port mapping with the `hweight_long()` function, which
simplifies the code without altering its functionality.
Signed-off-by: TanZheng <tanzheng@kylinos.cn>
Reviewed-by: Damien Le Moal <dlemoal@kernel.org>
Reviewed-by: Hannes Reinecke <hare@kernel.org>
Signed-off-by: Niklas Cassel <cassel@kernel.org>
| -rw-r--r-- | drivers/ata/libahci.c | 6 |
1 files changed, 1 insertions, 5 deletions
diff --git a/drivers/ata/libahci.c b/drivers/ata/libahci.c index 0c5e5b29bce4..e0af4b5716b3 100644 --- a/drivers/ata/libahci.c +++ b/drivers/ata/libahci.c @@ -552,11 +552,7 @@ void ahci_save_initial_config(struct device *dev, struct ahci_host_priv *hpriv) /* cross check port_map and cap.n_ports */ if (port_map) { - int map_ports = 0; - - for (i = 0; i < AHCI_MAX_PORTS; i++) - if (port_map & (1 << i)) - map_ports++; + int map_ports = hweight_long(port_map); /* If PI has more ports than n_ports, whine, clear * port_map and let it be generated from n_ports. |
