Re: [PATCH v5 00/13] PCI: dwc: Refactor register access with dw_pcie_*_dword helper

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Aug 28, 2025 at 9:00 AM Hans Zhang <18255117159@xxxxxxx> wrote:
>
> From: Hans Zhang <hans.zhang@xxxxxxxxxxx>
>
> Register bit manipulation in DesignWare PCIe controllers currently
> uses repetitive read-modify-write sequences across multiple drivers.
> This pattern leads to code duplication and increases maintenance
> complexity as each driver implements similar logic with minor variations.
>
> This series introduces dw_pcie_*_dword() to centralize atomic
> register modification. The helper performs read-clear-set-write operations
> in a single function, replacing open-coded implementations. Subsequent
> patches refactor individual drivers to use this helper, eliminating
> redundant code and ensuring consistent bit handling.
>
> The change reduces overall code size by ~350 lines while improving
> maintainability. Each controller driver is updated in a separate
> patch to preserve bisectability and simplify review.

If RMW functions are an improvement, then they should go in io.h. I
don't think they are because they obfuscate the exact register
modifications and the possible need for locking. With common API,
anyone that understands kernel APIs will know what's going on. With a
driver specific API, then you have to go lookup what the API does
exactly. So I don't think this is an improvement.

Rob





[Index of Archives]     [DMA Engine]     [Linux Coverity]     [Linux USB]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Greybus]

  Powered by Linux