Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c9b378c7 authored by Jon Mason's avatar Jon Mason Committed by Jesse Barnes
Browse files

PCI: correct pcie_set_readrq write size



When setting the PCI-E MRRS, pcie_set_readrq queries the current
settings via a pci_read_config_word call but writes the modified result
via a pci_write_config_dword.  This results in writing 16 more bits than
were queried.

Also, the function description comment is slightly incorrect.

Signed-off-by: default avatarJon Mason <jdmason@kudzu.us>
Signed-off-by: default avatarJesse Barnes <jbarnes@virtuousgeek.org>
parent 0cab0841
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -3191,7 +3191,7 @@ EXPORT_SYMBOL(pcie_get_readrq);
 * @rq: maximum memory read count in bytes
 *    valid values are 128, 256, 512, 1024, 2048, 4096
 *
 * If possible sets maximum read byte count
 * If possible sets maximum memory read request in bytes
 */
int pcie_set_readrq(struct pci_dev *dev, int rq)
{
@@ -3214,7 +3214,7 @@ int pcie_set_readrq(struct pci_dev *dev, int rq)
	if ((ctl & PCI_EXP_DEVCTL_READRQ) != v) {
		ctl &= ~PCI_EXP_DEVCTL_READRQ;
		ctl |= v;
		err = pci_write_config_dword(dev, cap + PCI_EXP_DEVCTL, ctl);
		err = pci_write_config_word(dev, cap + PCI_EXP_DEVCTL, ctl);
	}

out: