Changeset 463
- Timestamp:
- Oct 8, 2009, 10:30:20 AM (16 years ago)
- Location:
- GPL/trunk/include/linux
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
GPL/trunk/include/linux/device.h
r441 r463 7 7 struct device { 8 8 void *private_data; 9 void *platform_data; 10 9 11 struct device_driver *driver; 10 12 struct pm_dev *pm_dev; -
GPL/trunk/include/linux/math64.h
r462 r463 1 #ifndef __LINUX_MATH64_H 2 #define __LINUX_MATH64_H 3 #endif /* __LINUX_MATH64_H */ 1 /* 2 * div_u64() compat 3 */ 4 5 #ifndef MATH64_COMPAT_H 6 #define MATH64_COMPAT_H 7 8 #if BITS_PER_LONG >= 64 9 10 static inline u64 div_u64_rem(u64 n, u32 div, u32 *rem) 11 { 12 *rem = n % div; 13 return n / div; 14 } 15 16 static inline u64 div_u64(u64 n, u32 div) 17 { 18 return n / div; 19 } 20 21 #elif defined(i386) 22 23 static inline u64 div_u64_rem(u64 n, u32 div, u32 *rem) 24 { 25 u32 low, high; 26 27 low = (u32)n; 28 high = n >> 32; 29 if (high) { 30 u32 high1 = high % div; 31 high /= div; 32 asm("divl %2" : "=a" (low), "=d" (*rem) : \ 33 "rm" (div), "a" (low), "d" (high1)); 34 return (u64)high << 32 | low; 35 } else { 36 *rem = low % div; 37 return low / div; 38 } 39 } 40 41 static inline u64 div_u64(u64 n, u32 div) 42 { 43 u32 low, high; 44 45 low = (u32)n; 46 high = n >> 32; 47 if (high) { 48 u32 high1 = high % div; 49 high /= div; 50 asm("divl %2" : "=a" (low) : \ 51 "rm" (div), "a" (low), "d" (high1)); 52 return (u64)high << 32 | low; 53 } else 54 return low / div; 55 } 56 57 #else 58 59 static inline void divl(u32 high, u32 low, u32 div, u32 *q, u32 *r) 60 { 61 u64 n = (u64)high << 32 | low; 62 u64 d = (u64)div << 31; 63 u32 q1 = 0; 64 int c = 32; 65 while (n > 0xffffffffU) { 66 q1 <<= 1; 67 if (n >= d) { 68 n -= d; 69 q1 |= 1; 70 } 71 d >>= 1; 72 c--; 73 } 74 q1 <<= c; 75 if (n) { 76 low = n; 77 *q = q1 | (low / div); 78 *r = low % div; 79 } else { 80 *r = 0; 81 *q = q1; 82 } 83 return; 84 } 85 86 static inline u64 div_u64_rem(u64 n, u32 div, u32 *rem) 87 { 88 u32 low, high; 89 low = (u32)n; 90 high = n >> 32; 91 if (high) { 92 u32 high1 = high % div; 93 u32 low1 = low; 94 high /= div; 95 divl(high1, low1, div, &low, rem); 96 return (u64)high << 32 | low; 97 } else { 98 *rem = low % div; 99 return low / div; 100 } 101 } 102 103 static inline u64 div_u64(u64 n, u32 div) 104 { 105 u32 low, high, rem; 106 low = (u32)n; 107 high = n >> 32; 108 if (high) { 109 u32 high1 = high % div; 110 u32 low1 = low; 111 high /= div; 112 divl(high1, low1, div, &low, rem); 113 return (u64)high << 32 | low; 114 } else { 115 return low / div; 116 } 117 } 118 119 #endif 120 121 #endif /* MATH64_COMPAT_H */ -
GPL/trunk/include/linux/pci.h
r454 r463 313 313 #endif 314 314 void *private_data; 315 void *platform_data; 316 315 317 struct device_driver *driver; 316 318 struct pm_dev *pm_dev; … … 708 710 } 709 711 712 #define PCI_VDEVICE(vendor, device) \ 713 PCI_VENDOR_ID_##vendor, (device), \ 714 PCI_ANY_ID, PCI_ANY_ID, 0, 0 715 710 716 #endif /* LINUX_PCI_H */ -
GPL/trunk/include/linux/pci_ids.h
r426 r463 373 373 #define PCI_DEVICE_ID_ATI_IXP600_SRAID 0x4381 374 374 #define PCI_DEVICE_ID_ATI_IXP600_IDE 0x438c 375 #define PCI_DEVICE_ID_ATI_SBX00_SMBUS 0x4385 375 376 376 377 #define PCI_VENDOR_ID_VLSI 0x1004 … … 517 518 #define PCI_DEVICE_ID_AMD_8131_APIC 0x7451 518 519 #define PCI_DEVICE_ID_AMD_8132_BRIDGE 0x7458 520 #define PCI_DEVICE_ID_AMD_SB900_SMBUS 0x780b 519 521 #define PCI_DEVICE_ID_AMD_CS5536_ISA 0x2090 520 522 #define PCI_DEVICE_ID_AMD_CS5536_FLASH 0x2091
Note:
See TracChangeset
for help on using the changeset viewer.