diff options
Diffstat (limited to 'v4l')
-rw-r--r-- | v4l/compat.h | 10 | ||||
-rwxr-xr-x | v4l/scripts/make_config_compat.pl | 20 |
2 files changed, 26 insertions, 4 deletions
diff --git a/v4l/compat.h b/v4l/compat.h index 3b04c91f6..7fc249001 100644 --- a/v4l/compat.h +++ b/v4l/compat.h @@ -270,10 +270,6 @@ static inline int dummy_algo_control(struct i2c_adapter *adapter, #if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 28) #define snd_BUG_ON(cond) WARN((cond), "BUG? (%s)\n", __stringify(cond)) - -#define pci_ioremap_bar(pci, a) \ - ioremap_nocache(pci_resource_start(pci, a), \ - pci_resource_len(pci, a)) #endif #ifndef PCI_DEVICE_ID_MARVELL_88ALP01_CCIC @@ -410,5 +406,11 @@ static inline int usb_endpoint_type(const struct usb_endpoint_descriptor *epd) #define netdev_priv(dev) ((dev)->priv) #endif +#ifdef NEED_PCI_IOREMAP_BAR +#define pci_ioremap_bar(struct pci_dev *pdev, int bar) \ + ioremap_nocache(pci_resource_start(pdev, bar), \ + pci_resource_len(pdev, bar)) +#endif + #endif diff --git a/v4l/scripts/make_config_compat.pl b/v4l/scripts/make_config_compat.pl index dc6653b0d..d24b5f718 100755 --- a/v4l/scripts/make_config_compat.pl +++ b/v4l/scripts/make_config_compat.pl @@ -235,6 +235,25 @@ sub check_usb_endpoint_type() close INNET; } +sub check_pci_ioremap_bar() +{ + my $file = "$kdir/include/linux/pci.h"; + my $need_compat = 1; + + open INNET, "<$file" or die "File not found: $file"; + while (<INNET>) { + if (m/pci_ioremap_bar/) { + $need_compat = 0; + last; + } + } + + if ($need_compat) { + $out.= "\n#define NEED_PCI_IOREMAP_BAR 1\n"; + } + close INNET; +} + sub check_other_dependencies() { check_spin_lock(); @@ -249,6 +268,7 @@ sub check_other_dependencies() check_algo_control(); check_net_dev(); check_usb_endpoint_type(); + check_pci_ioremap_bar(); } # Do the basic rules |