/alps/pcitool

To get this branch, use:
bzr branch http://suren.me/webbzr/alps/pcitool
365 by Suren A. Chilingaryan
Restructure driver headers
1
#include <linux/pci.h>
2
3
int pcidriver_pcie_get_mps(struct pci_dev *dev)
4
{
5
    u16 ctl;
6
7
    pcie_capability_read_word(dev, PCI_EXP_DEVCTL, &ctl);
8
9
    return 128 << ((ctl & PCI_EXP_DEVCTL_PAYLOAD) >> 5);
10
}
11
12
int pcidriver_pcie_set_mps(struct pci_dev *dev, int mps)
13
{
14
    u16 v;
15
16
    if (mps < 128 || mps > 4096 || !is_power_of_2(mps))
17
        return -EINVAL;
18
19
    v = ffs(mps) - 8;
20
    if (v > dev->pcie_mpss)
21
        return -EINVAL;
22
    v <<= 5;
23
24
    return pcie_capability_clear_and_set_word(dev, PCI_EXP_DEVCTL, PCI_EXP_DEVCTL_PAYLOAD, v);
25
}